Commit Graph

574 Commits

Author SHA1 Message Date
Lily Kuang
e337355162
refactor: table selector on dataset editor (#10914)
Co-authored-by: Maxime Beauchemin <maximebeauchemin@gmail.com>
2020-09-28 11:16:03 -07:00
Kamil Gabryjelski
2fd8fca207
chore: Clean up some console warnings (#11061)
* Upgrade a few packages

* Update some prop types

* Update HTML

* Moar warning fixes

* Remove wrapper div
2020-09-28 09:43:21 -07:00
Kamil Gabryjelski
a879622e07
refactor: Remove usages of reactable from AlteredSliceTag (#11012)
* Remove usages of reactable in AlteredSliceTag

* Fix tests

* Move mocked data to fixtures file

* Use optional chaining

* Remove default value, change a unit test logic

* Code review fixes
2020-09-28 09:41:08 -07:00
Evan Rusackas
cff034e2cf
chore: cleaning out unused code from utils (#11076)
* removing unused stuff (and some jquery) from utils.js

* linting
2020-09-27 20:08:05 -07:00
Yongjie Zhao
1493450a6f
fix(jest): using UTC mock date (#11079) 2020-09-26 14:53:41 -07:00
Evan Rusackas
eeeb21077d
feat: adding all icons from the design system to the codebase (#11033)
* error -> error-solid

* warning -> warning-solid

* all the new icons mixed in!

* card-view -> card_view

* circle-check-solid -> circle_check_solid

* corrected circle-check to new name and correct (stroke) icon

* sort-asc/desc -> sort_asc/desc

* databases -> database

* compass -> nav_explore

* pencil -> edit-alt

* more pencil migrations

* easy list view rename

* star -> favorite (changed in Figma)

* removing deprecated icon

* renaming icon to mach figma

* More -> More Horiz

* forgot to change this when ranming the file

* updating some icon names in use

* adding hella icons

* fixing errant viewboxes

* removing dropdown-arrow in favor of triangle-down

* adding key to storybook map.

* fixing icon component reference

* tweaks to fave star styling to support revised icon

* fixing a bad icon inclusion

* missed a license

* touchup to virtual dataset... will tweak later.

* e2e fix

* linting
2020-09-25 14:49:30 -07:00
Grace Guo
3467d2d8d6
Revert "style: fix checkbox color (#10970)" (#11051)
This reverts commit e4e78b66fa.
2020-09-24 16:53:02 -07:00
Grace Guo
f99753a800
Revert "ESLint: Re-enable rule default-props-match-prop-types (#10868)" (#11050)
This reverts commit 9f01a7fdf8.
2020-09-24 12:33:38 -07:00
Jesse Yang
7549dad12d
fix: timer component, fixes #10849, closes #11002 (#11004) 2020-09-23 10:53:24 -07:00
ʈᵃᵢ
0d1f6119a6
feat(listview): feature flag config to set default viewing mode (#10986) 2020-09-22 18:01:19 -07:00
Kamil Gabryjelski
e93d92e8ac
Replace reactable with DataTable from superset-ui in QueryTable (#10981)
* Replace reactable with DataTable from superset-ui in QueryTable

* Fix tests

* Fix pagination

* Fix tests
2020-09-22 13:24:30 -07:00
Kamil Gabryjelski
9f01a7fdf8
ESLint: Re-enable rule default-props-match-prop-types (#10868)
* Re-enable rule default-props-match-prop-types

* Restore default props and remove isRequired

* Remove unused props
2020-09-22 13:17:41 -07:00
Maxime Beauchemin
e4e78b66fa
style: fix checkbox color (#10970)
* style: fix checkbox color

* lint

* wrap test into theme
2020-09-21 13:12:12 -07:00
Moriah Kreeger
4aa53244c7
fix: update the time filter for 'Last Year' option in explore (#10829)
* Update explore time filter ranges

* rm console statements

* only update moment calculation for years

* tests

* add open/close test
2020-09-21 11:39:11 -07:00
Kamil Gabryjelski
557a303cc5
ESLint: Enable rule no-named-as-default (#10879)
* Enable rule no-named-as-default

* Fix wrong import
2020-09-18 13:41:01 -07:00
Kamil Gabryjelski
ccfd293227
ESLint: no-restricted-syntax (#10889)
* Enable no-restricted syntax rule

* Fix webpack.config.js

* Remove unused function from utils/common.js

* Refactor triple nested for loop

* Fix loops in src/explore components

* Fix loops in SqlLab components

* Fix loops in AlteredSliceTag

* Fix loops in FilterableTable

* Add fixtures and uinit tests for findControlItem

* Add license
2020-09-18 09:05:57 -07:00
Moriah Kreeger
5623cd64ca
feat: update saved query backend routing + add savedquery list (#10922)
* Update saved query backend routing + add savedquery list

* add spec fileg

* add FE flag for SIP_34_SAVED_QUERIES_UI
2020-09-16 21:08:40 -07:00
Yongjie Zhao
af75bee582
feat: adding dashboard toggle fullscreen button (#10840) 2020-09-16 14:20:52 -07:00
Kamil Gabryjelski
281305e0cf
Enable anchor-has-content rule (#10908) 2020-09-16 13:27:52 -07:00
Elizabeth Thompson
d3e9c565b7
feat: use svg for checkbox component (#10799)
* use svg for checkbox component

* add vertical align to svg

* use emotion styling

* update import to superset core

Co-authored-by: Elizabeth Thompson <elizabeth@preset.io>
2020-09-16 12:03:14 -07:00
Moriah Kreeger
c43992bec8
feat: data menu routing (#10880) 2020-09-15 14:53:31 -07:00
Jesse Yang
0129c4253d
feat: move ace-editor and mathjs to async modules (#10837)
Follow up on #10831, move brace and mathjs to async modules so that the initial page load for dashboards most pages can be faster.
2020-09-15 14:12:06 -07:00
Kamil Gabryjelski
352e8a1afd
Re-enable rule prefer-destructuring (only for objects) (#10867) 2020-09-14 10:11:20 -07:00
Kamil Gabryjelski
8a774d59ed
Eslint dependencies versions updates (#10839)
* Update eslint version to 7.8.1

* Give names to unnamed functions  to fix lint errors

* Update eslint-import-resolver-webpack

* Update eslint-plugin-cypress

* Add eslint-plugin-react-hooks

* Update necessary peer dependencies for eslint-config-airbnb

* Update eslint airbnb config and ts plugins

* Remove "this" from functional component

* Disable all rules that cause new errors

* Fix linting errors in tests

* Add licenses to .eslintrc files

* Add path and zlib to package.json

* Disable incompatible rule in eslint-plugin-cypress

* Remove redundant config for typescript linting

* Mark disabled rules with comments

* Remove path and zlib from deps, disable import rule for webpack files
2020-09-13 23:59:02 -07:00
Moriah Kreeger
7cd96edcdf
feat: add/edit database modal form sections UI (#10745) 2020-09-11 09:53:18 -07:00
Ville Brofeldt
8a9ae811d0
fix(sql-lab): relax column name restrictions (#10816) 2020-09-10 07:54:37 +03:00
Jesse Yang
9a59bdda48
refactor: merge/upgrade superset-ui packages (#10790)
* refactor: merge/upgrade superset-ui packages

* Fix flaky big number test

* Fix Flaky AdhocFilters test
2020-09-09 13:18:55 -07:00
ʈᵃᵢ
50672bb11b
feat: database delete warning (#10800) 2020-09-08 18:54:02 -07:00
Jesse Yang
cda232bf15
fix: ColorSchemeControl should not use CreatableSelect (#10814)
* fix: ColorSchemeControl should not be CreatableSelect

   Currently if you type to search in ColorSchemeControl it crashes the
whole page.

* Make it possible to filter by label

* Fix ColorSchemeControl unit test
2020-09-08 18:38:50 -07:00
ʈᵃᵢ
92f2353f80
feat: filters for database list view (#10772) 2020-09-04 16:23:38 -07:00
ʈᵃᵢ
7bccb38a60
feat: SIP-34 table list view for databases (#10705) 2020-09-02 11:48:21 -07:00
ʈᵃᵢ
5a4370012b
refactor: convert DatasetList schema filter to use new distinct api (#10746) 2020-09-02 11:07:37 -07:00
Maxime Beauchemin
3d8857ecc8
style: rename 'Source' top nav item to 'Data' (#10715)
* style: rename 'Source' top nav item to 'Data'

* Fix tests

* tables -> datasets

* rename datasource -> dataset

* lint

* more renaming

* use npm ci
2020-08-29 18:09:47 -07:00
Evan Rusackas
9fe30ab71e
style: Pass at propagating (and enhancing) Button component throughout Superset (#10649)
* getting rid of weird focus/active outline ring

* Buttons... buttons _everywhere_

* linting

* Nixing views/CRUD/dataset/Button component

* fixing 2 typing errors

* fixing more TS errors

* prefer src path for include

* one more real button, one less CSS class

* one more "button" to "Button"

* Published Status is now a proper clickable Label

* nixing the CRUD button again

* touching up stories, with SupersetButton story

* SIP-34 button colors

* adding polished package to mix colors

* updating button colors to match Superset theme

* abstracting away from bootstrap-specific props (might pivot libraries soon!)

* more abstraction from bsStyle/bsSize props

* exchanging styles for a prop

* linting

* restoring feature flag to stock

* using src alias

* last <button> replacement

* this classname would never be applied

* more linting action

* fixing unsupported bsSize 'medium', and cta typing error

* more cta action

* unnecessary styles

* errant bsSize prop

* cleanup

* tweaks to make new New button work

* Linting

* fixing a couple tests

* fixing theme based test failure

* margin tweak for NEW button

* another fixed test

* another fixed test

* fixing two more tests

* fixing last broken tests.

* always be linting

* Adding tertiary/dashed buttons

* cleaning up QueryAndSave buttons

* fixing "link" button styles

* fixing/updating link button styles

* cta buttons on Modal component

* linting.

* exporting button story knobs, making ALL knobs safe for export.

* capitalizing a file... no big whoop

* Basic button tests

* renaming button - temporarily

* renaming file to fix capitalization issue

* passing theme through to a difficult popover.

* fixin' a newly busted unit test

* lint fixin'

* oops, shouldn't have changed this prop!

* adding a dive() to themedShallow, and fixing a cypress/jest test

* addressing lint stuff

* touching up stories, with SupersetButton story

* SIP-34 button colors

* updating button colors to match Superset theme

* abstracting away from bootstrap-specific props (might pivot libraries soon!)

* linting

* restoring feature flag to stock

* cleanup

* Linting

* renaming button - temporarily

* renaming file to fix capitalization issue

* oops, shouldn't have changed this prop!

* adding a dive() to themedShallow, and fixing a cypress/jest test

* addressing lint stuff

* nixing new modal button

* Fixing another popover/button issue that should break cypress

* lint 

* passing classNames through to new button (should fix some tests)

* cleaning unused classes, making cypress tests use data attrs

* fixin' the test

* fixing another class-based test with data-test attr

* no longer passing theme as prop to buttons in popovers... themeprovider is better

* outline/border tweaks!
2020-08-28 17:34:28 -07:00
ʈᵃᵢ
d3bdea3805
fix: move menu reorg logic from crud app into Menu component (#10717) 2020-08-28 13:56:01 -07:00
Moriah Kreeger
c715cad48e
feat: base tabbed modal for new database CRUD UI (#10668) 2020-08-27 14:28:06 -07:00
ʈᵃᵢ
937b868321
style: add border between menu and submenu (#10698) 2020-08-27 14:15:22 -07:00
Moriah Kreeger
8d94534881
style: Move security/manage navigation tabs into a settings dropdown (#10439) 2020-08-27 10:21:51 -07:00
Grace Guo
7fc227c92d
fix: shorten url with extra request parameters (#10693) 2020-08-27 09:53:20 -07:00
ʈᵃᵢ
81525c3e9d
feat(listview): set default view mode based on THUMBNAIL feature flag (#10691)
* feat(listview): set default view mode based on THUMBNAIL feature flag

* add spec

* better generic typing for ListView

* lint

* fix specs
2020-08-27 09:40:32 -07:00
Ville Brofeldt
aaf04cc344
fix(filter-box): don't add empty filter to filtersChoices (#10687)
* fix(filter-box): don't add empty filter to filtersChoices

* add test
2020-08-27 12:36:02 +03:00
ʈᵃᵢ
6ff96cfc72
refactor: useListViewResource hook for charts, dashboards, datasets (#10680) 2020-08-26 15:39:18 -07:00
Evan Rusackas
fdfb7cdfd2
Eslint error cleanup (#10657)
* moving two console errors to logger errors

* nixing unused map index

* nixing unused param

* linting

* changing an alert to a toast

* fixing tests

* lint fix

* one letter change, just to see if iti gets CI to pass this test.
2020-08-24 14:04:27 -07:00
Grace Guo
aa8ff8759c
feat: use shorten url in standalone iframe (#10651) 2020-08-21 15:27:15 -07:00
ʈᵃᵢ
b86c0e5727
feat(listview): skeleton loading states for table and card collections (#10606) 2020-08-21 10:32:37 -07:00
ʈᵃᵢ
7301a363c1
feat: setup react page with submenu for datasources listview (#10642) 2020-08-20 11:42:17 -07:00
Ville Brofeldt
ca5dc4256f
feat(datasource): remove deleted columns and update column type on metadata refresh (#10619)
* fix: remove missing columns on metadata refresh

* add tests

* lint and simplify

* lint

* reduce locals

* fix label style
2020-08-18 21:47:13 +03:00
Evan Rusackas
f868580f64
chore: bump react-redux to 5.1.2, whittling console noise (#10602)
* chore: bump react-redux to 5.1.2

* fixing spy, and thus the breaking test.

* relabeling tests to UNSAFE_componentWillReceiveProps because why not.
2020-08-16 21:29:08 -07:00
Lily Kuang
03a62f15d8
feat: sort card view by Alphabetical, Recently Modified, and Least Recently Modified (#10601) 2020-08-14 15:07:37 -07:00
ʈᵃᵢ
db88cec431
feat: SIP-34 card/grid views for dashboards and charts (#10526) 2020-08-13 14:46:56 -07:00
Jesse Yang
a37b635674
fix(dashboard): add animation state to fix tab switch re-renders (#10475) 2020-08-11 00:57:50 -07:00
Tanmay Laud
a6fa02aaec
chore: Migrate Timer component from jsx to tsx (#10455)
* migrated LanguagePicker.jsx to tsx

* Migrated Menu.jsx to tsx

* migrated MenuObject.jsx to tsx

* migrated NewMenu.jsx to tsx

* Migrated UserMenu.jsx to tsx

* removed unnecessary export from UserMenu

* added language definition in LanguagePicker

* removed unnecessary exports from Menu.tsx

* used typeof guard for childs

* changed LanguageProps to Languages

* removed unnecessary type casting

* fixed linting errors

* migrated Checkbox to tsx

* Migrated Timer component to tsx

* fixed linting errors

* fixed test cases

* removed unused import in timer spec

* reverting changes

* renamed and then modified Timer

* changes for review comments

* fixed incorrect clear

* using stopTimer in stopwatch

* fixed lint issues

* added explicit timer cleanup

* fixed lint issue

* fixed memory leak

* renamed Timer

* added changes after git mv
2020-08-07 09:30:17 -07:00
Maxime Beauchemin
0bad77f0fe
chore: TypeScript <Label /> (#10494)
* chore: TypeScript <Label />

* rebase

* chore: TypeScript <Label />

* rebase

* A bunch o' test fixes. One more to go!

* helper for mountying Emotional components with Enzyme

* asf license

* fixed last test, some linting

* improve the storybook

* Adressing comments

Co-authored-by: Evan Rusackas <evan@preset.io>
2020-08-06 22:33:07 -07:00
Maxime Beauchemin
ece91928a9
style: use tabs in dashboard edit pane (#10394)
* style: use tabs in dashboard edit pane

* fix tests

* more hackin'

* getting ready to rip cell measurer

* working

* pogress

* Fix cards

* done

* fix jest

* fix cy
2020-08-05 18:53:53 -07:00
simchaNielsen
57dc7622b4
fix: show label for filters in filter box in explore (#10412)
* fix: show label for filters in filter box in explore

* test: add test for label in filter box

* test: add test / fix lint

* fix: fix CR notes

* refactor: add label propType to FilterBoxItemControl.jsx
2020-08-05 09:23:11 +03:00
Lily Kuang
fa07506d0d
feat: dataset editor improvements (#10444) 2020-08-04 11:52:35 -07:00
Ville Brofeldt
a43ee22f11
style: replace inclusive/exclusive on DateFilterControl with </≤ (#10420)
* feat: improve filter control tooltips

* add styles

* break out utils into own file

* lint

* add tests

* styled component now working

* lint

* add license headers

* replace shallow with mount due to withTheme

Co-authored-by: Evan Rusackas <evan@preset.io>
2020-07-31 20:06:04 +03:00
ʈᵃᵢ
78cad9a4a8
refactor(listviews): use correct filter endpoints for charts and datasets (#10442) 2020-07-29 11:00:19 -07:00
David Aaron Suddjian
7f70a241f9
test: Add jest-enzyme assertion library for better frontend tests (#10459)
* adding jest-enzyme

* enzymeify lots of assertions

* types for jest-enzyme
2020-07-29 10:53:06 -07:00
Daniel Vaz Gaspar
671461d0d0
feat(api): database schemas migration to new API (#10436)
* fix(log): log crashes if expired or not authenticated

* fix lint and rison

* add tests

* more tests

* perm fix

* fix test not found

* JS lint

* fix Jest test
2020-07-29 09:33:15 +01:00
Lily Kuang
39fad8575c
feat: update dataset editor modal (#10347) 2020-07-28 15:53:20 -07:00
ʈᵃᵢ
6f56cd5e9d
feat(listviews): SIP-34 filters for charts, dashboards, datasets (#10335) 2020-07-27 10:14:11 -07:00
Ville Brofeldt
5b6ff4944c
fix: incorrect filter operator emitted by Filter Box (#10421)
* fix: equals operator in filter box

* fix time range endpoint schema

* fix test

* bump packages

* fix tests

* lint
2020-07-26 12:40:03 +03:00
Moriah Kreeger
6fde7f8984
style: add fade transition to bottom border on navbar menu items (#10402)
* Add fade transition to bottom border on navbar menu items

* lint fix

* use theme variables

* fix spec
2020-07-23 12:49:28 -07:00
Maxime Beauchemin
ea53916730
feat: SIP-34 explore save modal (#10355)
* feat: SIP-34 explore save modal

* using a const for the session storage key

* backend changes

* minor tweaks

* more tweaks

* radio cosmetics

* styles

* fix tests

* CreatableSelect\!

* Fix cypress & lint

* fix unit

* lint
2020-07-23 00:26:29 -07:00
Evan Rusackas
ca71d4d6ee
feat: adding Storybook to Superset (#10383)
* Storybook added!

* starting to configure junk....

* Storybook works!!!

* Now with theme!

* apache boilerplate

* more apache comments

* lots o' knobs for the Button.... taking stock of the codebase

* more classes, but killing the knob for now.

* nixing unused module

* linting

* fresh package-lock

* now with tooltip!

* adding path and zlip because the linter told me to

* upgrading storybook packages from devdeps

* linting

* removing cruft

* killing an annoying (and old?) lint issue

* lint fix, take 2.

* removing zlib/path

* package lock reset from master

* re-adding new packages for this here PR

* nixing console log, simplifying

* nixing comment TODOs (done enough!)

* basic docs.
2020-07-22 10:21:25 -07:00
Daniel Vaz Gaspar
961108625e
fix(datasets): sort and humanized modified by (#10380)
* fix(datasets): sort and humanized modified by

* size xl on changed_on_delta_humanized

* Fix, tests

* Fix, tests

* Fix, frontend tests

* remove debug flag
2020-07-22 11:34:47 +01:00
Ville Brofeldt
3c39b26c99
fix: extra filters for chart data endpoint (#10359)
* fix: extra filters

* fix old test and add new test

* add test for null filter value

* leave lowercase until all operators are fully uppercased

* bump packages

* rename test
2020-07-21 08:24:50 +03:00
Maxime Beauchemin
61544de6c3
chore: uniform icons across list views (#10363)
* chore: uniform icons across list views

* smaller modals

* integrating comments
2020-07-20 19:56:51 -07:00
Erik Ritter
5fa4680447
feat: update timeout error UX (#10274) 2020-07-20 15:32:17 -07:00
Erik Ritter
09de805017
chore: enable no-unused-vars and prefer-template eslint rules (#10350) 2020-07-16 19:13:59 -07:00
ʈᵃᵢ
0eee6785a8
feat(listviews): SIP-34 Bulk Select (#10298) 2020-07-16 16:07:49 -07:00
Ville Brofeldt
611dd7a8f6
fix: make __time an ok column name in SQL Lab (#10336) 2020-07-16 10:34:50 +03:00
Daniel Vaz Gaspar
74cb82e1ad
fix: humanised changed on UTC on dashboards and charts (#10321)
* fix: API marshmallow3 drop utc for naive datetime fields

* fix: API marshmallow3 drop utc for naive datetime fields

* fix, tests

* isort and test

* black

* add and fix test

* fix comment
2020-07-15 19:09:32 +01:00
Erik Ritter
66b0239eca
chore: type welcome (#10317) 2020-07-15 08:38:43 -07:00
Erik Ritter
6ae9f3af8e
feat: add download as image button to explore (#10297) 2020-07-14 16:40:12 -07:00
Erik Ritter
518dbd05b6
chore: add typing to more sqllab components (#10278) 2020-07-14 16:39:56 -07:00
Erik Ritter
80902bca50
chore: add typing to profile (#10282) 2020-07-14 16:39:37 -07:00
Ville Brofeldt
7eb00481de
fix: leave null timestamp unformatted in view results table (#10313) 2020-07-14 19:12:06 +03:00
Jesse Yang
96e0da9fea
fix(table-viz): table chart time column should use default (#10293) 2020-07-13 23:44:57 -07:00
Lily Kuang
3b4df51848
style: new toast design closer to SIP-34 (#10178) 2020-07-10 14:58:59 -07:00
Lily Kuang
80b06f6827
feat: update delete modal for dataset (#10258)
* update delete modal for dataset

* update datasetList to use hooks

* fix typo on dataset delete modal
2020-07-10 14:23:17 -07:00
Jesse Yang
4d179622fa
fix(explore): edit datasource does not update control states (#10284) 2020-07-10 12:46:25 -07:00
Ville Brofeldt
c0d663db9a
feat: show formatted dates instead of epoch on results (#10268) 2020-07-09 20:48:53 +03:00
Jesse Yang
e94c9804a2
fix: optimize mapStateToProps for chart controls (#10264) 2020-07-09 00:33:48 -07:00
Evan Rusackas
3dfa4aa15d
chore: nixing requiresTime (#10259) 2020-07-08 17:10:03 -07:00
Grace Guo
6690963ec2
feat: minor reorder SQL Lab Tab controls (#10257) 2020-07-08 16:21:47 -07:00
Jesse Yang
e5761d3cf7
fix(table-viz): JS error when sort time column (#10250) 2020-07-07 21:28:09 -07:00
Grace Guo
f849103374
feat: Typeahead searchable filter_box for dashboard (#10210)
* [WIP] Typeahead dashboard filter_box

* Make it work

* add config option for async filter_box

* enable for > 1000 options only

Co-authored-by: Jesse Yang <jesse.yang@airbnb.com>
2020-07-07 09:31:18 -07:00
Evan Rusackas
569e4a7c50
chore: Revised logo (new color), w/CSS for vert alignment (#10237)
* out with the old, in with the new

* vertically centering logo once and for all

* lint: black instead of IDE formating

* touch config.py

* Styles -> StyledHeader

* nixing vestigial SVG

* removing trademark

Co-authored-by: Maxime Beauchemin <maximebeauchemin@gmail.com>
2020-07-06 17:30:18 -07:00
Erik Ritter
9a5195ab85
feat: support new errors payload in SQL Lab (#10243) 2020-07-06 09:49:32 -07:00
Erik Ritter
4281ad5486
chore: type ResultSet.tsx (#10226) 2020-07-02 10:12:31 -07:00
Jesse Yang
700429f431
fix: chart validation error not cleared on control value update (#10224) 2020-07-01 18:32:27 -07:00
Jesse Yang
9bdfa055ac
feat(viz): add query mode switch to table chart (#10113)
1, Replace table chart rendering from jquery.DataTables to react-table: apache-superset/superset-ui#623
2. Rearrange the control panel, replace GROUP BY and NOT GROUP BY with a "Query Mode" switch: apache-superset/superset-ui#609
2020-06-28 21:37:04 -07:00
ʈᵃᵢ
3414f35792
refactor: better naming for config flags (#10180) 2020-06-26 17:36:50 -07:00
Jason Davis
9de9e1c19d
feat: Added configuration to SQL Lab results "Explore" button (#10164)
* added configuration to virtual table explore button

* added description to mixin

* fixed unit tests

Co-authored-by: Jason Davis <@dropbox.com>
2020-06-26 09:54:55 -07:00
Jesse Yang
ecb44a4243
refactor: import emotion-theming methods from @superset-ui/style (#10157)
This makes the code cleaner and fixes missing theme variables when `npm link @superset-ui/style`.
2020-06-24 19:23:51 -07:00
Ville Brofeldt
38667b72b1
fix: refine shouldUseLegacyApi and add tests (#10148)
* fix: refine shouldUseLegacyApi and add tests

* address review comments
2020-06-24 19:38:36 +03:00
ʈᵃᵢ
be936c2eb8
style: listviews closer to SIP-34 (#10094) 2020-06-23 14:17:28 -07:00
Jesse Yang
ed4f6e93ac
chore: bump superset-ui to v0.14.1 (#10112) 2020-06-22 11:14:23 -07:00
Grace Guo
a80453d945
fix: dashboard filter scope bug (#10114)
* fix: dashboard filter scope bug

* add extra comments per review
2020-06-22 10:18:04 -07:00
Erik Ritter
cb1705fdae
chore: type src/addSlice (#10127) 2020-06-22 08:14:27 -07:00
Maxime Beauchemin
cf0f1d568d
style: replace broken glyphs with font-awesome (#10123)
Glyphicons stopped working recently, not sure why, but let's get rid of
them and double down on font-awesome that we use a lot more in the
codebase. There's only a few instances of glyphicons and they all are
broken ATM.

Also a few other minor style tweaks
2020-06-21 21:38:08 -07:00
Will Barrett
961b55cfba
fix: Visualization settings were lost when editing a datasource from Explore (#10092) 2020-06-19 12:55:49 -07:00
Erik Ritter
2e76fbb7e5
chore: type FilterableTable (#10073) 2020-06-18 21:57:11 -07:00
Maxime Beauchemin
a6390afb89
style: push bootstrap theme towards SIP-34 styles (#10056)
* feat: cartel theme

* piling

* more tweaks

* Make things look better

* lint

* fix tests

* paint it black

* tweaks
2020-06-18 15:01:58 -07:00
Phillip Kelley-Dotson
02fee35314
chore(metricoption): remove metricoption and columntypelable dependency (#10077)
* remove columntypeLabel and metricoptions from superset

* fix lint

* remove old test

* update pakage

* add suggestions

* fix merge conflict
2020-06-17 19:55:17 -07:00
ʈᵃᵢ
c914af0bc4
fix: adds pagination/infinite scroll to owners select in DashboardList and ChartList (#10035) 2020-06-17 16:27:21 -07:00
Erik Ritter
987cb6e1fe
chore: type src/dashboard/util/charts (#10068) 2020-06-17 12:34:04 -07:00
ʈᵃᵢ
8c012f7941
feat: add more columns and icons to dataset listview (#10043) 2020-06-16 17:30:10 -07:00
Ville Brofeldt
ee77707532
feat: add deafult buildQuery for V1 chart data requests (#10048) 2020-06-12 07:49:13 -07:00
Lily Kuang
5339d31ed1
feat: implement secondary navigation for datasets (#9982) 2020-06-10 11:55:51 -07:00
Ville Brofeldt
56397d75cc
fix: raise error in sqllab when using reserved column name (#9859) 2020-06-10 16:32:43 +03:00
Ville Brofeldt
5c4d4f16b3
feat: finalize Word Cloud move to new chart data endpoint (#9975)
* remove word cloud from viz.py

* Fix Run in SQL Lab

* remove deprecated python tests

* break out legacy endpoint type into function

* Break out exploreChart from exportChart and implement results type

* Fix jest tests and refactor accordingly

* lint

* Rename v1 payload function

* Add dashboard id to v1 chart data request url params

* Add support for domain sharding to v1 chart data request
2020-06-05 14:08:46 +03:00
ʈᵃᵢ
d187d2887e
fix: fetch all owners for dashboard, chart listview filters and properties modal (#9784) 2020-06-03 19:57:03 -07:00
Grace Guo
dcac860f3e
feat: [dashboard] notification and warning for auto force refresh (#9886)
* feat: [dashboard] notification and warning for auto force refresh

* fix review comments
2020-06-03 10:20:56 -07:00
Ville Brofeldt
fc92692f49
feat: implement new version of word cloud (#9962) 2020-06-02 19:28:58 +03:00
Ville Brofeldt
38a6bd79da
feat: expand new chart data endpoint coverage (#9903)
* feat: implement new chart API for additional components

* Fix python tests

* Fix tests

* Fix lint

* fix camel case error in requestParams

* lint

* fix samples row limit

* Add samples row limit to config

* remove unnecessary code

* lint

* Address review comments
2020-06-02 10:47:28 +03:00
Jesse Yang
359ea8825d
fix(react-select): FilterBox focus event and adhoc filter popup height (#9933)
* fix(react-select): FilterBox focus event and adhoc filter popup height

* Fix flacky cypress test

* Use focus instead of click
2020-05-27 15:15:32 -07:00
Ville Brofeldt
1b72907b18
Revert "feat: bump superset-ui and implement queryFields in formData (#9908)" (#9931)
This reverts commit 2c97e72959.
2020-05-27 22:50:14 +03:00
Ville Brofeldt
5ff61048c6
feat: bump sinon to latest (#9926) 2020-05-27 19:34:40 +03:00
Ville Brofeldt
2c97e72959
feat: bump superset-ui and implement queryFields in formData (#9908)
* feat: Bump superset-ui packages for queryFields

* feat: Implement queryField in formData
2020-05-26 10:19:33 -07:00
Grace Guo
e6a55d8858
fix: [dashboard] should not trigger chart refresh when filter not applicable (#9891)
* fix: [dashboard][filter] should not trigger chart refresh when filter is not applicable

* fix comments
2020-05-26 10:14:12 -07:00
Phillip Kelley-Dotson
333dc8529e
feat: tablechart plugin controls migration (#9847)
* delete controls

* move columnoption to controls

* update package and remove columnoption

* fix: remove console and fix import

* fix: lint

* update version

* fix last rebase

* fix: lint:
2020-05-21 12:15:02 -07:00
Christian Murphy
a262ea7487
refactor(frontend): move utils to TypeScript (#9820)
* refactor(frontend): move utils to typescript (#9101)

* refactor(frontend): don't export interfaces

* test(frontend): update types and test for isValidChild
2020-05-20 14:47:40 -07:00
Jesse Yang
81ab8dd8b4
feat: upgrade react-select and make multi-select sortable (#9628)
* feat: upgrade react-select v1.3.0 to v3.1.0

Upgrade `react-select`, replace `react-virtualized-select` with a custom
solution implemented with `react-window`.

Future plans include deprecate `react-virtualized` used in other places, too.

Migrate all react-select related components to `src/Components/Select`.

* Fix new list view

* Fix tests

* Address PR comments

* Fix a flacky Cypress test

* Adjust styles for Select in CRUD ListView

* Fix loadOptions for owners select in chart PropertiesModal

TODO: add typing support for AsyncSelect props.

* Address PR comments; allow isMulti in SelectControl, too

* Clean up NaN in table filter values

* Fix flacky test
2020-05-19 16:59:49 -07:00
Grace Guo
5ca6ed716f
[explore view] inline edit slice name should not overwrite (#9817) 2020-05-18 22:53:29 -07:00
Grace Guo
d96bb874f2
fix: [filter_box] fix 2 issues in single value filter_box (#9829)
* fix: [filter_box] fix 2 issues in single value filter_box

* add unit test

* add fix per comments
2020-05-18 21:25:10 -07:00
Phillip Kelley-Dotson
38c57f45ac
feat: partitionchart controls migration (#9768)
* fix lint error

* fix: import lint error

* pull in latests code

* delete control from plugin registry

* fixing again...

* another fix with rebase...

* commit change

* update packages and fix test

* fix: add ignore to lint error

* fix mr

* fix lint

* fix imports

Co-authored-by: Phillip Kelley-Dotson <pkd@pkd.lan>
2020-05-18 12:48:51 -07:00
Erik Ritter
b36738cf56
fix: use snake_case for error_type (#9835) 2020-05-18 12:35:55 -07:00
Ville Brofeldt
7a95c52d61
refactor: simplify getExploreUrl functions (#9831)
* remove payload from return signature

* Rename function and fix tests

* Lint

* fix tests

* Move useLegacyApi inquiry to exploreUtils
2020-05-18 19:19:05 +03:00
Christian Murphy
b8eaa114ed
feat(frontend): add ability to download dashboard and chart as image (#9819)
* feat(frontend): add ability to export dashboard and chart as image (#6973)

* refactor: migrate download image as to typescript

* feature(frontend): download as image updates

add toast message if error occurs.
make generate file stem an internal method.

* refactor(frontend): move default background color to a const

* feat(frontend): wrap download image toast in translate function
2020-05-17 14:50:27 -07:00
Erik Ritter
d02f2d1fa7
feat: return security errors in the SIP-40 format (#9796) 2020-05-13 17:10:37 -07:00
Erik Ritter
83ec7365a7
feat: convert backend chart errors to the new error type (#9753) 2020-05-12 18:15:53 -07:00
Jesse Yang
13c5b133a9
test(frontend): use absolute path for src imports (#9761)
* test(frontend): use absolute path for src imports

* Upgrade prettier, fix eslint
2020-05-07 14:18:10 -07:00
David Aaron Suddjian
80f8349018
Query the new chart data api for charts that support it (#9710)
* calling new chart api (mostly working)

* can't .then when the promise has already been await-ed

* Add handling for v1 API response

* comment

* update word cloud plugin & dependencies

* testing

* try just waiting

* Revert "try just waiting"

This reverts commit 10c092effd.

* tweaking bootstrap types

* Bumping word cloud package version

* new package lock

Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
Co-authored-by: Evan Rusackas <evan@preset.io>
2020-05-07 01:09:28 -07:00
Grace Guo
83b4165e61
[perf logging] Add extra logging for new/editMode dash (#9745)
* [perf logging] Add extra logging for new/editMode dash

* fix review comments
2020-05-06 09:03:04 -07:00
Maxime Beauchemin
9aabafe9fe
fix: adhoc filter 'equals' doesn't let you save (#9652)
When altering a filter, when using `equals` or `does not equals`,
the save button is disabled even when it should be enalbed.
2020-05-06 08:38:10 -07:00
Ville Brofeldt
5485eb993c
feat: Add controlGroups to formData (#9740) 2020-05-06 14:53:13 +03:00
David Aaron Suddjian
d65d29c810
fix: css prop is now overwhelmed with emotion (#9742) 2020-05-05 10:10:56 -07:00
Grace Guo
43eec67291
[table editor] hide Edit Datasource option when no onDatasourceSave (#9706)
* [table editor] hide Edit Datasource option when no onDatasourceSave

* add !! operator to get truthiness
2020-04-30 17:32:01 -07:00
Erik Ritter
5fb883e279
chore(ts): type getClientErrorObject (#9693) 2020-04-30 17:03:31 -07:00
ʈᵃᵢ
f7f60cc75d
[Chart & Dashboard] improve listview filter ui and add expandable list support (#9651)
* better styling for select filters and search input

* add emotion babel plugin

* add spec for search input

* fix async select, add beeter error messages

* add error boundary around views

* cleanup and lint

* add expandable list to dashboards

* fix emotion babel config

* fix specs

* remove commented out code

* add selected style

* DRY up styles

* add icons

* fix type

* add apache license

* fix svgs

* fix ExpandableList type

* reduce custom css

* lint
2020-04-29 21:54:07 -07:00
Erik Ritter
5d7b13507e
feat(errors): add client scaffolding for custom error messages (#9677) 2020-04-29 17:20:31 -07:00
Grace Guo
735dcd2002
[explore view] add partition as adhoc filter option (#9637)
* [explore view] add partition as adhoc option

* use adhocFilter Simple Tab

* simplify conditional check for custom adhoc filter operator

* add simple unit tests
2020-04-28 23:09:44 -07:00
Natalie Ruhe
9d755bc1ad
[fix] Support APP_ICON_WIDTH configuration parameter in SPA menu (#9666)
* Expose additional APP_ICON_WIDTH python config variable to ui via app bootstrap for use in Menu

* Update base.py to inclue APP_ICON_WIDTH via bracket notation instead of .get and adjust Menu proptypes to be required.

Co-authored-by: Natalie Ruhe <nruhe@nruhe.attlocal.net>
Co-authored-by: Natalie Ruhe <natalie@preset.io>
2020-04-28 12:59:03 -07:00
Lily Kuang
c474ea848a
[fix] Push browser history on pagination in react listviews (#9624)
* improve history for query params

* fix: push browser history on pagination in react listviews

* fix spec

Co-authored-by: Tai Dupree <tdupreetan@gmail.com>
2020-04-27 21:37:22 -07:00
Evan Rusackas
5e4c291913
Controls cleanup pass (#9578)
* migrating date_filter

* normalized control

* filter_configs control

* column_collection control

* time_range_endpoints control

* time_range_fixed control

* url_params control

* cache_timeout control

* annotation_layers control

* color control unused?

* linters rule 🤘

* this should have been deleted earlier

* global_opacity, mapbox_label, mapbox_style, viewport_zoom

* linting

* comparison_type

* contribution control

* log_scale

* show_values

* table_filter

* pandas_aggfunc

* code control

* formatSelectOptions import

* lint

* markup_type control

* lintage

* date_time_format control, linting

* url control, test mods

* min_periods control

* rolling_periods

* rolling_type

* missing lib

* order_desc

* number_format

* link_length

* all_columns_y

* all_columns_x

* normalize_across, select_country, all_columns

* fixing test

* linter-caught dependencies

* waiting

* wait longer!

* utilizing tabOverride for Analytics

* tabOverride for Annotations and Layers
2020-04-24 16:12:26 -07:00
David Aaron Suddjian
f8adfc8fbf
use new @superset-ui/style package for theming (#9605)
* use new @superset-ui/style package for theming

* fix tests to reference theme

* try adding a wait
2020-04-22 13:13:40 -07:00
ʈᵃᵢ
0b999e3b91
[charts] adds new filters ui (#9530)
* [charts] adds new filters ui

* move null check to be more visible

* better filter lists and async filter functionality
2020-04-21 12:04:11 -07:00
Erik Ritter
ba691d3a27
Bump superset-ui-connection to 0.12.22 (#9602) 2020-04-21 11:36:01 -07:00
Evan Rusackas
ea27e68ee1
Migrating shared NVD3 controls to new module (#9525)
* proto module

* caught a missed 'freq' unique control

* line_interpolation

* linting

* showLegend

* show_controls

* xAxisLabel

* bottomMargin

* x_ticks_layout

* missed one

* x_axis_format

* yLogScale

* y_axis_bounds

* linting

* nixing yarn lock

* x_axis_showminmax

* xAxisShowminmax control

* richTooltip

* linting, syntax fix

* show_bar_value, bar_stacked

* reduceXticks, yaxislabel

* left_margin, max_bubble_size, y_axis_showminmax

* show_labels

* send_time_range, y_axis_2_format, show_markers, order_bars

* nixing commented imports

* fake controls

* looking up actual controls for comparison.

* adding key to test setup

* controls inventory

* apache junk

* lint 

* ignore null controls

* fixing goofed up spread operation for xAxisFormat config

* lint 

* fixes for errors caused by <hr> element in filterbox controls

* fixing filter controls for 'druid_time_origin', 'granularity', 'granularity_sqla', 'time_grain_sqla'

* getControlsInventory -> getControlsForVizType

* further renaming of chartControlsInventory - > getControlsForVizType

Co-authored-by: David Aaron Suddjian <aasuddjian@gmail.com>
2020-04-17 11:40:50 -07:00
Grace Guo
4a55e1ea3a
[fix] dashboard filter scope bug (#9550) 2020-04-16 15:44:03 -07:00
ʈᵃᵢ
f90824fa17
[Dashboard] new listview filters & emotion infra (#9462)
* [Dashboard] listview filters to match new design

* use title_or_slug filter

* use ?. operator

* move components to components folder
2020-04-13 13:39:55 -07:00
Evan Rusackas
1cdfb829d7
Eslint prefer-object-spread (#9466)
* The rule.

* The result
2020-04-03 17:05:16 -07:00
Evan Rusackas
265a2feb29
Migrating NVD3 Area's stacked_style config (#9454)
* Migrating NVD3 Area's stacked_style config

* test mods

* lint

* nonsense change

* undoing nonsense. Come on GitHub, WORK.
2020-04-03 12:50:28 -07:00
ʈᵃᵢ
893c95521b
fix pagination for list views (#9425) 2020-04-01 09:20:17 -07:00
Grace Guo
a9ff51bd61
[fix] dashboard filter indicator no showing single number value (#9401) 2020-03-30 15:05:04 -07:00
David Aaron Suddjian
cfa786850f
upgrade to react-bootstrap v0.33.1 (#9372)
* upgrade to react-bootstrap v0.33.1

* fix test

* simplify proptypes

Co-Authored-By: Evan Rusackas <evan@preset.io>

* simplify more proptypes

Co-Authored-By: Evan Rusackas <evan@preset.io>

Co-authored-by: Evan Rusackas <evan@preset.io>
2020-03-26 11:16:49 -07:00
Maxime Beauchemin
98a71be80b
feat: [explore] don't save filters inherited from a dashboard (#9340)
* feat: [explore] don't save filters inherited from a dashboard

When navigating to explore from a dashboard context, the current
dashboard filter(s) are passed along to explore so that the context is
kept. So say you're filtering on "country=Romania", in your dashboard
and pivot to explore, that filter is still there and keep on exploring.

Now a common issue is that you'll want to make some tweak to your chart
that are unrelated to the filter, say toggling the legend off for
instance, and then save it. Now you back to your dashboard and even
though you started with an "all countries" dashboard, with a global
filter on country, now that one chart is stuck on "Romania". Typically
you notice this when filtering on something else, say "Italy" and then
that one chart now has two mutually exclusive filters, and show "No data".

Now, the fix is to flag the filter as "extra" (that's the not-so-good internal
name we use for these inherited filters) and make it clear that that
specific filter is special and won't be saved when saving the chart.

* fix build
2020-03-23 23:05:00 -07:00
ʈᵃᵢ
866f6f9330
feat: [SQLLAB] add checkbox to control autocomplete (#9338)
* [SQLLAB] add checkbox to control autocomplete

* autocomplete -> autocompleteEnabled

* fix defaultProps

* fix spec
2020-03-23 22:11:05 -07:00
Jianchao Yang
c4b53a7d42
Build: optimize frontend build configs to improve superset-ui-plugin dev experience (#9326)
* Upgrade webpack, babel and React

* Upgrade all Babel related packages

Also remove babel-plugin-css-modules-transform that is not in use.

* Remvoe tslib as dependency

* Remove unnecesary packages
2020-03-19 14:57:39 -07:00
David Aaron Suddjian
46598830e9
show edit modal on dashboards list view (#9211)
* show edit modal on dashboards list view

* lint

* fix test

* simplify PropertiesModal interface

* lint

* comply with method ordering

* fix type issue
2020-03-19 08:05:35 -07:00
David Aaron Suddjian
f6f40c815a
[Charts] Use the Edit Properties modal throughout React views (#9267)
* typescriptification

* use the chart edit modal on the react list view

* linting

* typings don't work on old react-bootstrap version

* lint

* remove duplicate field
2020-03-13 15:14:50 -07:00
ʈᵃᵢ
5767fb15cd
[datasets] new, listview (react) (#9197)
* [datasets] new, react listview

* add hidden columns to support filtering by columns not rendered

* throw exception if config is incorrect

* fix database filter

* update endpoints to point to datasets; fix translation strings

* move Link into src/components

* add add new record button to datasets listview
2020-03-13 21:35:00 +02:00
Erik Ritter
786e575dbe
[build] Bump superset-ui packages and update build (#9241) 2020-03-05 14:20:45 -08:00
Daniel Vaz Gaspar
26e916e46b
[api] enable CSRF by default (#9205)
* [api] Fix, don't exempt CSRF on APIs

* adds cookie based CSRF token support

* blacking

Co-authored-by: ʈᵃᵢ <tdupreetan@gmail.com>
2020-03-03 12:22:40 +00:00
Jianchao Yang
1992069af1
Upgrade typescript to 3.8.2 (#9189) 2020-02-25 08:44:26 -08:00
ʈᵃᵢ
1748728c45
adds FAB style filter types (#9086) 2020-02-24 10:16:11 -08:00
ʈᵃᵢ
74423e5d19
deprecate tslint and configure eslint for typescript (#9172) 2020-02-20 09:54:33 -08:00
Grace Guo
c1750af54a
[dashboard] clean up usage for old filter immune metadata (#9146)
* [dashboard] clean up usage for filter_immune metadata

* add fix per comment
2020-02-19 09:58:34 -08:00
Will Barrett
38f3fd0c9f
Add feature flags to control query sharing, KV exposure (#9120)
* Add feature flags to control query sharing, KV exposure

* Add tests, fix bug

* Skip test for kv endpoints when they are disabled

* ESLint fixes

* Remove unnecessary binds

* Fix eslint errors

* Add note to UPDATING.md RE: new feature flag options

* Use expanded version of RBAC

* Enable KV_STORE and SHARE_QUERIES_VIA_KV_STORE feature flags in the test environment

* Fix black
2020-02-19 09:51:50 -08:00
Grace Guo
b0110a74e7
[dashboard] remove loading spinner in missing chart holder (#9140) 2020-02-14 09:01:47 -08:00
David Aaron Suddjian
2913063924 SIP-32: Moving frontend code to the base of the repo (#9098)
* move assets out, get webpack dev working

* update docs to reference superset-frontend

* draw the rest of the owl

* fix docs

* fix webpack script

* rats

* correct docs

* fix tox dox
2020-02-09 17:53:56 -08:00