* wip -- add modal component using ember-wormhole, add static content but still need to enable onClose
* add onClose to modal
* WIP
* add copy and close button
* add copy and close button
* and copy and close button to modal
* use modal on each key action page
* make text copied text more generic
* update datakey textareas to codemirror
* only show user input on encrypt and decrypt
* only show user input on all key actions
* separate copy ciphertext, plaintext, and close button on datakey modal
* style ciphertext and plaintext as code
* only show separate copy buttons on datakey modal if both outputs are shown
* update modal styling
* style modal
* add descriptions to each key action
* remove conditional from hmac modal since we only ever show hmac output
* add modal for export key action
* make output scroll horizontally with copy button next to it
* make output scroll horizontally with copy button next to it
* escape & in copy and close button, format text output so it scrolls horizontally
* fix formatting of key action descriptions
* Ui/add transit modal tests (#8523)
* Fix tests for updated transit with modals workflow
* WIP // remove box shadow from key actions descriptions
* WIP // flash messages on successful action match mocks
* WIP // remove ciphertext view after datakey created
* WIP // make flash messages when copy & closing less generic, and match copy flash message
* WIP // Optionally show close button on modal, with tests
* remove unused deps from modal test
* WIP // Fix verify modal styling and content
* Add modal for sign action
* Fix output of non-wrapped export key
* Fix output of non-wrapped export key
* Add description to JSDOCS about modal component
* Add help text about plaintext encoded in base64
* add flash msgs for datakey and export
* flash success msg when closing modal on export page
* clarify sign success msg
* address PR feedback
* add indentation for export key json
* Fix modal tests pt 2
* Remove decode after decrypt in transit tests
Co-authored-by: Chelsea Shaw <chelshaw.dev@gmail.com>
* move manage and add refresh action
* move title of current namespace
* finish menu redesign
* conditionally hide or show manage namespaces
* fix quotes
* Update transit versions list styling and add ability to copy public key from dropdown menu for asymmetric key types
* Cursor is default if list item row has no destination
* add core usage metrics components to storybook, rename component from small to simple
* remove const from js file
* remove grid container knob from selectable-card
* add placeholder for Key actions tab
* navigate to key items by default
* add placeholder key actions list page
* remove extra whitespace from component blueprint
* add SelectableCard
* move key actions from side nav to top nav
* make tabs active
* remove toolbar from key actions pages
* add divs to link to each key action on key actions page
* move preview-head to gitignore
* use selectable card css
* remove key actions
* use css grid
* update selectable card styling
* update Key Actions page header
* make cards clickable
* refactor supportedActions to include glyph
* make header black on hover
* rename selectable-card transit card and update styling
* add description and glyph for other key types
* use human readable titles for key action names
* update tests; still need to fix failing ones
* use datakey instead of data-key
* fix some failing tests
* fix more tests
* remove extra chevron from rotate button
* remove whitespace
* remove pauseTest
* use rename export to export key in the template instead of the model
* fix last few failing tests
* WIP
* link to key actions page by default
* test for transit action title
* only add query params when viewing a transit secret
* update structure icons
* add missing structure icons
* resolve merge conflicts from rebase
* use filter and map for supported actions
* only add query params for transit secrets
* Core usage metrics v1 (merge to side-branch) (#8238)
* restructure menu layout per designs
* setup new routing that will set the stage for a metrics landing page
* fix formatting
* Revert "fix formatting"
This reverts commit e77cdec5e58cdcea49aa1b97f80238433c4f7d1e.
* fix formatting
* small styling changes
* change request routing to metrics
* rename route js file
* Core usage metrics v2 (#8263)
* restructure menu layout per designs
* setup new routing that will set the stage for a metrics landing page
* fix formatting
* Revert "fix formatting"
This reverts commit e77cdec5e58cdcea49aa1b97f80238433c4f7d1e.
* fix formatting
* small styling changes
* change request routing to metrics
* rename route js file
* setup selectable card component and api request
* add token and http request models to route and template
* add entities to route and template
* clean up
* add breadcrumbs and some clean up work
* remove unused selectable-card component
* refactor to a serializer
* move adapters, serializers, and models into metrics folder
* remove unused file
* address pr comments
* address pr comments
* Core Usage Metrics V3 (#8316)
* restructure menu layout per designs
* setup new routing that will set the stage for a metrics landing page
* fix formatting
* Revert "fix formatting"
This reverts commit e77cdec5e58cdcea49aa1b97f80238433c4f7d1e.
* fix formatting
* small styling changes
* change request routing to metrics
* rename route js file
* setup selectable card component and api request
* add token and http request models to route and template
* add entities to route and template
* clean up
* add breadcrumbs and some clean up work
* remove unused selectable-card component
* setup smaller http request bar chart
* refactor to a serializer
* move adapters, serializers, and models into metrics folder
* remove unused file
* setup change part of component
* fix broken model
* add conditional class
* setting up computed properties in new component
* small fixes
* setup components
* minor fixes
* rename
* clean up
* firefox fix
* remove shadow bars
* move out of metrics folders
* modify permissions to show difference between token entities and requests
* make tests
* fix class names and associated tests
* clean up
* fix text overflow in non-chrome browsers
* address pr comments, specifically class names and tests
* move into one component
* clean up component descriptions in comments
* small wording changes
* fix for accessibility
* address pr comments around component examples for storybook
* fix test
* fix failing test
* fix test
* fix bug where users couldn't click on update primary
* don't show status menu items when cluster isSecondary since those links don't work
* show the mode of replication in the status menu
* do not show server header in status menu when the contents are empty
* show Disaster Recovery instead of 'DR'
* do not show http metrics in status menu unless user is authenticated
* fix typo so icons in status menu show
* rename mount-filter-config models, components, serializer, adapters to path-filter-config
* move search-select component to core addon
* add js class for search-select-placeholder and sort out power-select deps for moving to the core component
* expose oninput from powerselect through search-select
* don't fetch mounts in the replication routes
* remove toggle from add template
* start cross-namespace fetching
* group options and set up for namespace fetch via power-select search prop
* add and style up radio-card CSS component
* add xlm size for icons between l and xl
* copy defaults so they're not getting mutated
* finalize cross-namespace fetching and getting that to work with power-select
* when passing options but no models, format the options in search select so that they render properly in the list
* tint the background of a selected radio card
* default to null mode and uniq options in search-select
* finish styling radio-card
* format inputValues when first rendering the component if options are being passed from outside
* treat mode:null as deleting existing config which simplifies save logic
* correctly prune the auto complete list since path-filter-config-list handles all of that and finish styling
* remove old component
* add search debounce and fix linting
* update search-select docs
* updating tests
* support grouped options for when to show the create prompt
* update and add tests for path-filter-config-list
* fix tests for search-select and path-filter-config-list
* the new api uses allow/deny instead of whitelist/blacklist
* add storage route
* template out the routes and new raft storage overview
* fetch raft config and add new server model
* pngcrush the favicon
* add view components and binary-file component
* add form-save-buttons component
* adjust rawRequest so that it can send a request body and returns the response on errors
* hook up restore
* rename binary-file to file-to-array-buffer
* add ember-service-worker
* use forked version of ember-service-worker for now
* scope the service worker to a single endpoint
* show both download buttons for now
* add service worker download with a fallback to JS in-mem download
* add remove peer functionality
* lint go file
* add storage-type to the cluster and node models
* update edit for to take a cancel action
* separate out a css table styles to be used by http-requests-table and on the raft-overview component
* add raft-join adapter, model, component and use on the init page
* fix styling and gate the menu item on the cluster using raft storage
* style tweaks to the raft-join component
* fix linting
* add form-save-buttons component to storybook
* add cancel functionality for backup uploads, and add a success message for successful uploads
* add component tests
* add filesize.js
* add filesize and modified date to file-to-array-buffer
* fix linting
* fix server section showing in the cluster nav
* don't use babel transforms in service worker lib because we don't want 2 copies of babel polyfill
* add file-to-array-buffer to storybook
* add comments and use removeObjectURL to raft-storage-overview
* update alert-banner markdown
* messaging change for upload alert banner
* Update ui/app/templates/components/raft-storage-restore.hbs
Co-Authored-By: Joshua Ogle <joshua@joshuaogle.com>
* more comments
* actually render the label if passed and update stories with knobs
* add initial Confirm component to secrets list page
* use ember-wormholes to render confirmation message
* use maybe-in-element instead of ember-wormhole
* hide overlay initially
* animate confirm overlay left and right on click
* hide overlay in the DOM to properly set height
* adjust height when showing/hiding confirm-overlay
* disable confirmation buttons until trigger has been rendered
* adjust height of confirm-wrapper instead of confirm
* move Confirm/ to core
* only add style attribute when a height property exists
* fix indentation
* wip - use new Confirm inside status menu
* add Confirm to Storybook
* ensure confirm links have proper styling in Storybook and outside popup-menu
* fix height transition
* disable no-inline-styles
* add test selector
* remove comment
* consolidate Message into Trigger to make Confirm easier to use
* use new Trigger API in status menu
* remove height transition
* fix binding inline style warning
* rename confirmMessage to message
* update Confirm for Storybook
* fix indentation
* do not pass in onCancel from outer template because it is static
* add jsdoc comments to Trigger
* wip - add trigger and confirm to storybook
* fix status menu styling
* fix styling of confirm stories
* use new Confirm on secrets engine list
* use bulma speed variable
* fix indentation
* re-renable eslint no-inline-styles
* showConfirm when rendered trigger matches id
* fix background color on namespace picker
* do not expose onTrigger
* Revert "re-renable eslint no-inline-styles"
This reverts commit c7b2a9097f177a2876afaaec6020f73b07bad3c7.
* rename Confirm Trigger to Message
* add tests
* update JSDocs
* focus trigger after cancelling the confirm message
* update Confirm JSDocs
* differentiate between ConfirmAction and Confirm
* add Message to Storybook
* re-enable eslint import/extensions
* update confirmButtonText to Revoke token
* remove linebreak and extra whitespace
* fix typo
* add loading to empty button
* fix more typos
* only show Message contents when showConfirm is true
* no need to disable the confirm buttons since they only render in the DOM when showConfirm is true
* use Confirm to delete aws roles
* use Confirm to delete pki roles
* use Confirm to delete ssh roles
* add Confirm to entity alias page
* fix confirm button text on Revoke token in status menu
* ensure you can use tab to revoke a token from status menu
* reset the open trigger after the confirm has been confirmed
* use Confirm on identity list pages
* fix Disable engine confirmation text
* use <PopupMenu /> angle brack syntax
* use Confirm on policies list page
* use Confirm for namespaces
* use Confirm for kmip scopes
* use Confirm for deleting kmip roles
* use Confirm for revoking KMIP credentials
* fix Revoke token triggerText
* be more specific about node version, and specify a yarn version
* update ember, ember-cli, ember-data, ember-data-model-fragments
* use router handlers to access transition information
* fix shadowing of component helper
* update ivy-codemirror, ember-cli-inject-live-reload
* remove custom router service
* don't use transition.queryParams
* update ember-cli-deprecation-workflow
* refactor kv v1 to use 'path' instead of 'id' on creation
* fix auth-jwt-test and toolbar-link-test
* update ember composable helpers
* remove Ember.copy from test file
* no more deprecations in the workflow
* fix more secret tests
* fix remaining failed tests
* move select component to core because it's used by ttl-picker
* generate new model class for each test instead of reusing an existing one
* fix selectors on kmip tests
* refactor how control groups construct urls from the new transition objects
* add router service override back in, and have it be evented so that we can trigger router events on it
* move stories and markdown files to core if the component lives in core
* update ember-cli, ember-cli-babel, ember-auto-import
* update base64js, date-fns, deepmerge, codemirror, broccoli-asset-rev
* update linting rules
* fix test selectors
* update ember-api-actions, ember-concurrency, ember-load-initializers, escape-string-regexp, normalize.css, prettier-eslint-cli, jsdoc-to-markdown
* remove test-results dir
* update base64js, ember-cli-clipboard, ember-cli-sass, ember-cli-string-helpers, ember-cli-template-lint, ember-cli-uglify, ember-link-action
* fix linting
* run yarn install without restoring from cache
* refactor how tests are run and handle the vault server subprocess
* update makefile for new test task names
* update circle config to use the new yarn task
* fix writing the seal keys when starting the dev server
* remove optional deps from the lockfile
* don't ignore-optional on yarn install
* remove errant console.log
* update ember-basic-dropdown-hover, jsonlint, yargs-parser
* update ember-cli-flash
* add back optionalDeps
* update @babel/core@7.5.5, ember-basic-dropdown@1.1.3, eslint-plugin-ember@6.8.2
* update storybook to the latest release
* add a babel config with targets so that the ember babel plugin works properly
* update ember-resolver, move ember-cli-storybook to devDependencies
* revert normalize.css upgrade
* silence fetchadapter warning for now
* exclude 3rd party array helper now that ember includes one
* fix switch and entity lookup styling
* only add -root suffix if it's not in versions mode
* make sure drop always has an array on the aws role form
* fix labels like we did with the backport
* update eslintignore
* update the yarn version in the docker build file
* update eslint ignore
* fix switch css
* allow breadcrumbs container to grow if it's overflowed so that it's still usable
* close the dropdowns on destructive actions that cause a route refresh
* use new attachCapabilities for context menus on auth methods to get rid of an error
* add SelectDropdown
* use SelectDropdown instead of HttpRequestsDropdown
* use html selector instead of class name
* ensure SelectDropdown still works when rendered inside a Toolbar
* add tests
* remove old HttpRequests component
* make SelectDropdown example easier to read in Storybook
* add isFullwidth prop
* add SelectDropbown inside a Toolbar story
* fix tests
* remove actions block and call this.onChange directly
* replace dropdownLabel with label
* rename SelectDropdown to SelecT
* add test for onChange
* remove selectedItem prop since we don't need it
* make Select accept options as an array of strings or objects
* Revert "remove selectedItem prop since we don't need it"
This reverts commit 7278516de87bb1df60482edb005137252819931e.
* use Select inside TtlPicker
* remove debugger
* use a test selector
* fix pki test selectors
* improve storybook docs
* fix selected value in ttl picker
* ensure httprequests dropdown updates the selected item
* ensure select dropdown correctly matches selectedItem
* rename selectedItem to selectedValue
* remove debugger lol
* update selectedItem test
* add valueAttribute and labelAttribute to Storybook knobs
* udpate jsdocs
* remove old httprequestsdropdown component
* add note that onChange will receive value of select
* use Select inside AuthForm
* use correct test selector
* always use ?force for kmip scope delete
* update the delete message when deleting a scope
* support disabling and not showing help text for checkboxes
* group TLS fields and render new allowed operations widget
* add operation-field-display component for kmip roles
* use operation-field-display component
* switch glyph for false value in info-table-row
* divvy up roles and tls
* fix JSDoc - showHelpText defaults to true
* fix tests and linting
* rename vars in operation-field-display component
* make the action name clearer re: what it's actually doing
* align the allowed-ops header
* show all operations as checked if you check to allow all
* init dropdown
* add dropdown to storybook
* move http requests components into container
* add event handler for selecting new time window
* no need for this. in the template
* filter bar chart and table
* add bar chart transitions
* handle Last 12 Months in dropdown
* don't use fake data
* start tests
* add jsdoc and notes for storybook
* add container to storybook
* compute filteredCounters when counters change
* move static dropdown options to template
* add tests
* style the dropdown
* use this.elementId
* fix linting errors
* use ember array extensions
* use fillIn instead of page object and make dom assertions consistent
* calculate the correct percent change between months
* use data-test selector instead of id
* show plus or minus next to percent change
* open-api-explorer engine with embedded swagger-ui
* move swagger config to a component, rely directly on swagger-ui
* filter operations by endpoint, hook up filter to query param, add namespace handling
* fix namespace handling
* update ember-engines so that we can app.import in a lazy engine
* use engine's included hook to move swagger-ui to engine-vendor.* files
* show flash message about this being a live vault server
* show a namespace reminder and override some styles from swagger-ui
* switch filter to use includes instead of startsWith
* move flash-message to alert-banner and fix namespace reminder with a block
* adds explore web-cli command to navigate to the api-explorer engine
* allow passing a preformatted string to flash messages
* add multi-line flash-message to api explorer
* invert control and trigger events on react app so we can control the layout more and use our components
* tweak styling some more and adjust message on the flash
* change web cli command from 'explore' to 'api'
* shorten namespace warning
* fix console
* fix comments
* initialize tooltip
* style tooltip
* show date in tooltip
* show tooltip on hover
* style tooltip
* add hover padding for when bar is very short
* add tooltip test and format tooltip date
* revert to using real data
* update comment about binding the tooltip to shadowBars
* remove d3array
* use double colons for pseudo elements
* use elementId in bars-container id name to prevent clashing
* use Object.freeze to eliminate linting error
* extend edit form with a custom kmip role form
* adjust model fields and use new kmip role edit form
* customize serialize adapter hook for kmip/role
* refresh list routes in the list mixin
* style up kmip role edit form
* return a promise from preSave so that the queue helper waits to call save
* add serialize tests for the kmip/role adapter
* rename component to edit-form-kmip-role
* add tests for edit-form-kmip-role
* add some clarifying comments
* make input more realistic in tests
* remove delete toolbar
* Add http request volume table (#6765)
* init http metrics page
* remove flex-table-column
* add http requests table
* calculate percent change between each counter
* start percent change tests
* style request table
* show percent more/less glyph
* add percent more less tests
* add inline alert about recorded metrics
* make arrows diagonal
* remove conditional inside countersWithChange
* add better error msg
* use tagName and wrapping element a la glimmer components
* extend ClusterRouteBase so auth and seal checks happen
* make table accessible
* remove curlies
* add HttpRequestsTable to storybook
* make table accessible
* use qunit dom for better assertions
* remove EmptyState since we will never have 0 requests
* ensure counters is set in test context
* Http request volume/add barchart (#6814)
* Add http request volume table (#6765)
* init http metrics page
* remove flex-table-column
* add http requests table
* calculate percent change between each counter
* start percent change tests
* style request table
* show percent more/less glyph
* add percent more less tests
* add inline alert about recorded metrics
* make arrows diagonal
* remove conditional inside countersWithChange
* add better error msg
* use tagName and wrapping element a la glimmer components
* extend ClusterRouteBase so auth and seal checks happen
* make table accessible
* remove curlies
* add HttpRequestsTable to storybook
* make table accessible
* use qunit dom for better assertions
* remove EmptyState since we will never have 0 requests
* ensure counters is set in test context
* add http-requests-bar-chart
* add HttpRequestsBarChart tests
* add HttpRequestsBarChart to Storybook
* format total number of requests according to locale
* do not show extra minus sign when percent change is negative
* add link to request metrics in status bar menu
* only show bar chart if we have data for more than 1 month
* make ticks lighter
* ensure charts show data for correct month
* make example counters response look like the adapter response instead of the raw api response
* ensure ui shows the same utc date as the api response
* add format-utc tests
* downgrade to d3 v4 to support ie11
* add gridlines
* move dasharray to css
* use scheduleOnce instead of debounce to prevent multiple re-renders
* add key function to bars
* add exit case when data is no longer in parsedCounters
* fix timestamp in table test
* fix timestamps
* use utcParse and fallback to isoParse for non-UTC dates
* fix bar chart tests
* fix default rendering of svg and allow plugins access to mount tune form
* add auth-jwt component
* add callback route, and allow it to be navigated to on load
* add jwt as a supported auth method
* use auth-jwt component and implement intial oidc flow
* allow wrapping un-authed requests
* pass redirect_url and properly redirect with the wrapped token
* popup for login
* center popup window and move to localStorage events for cross window communication because of IE11
* access window via a getter on the auth-form component
* show OIDC provider name on the button
* fetch default role on render of the auth-jwt component
* simplify auth-form template
* style callback page
* refetch auth_url when path changes for auth-jwt component
* fix glimmer error on alias metadata, and add back popup-metadata component
* fix link in metadata page
* add logo-edition component and remove use of partial for logo svg
* render oidc callback template on the loading page if we're going there
* add docs icon and change timeout on the auth form
* move OIDC auth specific things to auth-jwt component
* start to add branded buttons for OIDC providers
* add google button
* finish branded buttons
* update glyph for error messages
* update tests for auth screen not showing tabs, add adapter tests and new auth jwt tests
* start auth-jwt tests
* simplify auth-jwt
* remove negative top margin on AlertInline
* only preventDefault if there's an event
* fill out tests
* sort out some naming
* feedback on templates and styles
* clear error when starting OIDC auth and call for new auth_url
* also allow 'oidc' as the auth method type
* handle namespaces with OIDC auth
* review feedback
* use new getters in popup-metadata
* check for capabilities when finding matching paths
* disable wizard items that user does not have access to
* make hasPermissions accept an array of capabilities
* refactor features-selection
* fix tests
* implement feedback
* add permissions service
* start template helper
* match prefixed paths
* gate sidebar links
* land on first page user has access to
* show nav when user first logs in
* clear paths when user logs out
* add tests
* implement feedback
* show all nav items if no policy is found
* update onboarding wizard
* fix some unrelated tests
* add support for namespaces
* gate wizard
* unstage package and lockfile
* remove ember-cli-favicon
* link to png favicon in public folder
* skip some things in the build depending on the env
* update to ember-cli 3.5.0 for broccoli 2, and ember-fetch because it was incompatible with broccoli 2
* update some things the new sass module wasn't happy about
* turn off more things in dev to make the build faster
* bump to the latest ember-cli and move back to node-sass
* remove sass since we're using node-sass
* include polyfill in test as well
* use the OTP that the server provides instead of generating one in the JS client
* fix button styling
* differentiate between OTP and encoded token and encrypted token in the template