* Add PlainButton
* refactor close icons
* reorder import
* refactor remaining anchors
* refactor: replace remaining <button> and TODOs
* refactor: changed applicable elements to type link
* fix: minor details
* bug: fix tooltip ternary
* refactor: improve interactivity and semantics of schema list item
useEffect() doesn't run until _after_ the component renders. Before the
hook runs, the value of `groups` === []. And this is passed to
<DynamicForm>'s `initialValue` prop. The `initialValue` is not re-evaluated
after useEffect() completes. So the users groups are never updated.
This change pulls the user's current groups from `user` prop on the
page.
* feature: add external link
* refactor: split external link into own component
* refactor: added link with icon
* refactor: remove reduntant tab index
* refactor: simplify props
* refactor: fix types
* refactor: bring types and components together
* refactor: improve treatment of target
* add Corporate Memory Runner based on cmempy 21.2.3
* fix code style
* apply some code nice ups
* use extendedEnum, boolean and extra_options for schema description
* use lower case sorting for data source types list
This correctly orders data source names which starts with lower
chars (such as eccenca Corporate Memory)
* add missing dblogo
* Added screen reader CSS
* Added description to external links
* Added spinner icon accessibility
* Added accessibility to exclamation and big message
* Added question and exclamation accessibility
* Hide decorative icons
* Standardized link design
* Added a11y to refresh icons
* Added aria-label to anchors and buttons
* Added a11y to conditional icons
* Added applicable labels to Ant Icons
* Changed escape to interpolation
* Replaced external links with opens in new tab
* Improved Tooltip hosts
* Added aria live to temporary elements
* Removed mistakenly added redundant helper
* Undoes unnecessarily added interpolation
* Replaced empty label with hidden
* Improved full icon label
* Improved display of live regions
* Added note
* remove unused class
* Created unique id
* Remove TODOs
* Proper action label
* Improved feedback for autocomplete toggle
* feature: add id hook
* refactor: use id hook
* standardize white space
* Add styles for focused ant menus
* Add disabled styles to clickable button
* Improved dashboard header syntax and added focus
* Improved CSS syntax
* Add interactive styles
* Improved anchor dependent styles
* Improved styles of widget (gray more/delete btns)
* Add interactive style for favorite star
* Improved style of delete btn
* Make table content fill all space
* Added focus and active styles
* Scoped query snippets list
* Fixed behavior for all major browsers
* Replaced button styles with plain button
* Scoped items list styles
* Added focus styles to ant table
* Add plain button (#5419)
* Minor syntax improvements
* Refactor of Link component (#5418)
* Fixed jsx-a11y problems
* Changed tabIndex to type number
* Initial improvements to DesktopNavbar accessibility
* Added accessibility to favorites list
* Improved accessibility in Desktop Navbar
* Improvements in Desktop navbar semantics
* Added aria roles to tags list
* Fixed tabindex type
* Improved aria labels in query control dropdown
* Added tab for help trigger close button
* Fixed typo
* Improved accessibility in query selector
* Changed resizable role to separator
* Added label to empty state close button
* Removed redundant and mistaken roles
* Used semantic components
* Removed tabIndex from anchor tags
* Removed mistakenly set menuitem role from anchors
* Removed tabIndex from Link components
* Removed improper hidden aria label from icon
* Reverted button and link roles in anchors for minimal merge conflicts
* Replaced alt attr with aria-label for icons
* Removed redundant menu role
* Improved accessibility of CodeBlock
* Removed improper role from schema browser
* Reverted favorites list to div
* Removed improper presentation role in query snippets
* Tracked changes for further PR
* Revert "Improved accessibility of CodeBlock"
* Add aria-labelledby to the associated code labels
This reverts commit 00a1685b1b37ad1ad5770880f9653dbd06d2cf3f.
* Wrapped close icon into button
* Add My Dashboards filter option to the Dashboards list. Added API endpoint to get the list of a user's dashboards, similar to the My Queries feature.
* Update empty dashboard list state to show an invite to create a new dashboard, like My Queries
* Update to Levko's suggested approach. Clean up some of the formatting for consistency. Put the 'My Queries/Dashboards' item before the Favorites since that organization seems cleaner to me.
* Address Levko's comments
* fixed QueryBasedParamterInput optionFilterProp
* added optionFilterProp fallback for SelectWithVirtualScroll
* simplified syntax
* removed optionFilterProp from QueryBasedParameterInput.jsx
Co-authored-by: Gabriel Dutra <nesk.frz@gmail.com>
* restricted SelectWithVirtualScroll props
* Added e2e test for parameter filters
* moved filter assertion to more suitable place
* created helper for option filter prop assertion
* moved option filter prop assertion to proper place, added result update assertion
* refactor openAndSearchAntdDropdown helper
* Fix parameter_spec
Co-authored-by: Gabriel Dutra <nesk.frz@gmail.com>
* Change front-end and data model for SAML2 auth - static configuration
* Add changes to use inline metadata.
* add switch for static and dynamic SAML configurations
* Fixed config of backend static/dynamic to match UI
* add ability to encrypt/decrypt SAML assertions with pem and crt files. Upgraded to pysaml2 6.1.0 to mitigate signature mismatch during decryption
* remove print debug statement
* Use utility to find xmlsec binary for encryption, formatting saml_auth module
* format SAML Javascript, revert want_signed_response to pre-PR value
* pysaml2's entityid should point to the sp, not the idp
* add logging for entityid for validation
* use mustache_render instead of string formatting. put all static logic into static branch
* move mustache template for inline saml metadata to the global level
* Incorporate SAML type with Enabled setting
* Update client/app/pages/settings/components/AuthSettings/SAMLSettings.jsx
Co-authored-by: Gabriel Dutra <nesk.frz@gmail.com>
Co-authored-by: Chad Chen <chad.chen@databricks.com>
Co-authored-by: Gabriel Dutra <nesk.frz@gmail.com>
* Extra actions for Query View and Query Source pages
* Convert Queries List page to functional component
* Convert Dashboards List page to functional component
* Extra actions for Query List page
* Extra actions for Dashboard List page
* Extra actions for Dashboard page
* Pass some extra data to Dashboard.HeaderExtra component
* CR1
* Directly map query results column to GeoJSON property
* Use cache for geoJson requests
* Don't handle bounds changes while loading geoJson data
* Choropleth: fix map "jumping" on load; don't save bounds if user didn't edit them; refine code a bit
* Improve cache
* Optimize Japan Perfectures map (remove irrelevant GeoJson properties)
* Improve getOptions for Choropleth; remove unused code
* Fix test
* Add US states map
* Convert USA map to Albers projection
* Allow to specify user-friendly field names for maps
* Ask user to log in when session expires
* Update implementation
* Update implementation
* Minor fix
* Update modal
* Do not intercept calls to api/session as Auth.requireSession() relies on it
* Refine code; adjust popup size and position
* expire CSRF tokens after 6 hours
* use axios' built-in cookie to header copy mechanism
* add axios-auth-refresh
* retry CSRF-related 400 errors by refreshing the cookie
* export the auth refresh interceptor to support ejecting it if neccessary
* reject the original request if it's unrelated to CSRF
* Convert TagsList to functional component
* Convert TagsList to typescript
* Allow to unselect all tags
* Add title to Tags block and explicit "clear filter" button
* Some tweaks
* add default limit 1000
* Add frontend changes and connect to backend
* Fix query hash because of default limit
* fix CircleCI test
* adjust for comment