* chore: Restructure explore redux state
* fixes
* fix tests
* add new tests
* Fix type
* Address comments
* Fix bug
* Fix import
* Add new test
* Move unsaved chart id to a constant
* Add todo
Recent commit to sort alphanumeric columns via case insensitive
comparison broke the multi-column sort option. React-table only sorts
by the second (or third...) column if the first column matches.
Since the alphanumeric sort only returned -1 or 1, it never would move
to the subsequent columns when the earlier column values matched.
* git commit -m 'Convert QueryAutoRefresh to functional component [sc-48362]'
* addressing PR comments [sc-48362]
Removes unneeded props and state tracking of offline, adds finally block to simplify clearing pending request, simplifies value comparison in array by using includes in place of indexOf
* Address PR comment to use enum for QueryState [sc-48362]
Original implementation had string literals used in multiple places representing Query.state value options. This commit creates a formal TypeScript enum for QueryState so we can remove string literals and ensure better consistency
* Address PR comments for object type validation [sc-48362]
This commit resolves an issue why the TypeScript typing for queryList was marked as a Query[] but was actually a Dictionary (associative array) or Queries. A new type QueryDictionary has been added and the QueryAutoRefresh code was adjusted to use QueryDictionary instead of Query[] in appropriate places as well as unit tests. Commit also removes QueryAutoRefreshContainer by making the once component using QueryAutoRefresh (which is already redux connected) pass the needed values on props. this simplifies the code base and reduce files that need unit testing while keeping QueryAutoRefresh out of needing a redux connection directly.
* Addresses PR comment to add QueryState.SCHEDULED to runningQueryStateList [sc-48362]
In previous implementation 'scheduled' was not included int he list of Query States. Further investigation shows it should be added to as a running state.
* Fix prettier lint error [sc-48362]
* Adjust unit tests for props update hoisting callbacks out of actions wrapper object [sc-48362]
* Update with changes from master [sc-48362]
Merges in updates from master and resolves conflicts from relocation of some of the Query TypeScript definitions into core
* Removes logic setting user offline and relying on results panel error message [sc-48362]
* Fixes bad import after some TypeScript definitions were relocated to core [sc-48362]
* Fixes TypeScript errors [sc-48362]
* Modified SQL Lab so it uses the default viz to explore a new dataset with
* Added a comment to the config file
* Remove trailing whitespace
* [CLDN-1312] Removed the 'viz_type' variable so that when it is undefinded in the back-end, it gets set to the default viz
* [CLDN-1312] Only sets the 'all_columns' variable if the default viz type is a 'table'
* Will only pop 'selectedColumns' out of 'form_data' if it is present
* [CLDN-1312] Updated files so that the default viz is now being used again in SQL Lab Explore
* fix(home): make to update the css style of links
* fix(home): make to fix lint issue
* fix(home): make to remove underline when tab is active
* fix(homes): make to fix the issue of tab
* fix(home): make to move styles to a tag
* Update dataset selection help text.
* Update 'Create a new chart' flow styles.
* Add support for linking directly to Create Dataset modal via URL hash.
* Add support for linking directly to Create Dataset modal via URL hash.
* Update dataset help text to not include spaces in translated strings and only include an 'Add dataset' link when user has permission to add dataset.
* Clean up test file
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* move postForm to superset client
* lint
* fix lint
* fix type
* update tests
* add tests
* add test for form submit
* add test for request form
* lint
* fix test
* fix tests
* more tests
* more tests
* test
* lint
* more test for postForm
* lint
* Update superset-frontend/packages/superset-ui-core/test/connection/SupersetClientClass.test.ts
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>
* update tests
* remove useless test
* make test cover happy
* make test cover happy
* make test cover happy
* make codecov happy
* make codecov happy
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>
* fix(cosmetic): cannot find m-r-10 class in superset.less
* fix: remove .m-r-10 class and use emotion instead
* Update superset-frontend/src/components/Datasource/CollectionTable.tsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Update superset-frontend/src/components/Datasource/DatasourceEditor.jsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* add icons
* Implement fast viz switcher component
* Remove unnecessary keys from ControlsPanelContainer
* Rename icons
* Add unit tests
* Add licenses
* Fix test
* Change BigNumberWithTrendline to BigNumber
* fix test
* fix test
* Add currently rendered viz tile
* Move View all charts to the right side
* Add license
* Fix imports
* Fix e2e test
* fix: A newly connected database doesn't appear in the databases list if user connected database using the 'plus' button
* include onDatabaseAdd on successful import
* feature: When editing the label/title in the Metrics popover, hitting Enter should save what you've typed
* Apply emotion templating to input/input labels
* feat(echarts): [feature-parity] support extra control
* add extra control for plugin
* refactor: extract ExtraControl
* fix: lint
* fix some problems
* Frontend implementation of create dataset from infobox
* Fixed sl_dataset type
* Fix test
* Fixed sl_dataset type (forgot to save)
* RTL testing
* Adjusted styling/text on infobox and save dataset modal
* Appease lint
* Make infobox invisible and fix tests
* Remove unnecessary placeholder
* Move types to sql lab
* Moved logic into save dataset modal
* Change DatasourceMeta type to Dataset
* Add ExploreDatasource union type to save dataset modal
* Get user info from redux inside save dataset modal
* Addressed comments
* Adjusting to new query type
* Fixed save dataset in explore and union type
* Added testing
* Defined d for queries
* Remove dataset from SaveDatasetModal
* Clarify useSelector parameter
* Fix dndControls union type
* Fix shared-controls union type
* Fix controlPanel union type
* Move ExploreRootState to explore type file
* Remove unnecessary testing playground
* Move datasource type check in DatasourcePanel to a function
* Make all sqllab Query imports reference @superset-ui/core Query type
* Deconstruct query props in ResultSet
* Fix union type in /legacy-plugin-chart-heatmap/src/controlPanel
* Change SaveDatasetModal tests to RTL
* Cleaned datasourceTypeCheck
* Fix infobox styling
* Fix SaveDatasetModal test
* Fix query fixture in sqllab and Query type in SaveDatasetModal test
* Fix Query type and make test query fixture
* Added columns to Query type, separated results property, created QueryResponse union type, and fixed all types affected
* Fixed a couple missed broken types
* Added ExploreDatasource to SqlLab type file
* Removed unneeded Query import from DatasourcePanel
* Address PR comments
* Fix columnChoices
* Fix all incorrect column property checks
* Fix logic on dndGroupByControl
* Dry up savedMetrics type check
* Fixed TIME_COLUMN_OPTION
* Dried savedMetrics type check even further
* Change savedMetricsTypeCheck to defineSavedMetrics
* Change datasourceTypeCheck to isValidDatasourceType
* Fix Query path in groupByControl
* dnd_granularity_sqla now sorts Query types with is_dttm at the top
* Fixed/cleaned query sort
* Add sortedQueryColumns and proper optional chaining to granularity_sqla
* Move testQuery to core-ui, add test coverage for Queries in columnChoices
* Moved DEFAULT_METRICS to core-ui and wrote a test for defineSavedMetrics
* Add license and clean dataset test object
* Change DatasourceType.Dataset to dataset
* pass datasource_type and datasource_id to form_data
* add datasource_type to delete command
* add datasource_type to delete command
* fix old keys implementation
* add more tests
This commit fixes a dynamic height assignment issue where the SQL Editor results panel would be clipped offscreen and user could not see bottom of results, the height got assigned to zero after toggling online, then offline, and height would be calculated wrong if the result set rows returned message above the results table was long enough for a line wrap.
* more changes that didn't make it into the last commit somehow.
* Allow modals to be short, but reach a max height and scroll
* now with template literals
* feat(plugin-chart-echarts): add support for generic axis to mixed chart
* fix tests + add new tests
* address review comments
* simplify control panel
* fix types and tests
* fix(chart & alert): make to show metrics properly
* fix(chart & alert): make to remove duplicate metrics
* fix(chart & alert): make to restore metrics control alert slice
* fix(chart & alert): make to fix lint issue
* add BUSINESS_TYPE_ADDONS to config with example callback
* Removing uneeded whitespace
* [Work in progress] Modifying cidr function to allow for single ip and adding port outline
* Added test REST endpoint, added some more ports
I've thrown in a test.py script as well that will try to connect to the
business_type endpoint.
* Moving code from config.py into the business api
Very simple api is exposed that will allow someone to call a checkport
endpoint and get back a response.
* Removing commented out bits.
* Adding fucntion dict back to the config
* Moving business_type endpoint to charts
* Adding schema for get endpoint
* Removing imports, updating docstring, fixing typo
Just some small changes as described in the title. I've updated the
test.py as well so it functions with the endpoint changes.
* Adding translation dict
* Fixing ops
* Adding check for list
* Modifying changes to add quotes where needed
Also changed BusinessTypeResponse to resp.
* Adding in some code to call the filter config
If a column starts with "cidr_" it will call the code in config.py to
try to translate the filter. Nothing is changed in the JSON being
executed, just some information is dumped to console.
* Porting Ryan's changes
* Adding migration script (as per Ryan's PR)
* Fixing typo
* Prettier fixes
* [CLDN-1043] Adding rough version of filter changes for business types
* fix down migration
* Fixing bugs after merge
* adding functionality to appy filters in back end
* Fixing linting issues
* fix down revision
* Changing conversion callback to handle multiple values at once
* Adding string representation of values
* Code cleanup plus fixing debouce to only be called once for each entry
* Removing non needed logginh
* Changing operator list to use sting values
* Using text value operators
* Removing clear operator call
* Moving business type endpoints
* fix down revision
* Adding port functions
* update migration
* fix bad rebase and add ff
* implement validator
* dont add invalid values to response
* [CLDN-1205] Added a new exception type for a business type translation error. Added the error message in the display_value field within the business type response. Modified the IP and Port business types to populate the error message field in the response if an error occurs
* [CLDN-1205] Added meaningful error message for port translation errors
* Removing status field from businesstype Response and adding in error message
* [CLDN-1205] Added check to make sure the port business type is within the valid range of ports, if it is not, it will populate the error message
* [CLDN-1205] Fixed the if statement that checks to see if the string_value is in the valid range of port numbers. It did not corrently verify this before now.
* [CLDN-1205] Fixed an error where it was trying to use string_value in <= statements. I just casted string_value to an integer if it is numeric, which allows <= operators to be used on it
* [CLDN-1207] Added unit tests for the cidr_func and port_translation_func functions which are located in /superset/config.py
* [CLDN-1207] removed the assertRaises line as it does not work with the cidr_func and port_translation_func functions
* [CLDN-1207] Added the skeleton of the test_cidr_translate_filter_func unit test, still need to update what the expected response from the function will be.
* [CLDN-1207] Added the remainder of the back-end unit tests for the business types
* [CLDN-1207] Fixed the syntax error which caused the test_cidr_translate_filter_func_NOT_IN_double unit test to fail
* [CLDN-1207] Removed the logging that was added for debugging purposes
* [CLDN-1207] Formatted the commands_tests.py file to make it nicer to look at/read through
* [CLDN-1207] Fixed the code so that it conformed to the pylint requirements (i.e., pylint no longer complains about the code in commands_tests.py)
* [CLDN-1207] Modified some of the docstrings so they made better use of the 100 character per line, line limit
* [CLDN-1207] Added the beginnings of the unit tests for the
business types API
* [CLDN-1207] Added a comment to the top of the commands_tests.py file explaining how to run the unit tests. This prevents the next person who tries to run them from having to waste time trying the different forms of testing that Superset supports (e.g., pytest, tox, etc.)
* [CLDN-1207] Added a grammar fix to the comments describing how to run the unit tests
* [CLDN-1207] Modified the description of the business_type API endpoints as they did not represent what the API was actually doing
* [CLDN-1207] Added further instructions on how to run the unit tests that are within the business_type/api_tests.py file
* add request validation
* disable request if business type missing
* [CLDN-1207] Unit tests for the business type API are now working, however, they need to be modified to make use of @mock as we don't want to have to run the server to be able to run the unit tests
* Removing businesss types deffinitons from config
* Adding select to only show valid business types
* Fixed Enzyme tests
* Added scalfolding for selecting filter dropdown
* Adding intigration tests
* fix revision
* fix typos and unnecessary requests
* break out useBusinessTypes
* Added front-end RTL unit tests for the business type API endpoint
* Fixed error from unit tests
* Added a unit test to ensure the operator list is updated after a business type API response is received
* Removing elect compoenet for business types
* Adding feature flag and allowing saving when no business type present
* fixing useEffect hooks
* Adding feature flag to model
* Changing behavior such that an empty string returns a default response
* add form validation
* Modified comments in unit test as command to run test has changed
* Modified comments in unit test as filename to run test has changed
* Modified the api_tests.py file to conform to the linting requirements
* Changed the name of one of the tests to reflect what the test is actually testing
* Added cypress back to the package.json
* Added informative comments
* Updated comments in files as well as removed imports which were not being used
* Changes made by npm run prettier
* Fixed spelling mistakes
* Updated models.py to remove placeholder comments used in development
* Added feature flag mocking in unit test
* Fixing open api failure
* Fixing business types to pass unit tests
* Reverting unsafe connections back to false
* Removing print statement
* Adding business tpye to export test
* setting default feature flag to false for business type
* Reverting pre commit
* Reverting pre commit and running pre commit
* Reverting pre commit and running pre commit
* Fixing formatting
* Adding license
* Fixing Linting
* Protecting api enpoints
* updating model
* Fixing code path when business type exists
* Linting
* Linting
* Fixing linting
* Fixing spelling
* Fixing schemas
* Fixing app import
* fixing item render
* Added RTL test to make sure business type operator list is updated after API response
* Fixing linting
* fix migration
* Changing unit tests
* Fixing import and DB migration after rebase
* Renaming to advanced types
* Fixing Linting
* More renaming
* Removing uneeded change
* Fixing linting and test errors
* Removing unused imports
* linting
* Adding more detailed name for migration
* Moving files to plugins
* more renaming
* Fixing schema name
* Disabling feature flag that should not be enabled by default
* Adding extra cehck
* NameChange
* formatting
* Fixing equals check
* Moveing all advanced type classes and types to one file, and converting tests to functional
* Adding advanced type to test and fix linitng
Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
Co-authored-by: Dan Parent <daniel.parent@cse-cst.gc.ca>
Co-authored-by: GITHUB_USERNAME <EMAIL>
Co-authored-by: cccs-Dustin <96579982+cccs-Dustin@users.noreply.github.com>
* feat(explore): Show confirmation modal if user exits Explore without saving changes
* Fix calling cleanup func unnecessarily
* Fix comparing AdhocMetric instance with JSON object
* Replace sliceFormData with the initial form data
* fix(chart & filters): make to padding between textarea and buttons
* fix(chart & filters): make to change static pixel to them.gridUnit
* fix(chart & filters): make to fix lint issue
* feat: deprecate /superset/validate_sql_json migrate to api v1
* use new error handling
* migrate SQLLAb frontend and add tests
* debug test
* debug test
* fix frontend test on sqllab
* fix tests
* fix frontend test on sqllab
* fix tests
* fix tests
* fix tests
* fix tests
* fix(chart & table): make to allow highlight in case of numeric column
* fix(chart & table): make to use emitFilter directly
* fix(chart & table): make to use styled component instead of inline style
* remove druid datasource from the config
* remove config related references to DruidDatasource
* Update __init__.py
* Update __init__.py
* Update manager.py
* remove config related references to DruidDatasource
* raise if instance type is not valid
* feat: deprecate /superset/extra_table_metadata migrate to api v1
* use can_read to table_extra_metadata
* troubleshoot sqlite
* fix test
* fix test
* fix test
* fix frontend test on sqllab
* feat: get user roles endpoint
* add tests
* fix test
* get user with permission and roles with full user
* frontend
* type juggling
* the hash slinging slasher
* user reducer and action
* make it happy
* result
* lint
Co-authored-by: Lily Kuang <lily@preset.io>
* fix(column-header-tooltip): make that hide the tooltip when the cloumn header is turncated
* fix(column-header-tooltip): fix lint
* fix(column-header-tooltip): make to dynamic tooltip header in FilterTable
* fix(column-header-tooltip): make to fix the lint issue
* fix(column-header-tooltip): make to remove the tooltip option
* fix(column-header-tooltip): make to add test and storybook for dynamic tooltip
* fix(column-header-tooltip): make to fix lint
* refactor and add new test
* fix lint
* fix fail test
* fix front end error
* fix frontend error
* fix fail test for front end check
* add native filter helper
* more changes
* seperated test for different state
* seperated tests by initail state
* fix failure
* one more fix
* enable test
* fix(dashboard-css): make to load saved css template
* fix(dashboard-css): make to update state css with componentDidMount
* fix(dashobard-css): make to inject custom css after updateCss
* fix(dashboard-css): make to add RTL for custom css
* fix(dashboard-css): make to fix lint issue
* fix(db & connection): make to show/hide the password when only creating db connection
* fix(db & connection): make to fix unit test of Database Modal
* fix(chart & explore): make to show label of slidercontrol
* fix(chart & explore): make to update SliderControl props
* fix(chart & explore): make to fix lint
* fix(explore): make to show the null value as N/A in view result
* fix(explore): make to remove console
* fix(explore): make to remove console in Cell
* fix(explore): make to translate N/A
* fix(import): make to add the error alert
* fix(import): make to add licence
* fix(import): make to create ErrorAlert component and use errorMessage spelling
* feat: add empty states to sqlab editor and select
* add suggestions and test
* update type
* lint fix and add suggestions
* fix typo
* run lint
* remove unused code
* fix test
* remove redux for propagation and other suggestions
* add t
* lint
* fix text and remove code
* ts and fix t in p
* fix spelling
* remove unused prop
* add fn to prop change state
* remove unused code
* remove unused types
* update code and test
* fix lint
* fix ts
* update ts
* add type export and fix test
* Update superset-frontend/src/SqlLab/components/SqlEditorLeftBar/index.tsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Update superset-frontend/src/SqlLab/components/SqlEditorLeftBar/index.tsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Update superset-frontend/src/SqlLab/components/SqlEditorLeftBar/index.tsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Update superset-frontend/src/SqlLab/components/SqlEditorLeftBar/index.tsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* remove handlerror and unused code
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* initial approach
To have consistent behaviour when creating a new tab with ctrl+t
* consistent behaviour when creating tabs
* fixed bug and added tests
* updates to pass checks
* feat(explore): Move save button to header, run button to bottom of control panel
* Make the tabs sticky
* Add error icon to Data tab
* Show message when creating chart and all controls are filled correctly
* Add tests and storybook
* Fix tests
* Disable save button when control have errors
* Fix types
* Apply code review comments
* Replace styled with css
* Remove unused import
* rebase
* more progress
* Fix unintended changes
* DB import goes to step 3
* debugging
* DB list refreshing properly
* import screens flowing properly
* Code cleanup
* Fixed back button on import flow
* Remove import db tooltip test
* Fix test
* Password field resets properly
* Changed import modal state dictators and removed unneeded comment
* Removed unneeded param pass and corrected modal spelling
* Fixed typos
* Changed file to fileList
* Clarified import footer comment
* Cleaned passwordNeededField and confirmOverwriteField state checks
* debugging
* Import state flow fixed
* Removed unneeded importModal check in unreachable area
* Fixed import db footer behavior when pressing back on step 2
* Import db button now at 14px
* Removed animation from import db button
* Fixed doble-loading successToast
* Fixed errored import behavior
* Updated import password check info box text
* Connect button disables while importing db is loading
* Connect button disables while overwrite confirmation is still needed
* Connect button disables while password confirmation is still needed
* Removed gray line under upload filename
* Hide trashcan icon on import filename
* Modal scroll behavior fixed for importing filename
* Changed errored to failed
* RTL testing for db import
* feat: deprecate old API and create new API for dashes created by me
* add tests
* fix previous test
* fix test and lint
* fix sqlite test
* fix lint
* fix lint
* lint
* fix tests
* fix tests
* use dashboards get list instead
* clean unnecessary marshmallow schema
* Update superset/views/core.py
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
* lint
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
* Enhance style with theme vars
* Update superset-frontend/plugins/legacy-plugin-chart-chord/src/ReactChord.jsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Remove TimeTable less
* Remove className
* Update superset-frontend/src/visualizations/TimeTable/TimeTable.jsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Move chart header to top of the page
* Implement truncating and dynamic input
* fix typing
* Prevent cmd+z undoing changes when not in edit mode
* Fix tests, add missing types
* Show changed title in altered
* 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
* feat(dashboard): Implement empty states in empty tabs
* Change button to in text link
* Add edit dashboard button to dashboard empty state
* Add tests
* Fix test
* feat(explore): Move chart actions to a dropdown menu
* Fix tests and add some new ones
* Add background color to embed code button
* Fix cypress tests
* Move copy permalink to actions menu
* Remove unused function
* Move share by email above embed code
* Fix test
* Fix test
* Fix test
* Fix test
* Fix test
* fix(dashboard): make to show the correct owned objects
* fix(dashboard): make to filter is reusable
* fix(homepage): make sure the type Array<Filters>
* fix(homepage): make to display dashboard correctly by owners
* embedded dashboard model
* embedded dashboard endpoints
* DRY up using the with_dashboard decorator elsewhere
* wip
* check feature flags and permissions
* wip
* sdk
* urls
* dao option for id column
* got it working
* Update superset/embedded/view.py
* use the curator check
* put back old endpoint, for now
* allow access by either embedded.uuid or dashboard.id
* keep the old endpoint around, for the time being
* openapi
* lint
* lint
* lint
* test stuff
* lint, test
* typo
* Update superset-frontend/src/embedded/index.tsx
* Update superset-frontend/src/embedded/index.tsx
* fix tests
* bump sdk
* wip
* Add eslint custom plugin
* Refactor
* Clean up
* Update superset-frontend/buildtools/eslint-plugin-theme-colors/index.js
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Refactor
* Update superset-frontend/buildtools/eslint-plugin-theme-colors/index.js
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Clean up
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* fix(report-add): make to add error toast message when already attached report is added again into dashboard or chart
* fix(export-add): make to setup the default error message
* fix(report-add): make to allow the errorMessage undefined in LabeledErrorBoundInput component
* 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
* fix(dashboard): make to show the correct owned objects
* fix(dashboard): make to filter is reusable
* fix(homepage): make sure the type Array<Filters>
* 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
* fix: allow to select <NULL> in a native filter single mode
* fix lint issue
* Update superset-frontend/src/components/Select/utils.ts
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* fix
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* Empty states updated on result tab and query history tab
* Testing on query history blank state
* Testing on result tab with empty state
* Forgot to remove a comment
* Corrected empty state image size and centered with drag bar
* Centered blank states vertically
* 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...
* fix(chartviz): make to allow the custome of x & y axis title margin in chart
* fix(chartviz): add eslint radix error in chart.js
* fix(chartviz): change the transformProps in chart plugin & creat helper.
* fix(chartviz): lint fix & chart.js back
* fix(plugin-chart-echarts): make to allow the custom margin of X & y axis in BoxPlot & Mixedtimeseries charts
* fix(plugin-chart-echarts): make to change changeNumber to changeInteger
* fix(plugin-chart-echarts): make to add license & change file name
* fix(altered-modal): make all text fields wrap
* fix(altered-modal): limit the wrap text in particular column
* fix(altered-modal): make to update the unit test
* fix(altered-modal): make to fix the type of columnsForWrapText
* fix(alerted-modal): make to fix the type of columnsForWrapTest with string type
* fix: display null values in time-series table and sortable
* add unit test
* fix unit test
* Add sortNumericValues with different nan treatment
Co-authored-by: Jesse Yang <jesse.yang@airbnb.com>
* wip
* add force cahce bypass option to alerts
* remove default for alerts to bypass cache
* save for now
* save for now
* fix
* commenting out for now
* fix linting
* remove link
* add back force id test
* add frontend test
* address
* Added in code changes that now properly increment the Untitled Query SQL Lab tab names. All that is left is to add tests to make sure that the function works correctly
* Updated the code so that it adds to the untitled_query_numbers variable only if the character after the string 'Untitled Query ' is a number. This prevents any issues when trying to get the maximum value in the list.
* Refactored part of the mapping code, to make it shorter and easier to read/understand
* Fixed issues in the code that were causing some of the CI tests to fail
* Made code changes based on comments within the PR. Also added a unit test to make sure that the newQueryEditor function in the TabbedSqlEditors component works as intended
* Fixed the failing cypress test in tabs.test.js
* converted file to functional component
* refactor: convert class component to functional component
* refactor: convert class component to functional"
* Working on converting the shouldCheckForQueries test to RTL
* Working on converting first test to RTL
* Working on first test for queryAutoRefresh
* Finished Tests, pushing for review
* Cleaned up comments and console logs
Co-authored-by: Josue Lugaro <josuelugaro15@gmail.com>
* Empty SQL table message on zero tabs
* sql editor no editor tab bug fix
* Revert Error message
* empty state tab state
* added a unit test
* addressed reviews
* kasia feedback
Co-authored-by: Yahya Kayani <yahyakiani1@gmail.com>
* chore: add intersect method from be to font end
* fix lint
* add suggestion
* fix python test
* run precommit
* fix pytlint
* update changes from masters
* more data nav menu
* fix lint and fix nav css
* update test and remove icons
* Update superset-frontend/src/views/components/Menu.test.tsx
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>
* Apply suggestions from code review
* use backend app.link to show new nav changes
* fix lint
* update test
* usetheme and remove chaining
* add more suggestions
* fix lint
* working global db connection
* add allowed extensions to bootstrap and hard code links
* remove backend links
* fix test
* apply stashed gsheets
* fix check for google sheets
* setup gsheets
* add extensions to frontend conf
* fix test and add be changes
* remove package json changes
* test is python test passes
* update python test and reremove app links
* fix tslint issues
* fix other linting tools
* fix pylint
* fix test
* fix
* refactor
* fix lint
* working fixed test
* clean up test
* address concerns
* address concerns
* change to tenarary
Co-authored-by: Phillip Kelley-Dotson <pkelleydotson@yahoo.com>
* fix(15849): Removed the tooltip from CopyToClipboard button in sqllab
* chore(sqllab): added props for tooltip in CopyToClipboard component
* fix(sqllab): Added arg to storybook and refactor the component
* fix(sqllab): added a test case for hideTooltip
* fix(delete-modal): Changed the color of the help text with grayScale.dark1 in DeleteModal
* Update superset-frontend/src/components/DeleteModal/index.tsx
Co-authored-by: Evan Rusackas <evan@preset.io>
* more data nav menu
* fix lint and fix nav css
* update test and remove icons
* Update superset-frontend/src/views/components/Menu.test.tsx
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>
* Apply suggestions from code review
* use backend app.link to show new nav changes
* fix lint
* update test
* usetheme and remove chaining
* add more suggestions
* fix lint
* add allowed extensions to bootstrap and hard code links
* remove backend links
* fix test
* add extensions to frontend conf
* fix test and add be changes
* test is python test passes
* update python test and reremove app links
* fix ts and add t's
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>
* fix errors with rison and useQueryParams
* add test for encode/decode
* add rison link and make test case more readable
Co-authored-by: Corbin Robb <corbin@Corbins-MacBook-Pro.local>
* add sorting for query results grid and add natural order sort
* modify tests for natural/original order state
* clean up setState
Co-authored-by: Corbin Robb <corbin@Corbins-MacBook-Pro.local>
* feat(dashboard): Implement empty states for dashboard
* Add empty state to native filters
* Add missing license
* Remove redundant string types from EmptyState
* chore: fix misspelling of button
* changed QuerySearch/index.jsx to index.tsx
* updated Query type at src/SqlLab/types.ts/Query and extended it into QueryTable
* updated defaultQueryLimit to be optional at ResultSetProps of superset-frontend/src/SqlLab/components/ResultSet/index.tsx
* moved statusAttributes into useMemo hook so that it will not make the dependencies of useMemo Hook change on every render and statusAttributes is only used within useMomo hook
* reset package-lock.json and package.json at frontend
* Acquired redux rootestate type for SqlLab, to be used at useSelector(state)
* updated query to be Query type and added a comment for q.status on line 178
* updated queryTable for typescript conversion
* updated actions type on QueryHistory and QuerySearch
* updated type for actions in SouthPane
* created type for SqlLab redux
Co-authored-by: David Woolner <davidwoolner@gmail.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
* feat(explore): Allow using time formatter on temporal columns in data table
* Fix data table loading
* Return colnames and coltypes from results request
* Fix types
* Fix tests
* Fix copy button
* Fix df is none
* Fix test
* Address comments
* Move useTimeFormattedColumns out of useTableColumns
* Make reducer more readable
* chore: fix misspelling of button
* Feat: Update ExploreCtasResultsButton to functional component
* Fix pull request
* Fix index.tsx
* Fix prettier issues and actions
* Streamline the onClick so it calls visualize directly
* Update MSP and MDP to arrow functions
* Test destructured props
* Fix props destructuring error
* Simplify with optional chaining on line 94 and clean up buildVizOptions
Co-authored-by: David Woolner <davidwoolner@gmail.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
* feat(explore): Keep or reset chart config after datasource change
* Update copy
* Remove useDispatch
* fix test
* Fix bugs
* Remove ts ignore
* Scroll top when datasource changes
* Fix crashing when switching viz type
* fix: Explore long URL problem
* Fixes lint problems
* Fixes default value
* Removes duplicated test
* Fixes share menu items
* Fixes tests
* Debounces form_data updates
* Rewrites debounce function
* Moves history update outside the functional component
* Mocks lodash function in tests
* Fixes Cypress test
* Fixes Cypress test #2
* Creating draft PR to address bug
* Still working on solving re rendering bug
* Cleaning up in preparation for push
* Starting conversion to TypeScript
* Working on conversion
* Continued working on typescript conversion, referenced other files for different types, still a rough version of final product
* Added type assertion to actions in props, and added types to some component functions
* Progress on typescript conversion
* Fixed typing issue on collapseStyles
* Fixed styling on div, child of StyledScrollbarContainer
* Attempting to address issues with the actions passed into the TableElement
* Resolved typescript warning on actions of the TableElement component
* Made changes suggested by Arash
* Tested the component without dbId, cleaned up lingering comments
* Made more changes suggested by Arash, removed offline from the SqlEditorLeftBarProps interface
* Made change suggested by Hugh
* Changed the expanded type from any to boolean
* 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(explore): add toasts feedback when user copies chart url
* Show toast message when updating chart properties
* Change toast type to success when saving chart
* Use success toast from props
* Fix tests
* Use withToasts instead of dispatch
* Use PropertiesModalProps instead of any
* Working on converting sqleditorleftbar to functional component
* Creating draft PR to address bug
* Still working on solving re rendering bug
* infinite rerender fix
* Creating draft PR to address bug
* Cleaning up in preparation for push
* Made changes suggested by Elizabeth
* Fixed issues as per Lindsey's comment
Co-authored-by: Arash <arash.afghahi@gmail.com>
* a lot of console logs
* testing
* test
* added saved_query to remoteId
* created useEffect so that title properly changes in modal
* Update superset-frontend/src/SqlLab/actions/sqlLab.js
Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com>
* 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>
* chart
* index and number-format
* char-composition and color
* connection
* dimension and math-expression
* models
* query
* time-format
* residual modules
* change config of jest and eslint
config
* wip
update package.json
* fix lint
* WithLegend import from superset-ui/core
* fix: fix update slug name
* Update superset-frontend/src/dashboard/components/nativeFilters/FilterBar/index.tsx
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>