* feat(explore): SQL popover in datasource panel
* Fix acequire not defined
* Rebase and fix tests
* Disable highlighting gutter
* Use ace-build acequire instead of brace
* fix(fonts): Import all necessary font packages
* Make html tags themable
* Set bold font weight to 600, add medium font weight to theme
* Replace hard coded font weights with theme variables
* Change some font weight light elements to normal
* Fix tests
* Fix bug in pivot table
* Address code review comments
* wip
* feat: make 401 responses configurable in SupersetClient
* sort
* guest unauthorized handler
* add toast container to embedded app
* add option for toast presenter to go at the top
* remove confusing comms logging
* lint
* Update superset-frontend/src/embedded/index.tsx
* type correction
* remove ENABLE_REACT_CRUD_VIEWS feature flag
* docs
* deal with problematic tests
* empty test suite
* skip test
* test conditions changed
* removing the tests instead of skipping
* make that the comma can be added by removing it from token separators in select component.
* fix(explore comma): add the allowTokenSeperators props into Select
* fix(explore comma): make to allow to customize the token separators in Select.
* fix(explore comma): make to add the unit test and story book.
* fix(explore comma): make to fix the lint
* fix(explore comma): make to fix the spell & add tokenSeparatprs props to PickedSelectProps
* Update Select.tsx
* fix(explore comma): make to run lint fix
* first pass migrating config to ff
* nixing a console log from testing
* adding an entry to `UPDATING.md`
* linting ✨
* Adding ENABLE_JAVASCRIPT_CONTROLS to FEATURE_FLAGS.md
* no longer in need of state!
* Turning the flag back off
* linting... le sigh
* and more linting...
* feat(dashboard): embedded dashboard UI configuration (#17175) (#17450)
* setup embedded provider
* update ui configuration
* fix test
* feat: Guest token (for embedded dashboard auth) (#17517)
* generate an embed token
* improve existing tests
* add some auth setup, and rename token
* fix the stuff for compatibility with external request loaders
* docs, standard jwt claims, tweaks
* black
* lint
* tests, and safer token decoding
* linting
* type annotation
* prettier
* add feature flag
* quiet pylint
* apparently typing is a problem again
* Make guest role name configurable
* fake being a non-anonymous user
* just one log entry
* customizable algo
* lint
* lint again
* 403 works now!
* get guest token from header instead of cookie
* Revert "403 works now!"
This reverts commit df2f49a6d4.
* fix tests
* Revert "Revert "403 works now!""
This reverts commit 883dff38f1.
* rename method
* correct import
* feat: entry for embedded dashboard (#17529)
* create entry for embedded dashboard in webpack
* add cookies
* lint
* token message handshake
* guestTokenHeaderName
* use setupClient instead of calling configure
* rename the webpack chunk
* simplified handshake
* embedded entrypoint: render a proper app
* make the embedded page accept anonymous connections
* format
* lint
* fix test
# Conflicts:
# superset-frontend/src/embedded/index.tsx
# superset/views/core.py
* lint
* Update superset-frontend/src/embedded/index.tsx
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>
* comment out origins checks
* move embedded for core to dashboard
* pylint
* isort
Co-authored-by: David Aaron Suddjian <aasuddjian@gmail.com>
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>
* feat: Authorizing guest access to embedded dashboards (#17757)
* helper methods and dashboard access
* guest token dashboard authz
* adjust csrf exempt list
* eums don't work that way
* Remove unnecessary import
* move row level security tests to their own file
* a bit of refactoring
* add guest token security tests
* refactor tests
* clean imports
* variable names can be too long apparently
* missing argument to get_user_roles
* don't redefine builtins
* remove unused imports
* fix test import
* default to global user when getting roles
* missing import
* mock it
* test get_user_roles
* infer g.user for ease of tests
* remove redundant check
* tests for guest user security manager fns
* use algo to get rid of warning messages
* tweaking access checks
* fix guest token security tests
* missing imports
* more tests
* more testing and also some small refactoring
* move validation out of parsing
* fix dashboard access check again
* add more test
Co-authored-by: Lily Kuang <lily@preset.io>
* feat: Row Level Security rules for guest tokens (#17836)
* helper methods and dashboard access
* guest token dashboard authz
* adjust csrf exempt list
* eums don't work that way
* Remove unnecessary import
* move row level security tests to their own file
* a bit of refactoring
* add guest token security tests
* refactor tests
* clean imports
* variable names can be too long apparently
* missing argument to get_user_roles
* don't redefine builtins
* remove unused imports
* fix test import
* default to global user when getting roles
* missing import
* mock it
* test get_user_roles
* infer g.user for ease of tests
* remove redundant check
* tests for guest user security manager fns
* use algo to get rid of warning messages
* tweaking access checks
* fix guest token security tests
* missing imports
* more tests
* more testing and also some small refactoring
* move validation out of parsing
* fix dashboard access check again
* rls rules for guest tokens
* test guest token rls rules
* more flexible rls rules
* lint
* fix tests
* fix test
* defaults
* fix some tests
* fix some tests
* lint
Co-authored-by: Lily Kuang <lily@preset.io>
* SupersetClient guest token test
* Apply suggestions from code review
Co-authored-by: Lily Kuang <lily@preset.io>
Co-authored-by: Lily Kuang <lily@preset.io>
* feat(timeseries-chart): add percentage threshold control for stack series labels
* feat: move threshold vlues to an array
* add tests for showValue, onlyTotal, and percentThreshold
* feat: add another test
* revert ChartProps typesetting, fix misnamed variable on form data type, and other minor changes
* fix percentage threshold push equation
* fix percentage threshold push equation in tests
* change default on control to match form
* attempt fix form defaults import
Co-authored-by: Corbin Robb <corbin@Corbins-MacBook-Pro.local>