* Implement saved metrics
* Fix bug in sql editor
* Fix unit tests
* Fix outlines in popovers
* Add types for saved metrics
* Add translations
* Move savedMetricType to a separate file
* update to datsource tab
* second update
* style updates
* update style and fix metrics bug
* updates to datsource panel
* backgrounds and borders
* more updates
* shuffling some paddings around
* more updates
* moving some more paddings around!
* Fixing sidebar width
* using Global to adjust body layout
* update test and fix bug
* removing hotkeys
* layout fixes for short content, simplifying some class names
* more styles
* add tooltip to collapse and div clickable
* more updates
* more updates for styles and add list component
* update from comments
* vising cosmetic issue with line-wrapping drop down caret on controls sections
* controls area scrolling properly again.
* change lists to old list and updates from comments
* border radius from theme
* add length field and updates from comments
* more changes from comments
* integrate health with new control
* change callapse back from stylsheet more udpates
* substitution string
* more substitution strings
* fix tests
* datasource alignment
* taking margin off the search input
* update input to flex
* fix lint
* adjusting column/metric label stylng
* fixing scrollable area layout, one more color variable
* simplifying some styles
* nixing a bad left margin
* Using gridunit for padding
* using gridUnit for padding
* define types for datsource panel
* fixing a padding issue
Co-authored-by: Evan Rusackas <evan@preset.io>
* Changed security permissions for annotations and annotation layers
* Updated permissions in annotation layers list
* Created test for retrieving premissions info. Updated uris from f-strings to strings
* Updated annotations in security_tests and added annotations to NEW_SECURITY_CONVERGE_VIEWS
* Added migration for annotations security converge
* Updated current revision after rebase master
* Updated migration name to annotations security converge
* Updated annotations permissions names in AnnotationLayersList and updated test since 'can_write' has wider permissions
* Updated annotations migration to current
* Migrate react-select to Antd select in Metrics popover
* Fix tests
* Migrate react-select to Antd select in Filters popover
* Migrate SelectControl to Antd Select
* Add label with number of options left
* feat: add hook for dataset health check
* add event log
* optimize datasource json data like certified data
* add unit test
* fix review comments
* extra code review comments
* Removes hard coded colors
Removes hard coded colors defined in src/components/styles.ts. The colors defined in this file were used only in the Select component so they were migrated to src/components/Select/styles.tsx and ajusted to conform to the theme colors.
* Use theme context for Select styles
* Includes Theme Provider in tests with Select
* upgrade redux and react-redux, adjust types
* first round of test fixes
* fix rest of unit tests
* lint
Co-authored-by: Phillip Kelley-Dotson <pkelleydotson@yahoo.com>
* create boiler modal component
* hello world modal
* setup modal flow
* setup savemodal for components
* flake8
* fix onclick reference
* working create datasource boiler
* saving spot for callback on text input
* working dataset with input box
* working redirect on completion
* get data for owners dropdown
* fix build with pull from master
* fix the filteroption
* 💯
* move state to upper component
* add overwrite state
* hacked overwrite process
* linting
* fix filter
* cleaning up the coe
* Delete preset.code-workspace
* remove unused code
* remove visualize
* update default value
* remove unneeded vars
* checkout package-lock.json
* linting
* get user id
* remove page filter
* setup proper call for updating columns in dataset
* add move to explore flow
* linting
* add param for overriding columns
* linting
* change title
* fix some tings
* cleanup
* linting
* add types in some places
* save toast
* use moment
* add error toast
* create enum for radio states
* initial state for saving query
* add tpying
* addressing concerns
* update propTypes
* add functionality for CTAS explor btn
* handle CTAS state
* fix onclick to reference upper level component
* formatting
* reset state after closing
* add error message when user doesn't pick an already selected dataset
* remove unneeded todo
* remove styling
* move async calls to api directory
* remove console.log
* add user id param
* typing
* littty
* move put to seperate file
* save
* dsf
* fix typing errors
* adding more types
* fix typing erros
* linting
* add basic spec test
* create dataset modal
* add components reference
* Rename SaveDatasetModal_spec.jsx to SaveDatasetModal_spec.tsx
* remove sinon for now
* fix typing errors on modal files
* fix linting
* address comments
* attempt to fix linting
* add props
* fix test
* fix the linting
* yerp
* fix this references
* spaces
* handleOverwriteCancel reference cleanup
* rename bool value for shouldOverwriteDataset
* fix typing for onChange
* you still the best in the world
* fix spec
* align branches
* push
* fix key names
* fix dataset reference
* lowercase
* fix save bug with tiem
* fixed styling
* fix date state after push to explore
* add disabling states
* plz refactor this
* this is working fully now
* do some renaming
* renaming
* remove console.logs
* still refactoring
* remove unneeded code
* remove unneeded variables
* still cleaning
* added interface
* fix typing issues
* cleanup unused code
* fix npm lnit
* fix initial problems
* add props to test
* remove unneeded files
* skip linting
* saving
* this works
* remove old test
* remove old test
* fix linting
* fix broken test
* remove jsx file
* refactoring
* cleanup
* remove comments
* reset user object
* fix functions
* fix this
* reverting CTAS btn flow
* remove onclick
* save frontend work
* allow for database id to be passed as param in body
* use enum
* fix linting
* style alignment
* get rid of .then
* add function to compute default value with tiem
* lit
* remove ts-error
* fix typing
* Upgrade react-split
* Implement split on ExploreChartPanel
* Implement tabs with collapse
* Fix run query button
* Fix copy to clipboard button
* Move table controls to separate file
* Make component more generic to handle samples
* Remove samples from DisplayQueryButton
* Move data tables to separate file
* Make split dynamically controlled
* Fix unit test
* Fix arrow not centered
* fixup! Fix arrow not centered
* Change copy button paddings
* Use translations
* Fix grammar in a comment
* Fix imports
* Use grid units
* Convert new files to typescript
* Fix after rebase
* Remove forceRender
* Fix big_number test
* Delay making request until panel is opened
* White background in south panel
* fixup! White background in south panel
* Lint fix
* Lint fix
* Remove redundant prop types
* Remove console log
* Delay loading samples until user switches tab
* Add debounce to filter input
* Use gridUnit for gutter sizes
* Change types object to Record<string, any>
* fix (dataset editor) add read-only mode for Source tab
* add feature flag, add unit tests
* rebase and fix comment
* add message for padlock
* move padlock to the bottom of tab
* feat(saved queries): security perm simplification
* migration script and frontend
* add downgrade procedure
* downgrade procedure, inferred from the upgrade data
* fix JS test
* improve code
* add tests for role migration
* more tests and a short description for each one
* Improve readability
* simplify dataclass creation
* fix dataclass
* Refactor tooltip in ColumnElement
* Refactor tooltip for Button
* Remove redundant import
* Refactor tooltip in SqlEditor
* Increase line height in tooltip so that the text is centered
* Refactor tooltip in Link
* Refactor tooltip in AdhocMetricEditPopoverTitle
* Refactor tooltip from ControlHeader
* Refactor tooltip in DateFilterControl
* Refactor tooltip in VizTypeControl
* fixup! Refactor tooltip in AdhocMetricEditPopoverTitle
* Refactor tooltip in QueryAndSaveBtns
* fixup! Refactor tooltip in DateFilterControl
* Refactor tooltip in CopyToClipboard, fix cursor pointer
* Refactor tooltip in TooltipWrapper
* Refactor tooltip in Field/DatasourceEditor
* Remove redundant import
* Fix typing for placement prop
* Decrease margin in ColumnElement divider
* Change default export to named
* Move SqlLab Tooltip styles to Emotion
* Fix tests
* Fix paste not working in Metrics and Filter inputs
* Use noOp instead of empty function
* Use default Select component instead of OnPasteSelect
* Revert onPaste override
* Remove MenuItem from CopyToClipboard
* Refactor DateFilterControl
* fixup! Remove MenuItem from CopyToClipboard
* Remove console log
* Refactor LanguagePicker
* Refactor HeaderActionsDropdown
* Remove dir with Menu component
* Add imports to common/components/index
* Fix after rebase
* Refactor Dialogs in dashboard properties modal
* Refactor Dialogs in explore properties modal
* Refactor dialogs in DatasourceModal
* Refactor dialogs in ExploreResultsButton
* Remove react-bootstrap-dialog from ExploreCtasResultsButton
* Remove react-bootstrap-dialog dependency
* Remove unnecessary functions from Modal
* Bump antd version to fix a bug
* Fix unit tests
* Fix e2e test
* Change antd version to 4.5.4 to fix tests
* Reenable all tests in control
* Another version bump to fix tests
* Fix spaces and comas not working in filter popover
* Fix popup not opening automatically
* Add e2e test
* Remove only from test
* Remove redundant test, add checking label content
* Add comments to e2e test
* Fix unit test
* Use destructuring
* Always open popup for functions and saved metrics, too
* Fix popover for adhoc metrics too
* Small refactor to consistency
* Refactor for consistency
* Remove redundant functions
* Test fix
Co-authored-by: Jesse Yang <jesse.yang@airbnb.com>
* toggleSchedule
* cleaning up run query button
* removing unnecessary (subtle!) style overrides
* bulk action classname to button style prop
* nixing btn-primary
* nixing cancelQuery class
* togglesave
* nixing autocomplete class
* linting
* nixing button classes of 'ok' and 'reset'
* unoing diagnostic test
* begrudgingly adding an m-r-3 class... for now
* this is not a class to worry about
* test fixes for limit control
* updating TODO notes, calling it a day for now.
* gah... copy paste error.
* use conditional operator for lookup
* editing dashboard title should update after save
* uncomment test
* fix json metadata save
* json metadata color scheme should overwrite state
* test's functionality is no longer applicable
* add lastModifiedTime to DashboardInfo
* 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
* 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
* 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>
* 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
* 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
* 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!
* 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.
* 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>
* 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
* 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>
* 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
* 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
* 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.
* 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
* 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
* [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>
* 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>
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
* 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
* refactor(frontend): move utils to typescript (#9101)
* refactor(frontend): don't export interfaces
* test(frontend): update types and test for isValidChild
* 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
* 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
* 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>
* 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>
* improve history for query params
* fix: push browser history on pagination in react listviews
* fix spec
Co-authored-by: Tai Dupree <tdupreetan@gmail.com>