* Move tsconfig.json to root dir
At the moment, it looks like the TS language server has problems with
recognizing imports when editing files inside e/web.
I figured this is probably because tsconfig.json is in web, so the lang
server doesn't recognize it when editing files from e/web.
* Remove web/Dockerfile and web/Makefile
* Misc updates to readme
* Fix links in readme
* Mention Teleport Connect in the README
Also, make a better distinction about which sections are Web UI related.
* Update the command for copying protogen files
This way you don't have to leave the webapps dir when developing Connect.
* adding desktopPOC player
* updates to proper playback test websocket endpoint
* Changes EventQuery to take an EventCode in order to facilitate more comprehensible typing for AuditService.fetchEvents. Updates RecordingsService to use the general events search endpoint in order to easily add DESKTOP_SESSION_ENDED events to the response alongside regular [ssh] SESSION_END events.
* Adds logic for distinguishing between session types and displaying appropriate icon
* Deleting DesktopPlayerPOC which should not have been on this branch
* Breaks the handling of the two types of end events passed into makeRecording into two separate functions. Also types RecordingDescription
* touchups
* yarn tsc fixes
* updates storybook
* updating snapshot
* removing unused import
* adds skeleton for distinguishing between ssh and desktop recordings
* Testing connection of the playerClient
* Puts TdpClientCanvas into the DesktopPlayer
* adds toggle to PlayerClient
* small fixes
* adds an onerror to proxyServer so that websocket closures don't shut down the webpack-dev-server
* updates to match backend
* shifting preventDefaults out of TdpClientCanvas since that isn't always desired (for example with the desktop player)
* Adds a ProgressBarDesktop component and makes it respond to the new PlayerClientEvent.TOGGLE_PLAY_PAUSE event emitted by the PlayerClient
* Adds support for decoding client screen spec and using it to determine canvas size during playback. requires some code cleanup
* Some significant refactoring, DesktopSession and DesktopPlayer now both up to par in terms of function. Requires further refactoring for storybook.
* fixes storybook
* fixes codec test
* fixing build warnings
* reverts audit log changes
* removes unused type Region
* decodes the jsons that are now sent over websocket
* replace fqdm with fqdn
* Stops re-adding TOGGLE_PLAY_PAUSE listener each rerender and adds cleanup for that listener
* Make naming more precise
* removing unnecessary logging and fixing a type
* adding todo
* makes recordingType the more appropriate query param
* change let to const
* tiny fixes
* reverting
* The progress bar now moves with the recording timing
* Makes the rest of TdpClientCanvas props optional and wraps relevant logic in relevant if statements where necessary. Gets rid of ugly doNothing
* fixes event listener cleanup
* removes unnecessary prop
* Adds standard error handling display and a storybook for it
* moving detailed TODO to an issue
* changing toHuman to remove brittle reliance on iso string
* removes base64-arraybuffer, refactors base64url.ts into the more general base64.ts and uses it for base64 to array buffer translation
* fixes Storybook
* fixes validDurationMs
* Copies in base64url-arraybuffer library and modifies it for our purposes
* putting import statements in their proper place
* removes (preview) from desktop titles
* adds a hook for confirming the clipboard permissions are either granted or denied
* Moves Base64urlString type to where its needed
* removes DS_Store
* addresses code review
* simplifies and fixes durationMs logic
* adds clipboard to acl
* moves the teleport ctx init() call to the context provider, to ensure that consumers always have an initiated context
* Updates useClipboard and adds clipboard state management to DesktopSession
* Adds clipboard message
* adds code for sending local clipboard to remote over TDP
* adds clipboard decoding and syncronization with the local clipboard
* removes deprecated encodeClipboard
* Updates Main story to account for possibility of TeleportContextProvider processing the ctx.init() or ctx.init() failing
* Updates test to use new context provider
* fixes existing storybooks
* Simplifies DesktopSession rendering logic and adds a test for clipboard error
* Adds test based on storybook
* fixing comments and errors
* renaming to uppercase, apparently vscode rename didn't do the job previously
* Reverts TeleportContextProvider changes, removes teleport context from DesktopSession
* Major updates to useClipboard and dependent logic
* making useClipboard hook local to DesktopSession
* removes hasError by saying that an empty string for errorText means no error
* Fixes storybook
* simplifies error alert jsx and adds an additional test for unknown connection failure
* fixes the fact that the user was prompted for clipboard permissions even if the role had clipboard sharing disabled
* making styled component and updating snapshot
* Adds handling of the desktopSessionRecording flag to the acl and fixes the clipboard flag in the acl
* fixes the actual clipboard sharing which had been broken by changing recording to a useState variable in useDesktopSession.tsx
* code cosmetics
* CR cosmetic changes
* Adds extra check to onClipboardData
* changes allowedHosts to all since this allows for easier development of mfa stuff
* refactors useWebauthn to be generalizeable
* updating client
* fixes test
* integrates mfa challenge into DesktopSession
* fixing tests
* renaming
* cleanup from CR
* Gives all the props passed in to TdpClientCanvas their own useEffect so listeners are updated when those passed functions change. This allowed me to remove the gross useRef in useTdpClientCanvas
* small fixes and updates snapshot
* fixes useWebAuthn scope
* fixes story
* emit an error when u2f is tried
* CR and updates README with information about setting up MFA development
* turning magic numbers into constants
* New Top Nav (#136)
* Moves AuthConnectors/TrustedClusters/Roles to the Dashboard Top Nav
* Add feature to allow user in context to perform operations on other users (#137)
* Added List/Create/Update/Delete/Reset user functionality
* Added enterprise api endpoint to OSS config
Co-authored-by: Alexey Kontsevoy <biz.kovoy@gmail.com>
* Fix handling of feature flags (#138)
* Prevent closing when there is an error with deleting user (#142)
* Alexey/v5nav (#155)
* Touch Ups (#157)
* Create a story for Teleport App (#158)
* Add Application Launcher (AAP) (#162)
* use publicAddr and clusterName URL parameters to launch apps. (#169)
* Update sideNav styles and ssh input box (#170)
* [teleport] Implement add node dialog (#165)
* [teleport] Change NodeJoinToken prop expires to expiry (#176)
* Remove empty state from NodesList (#179)
* [teleport] Add -f flag to add node curl command (#180)
* [teleport] Add app session chunk and start events (#181)
* Add Application Dialog
* Delete Force
Co-authored-by: Lisa Kim <lisa@gravitational.com>
* Simplify and clean up Makefile
* Update Makefile
This fixes the `test` command and deploys assets to Teleport
* Update Makefile
don't print as much
* Update enterprise paths
* Don't archive artifacts anymore
* Stop removing `dist` before building
* Explicitly push to a branch on origin
* Update Makefile
initialize teleport submodules after cloning
* Remove build artifacts, such as teleport
* Fetch submodule updates before updating
* Address CR comments
Co-authored-by: Pierre Beaucamp <pierre@gravitational.com>
* Remove existing dist directories
* Update Makefile to deploy assets to seperate repo
* Split asset delivery over two repositories
* Update e reference
* Use a special 'builder' user inside Dockerfile
* Revert "Use a special 'builder' user inside Dockerfile"
This reverts commit 5e72f48ff9364109bce99ec40a56311ae4264891.
* Fix a bug regarding git branches
* Use older git cli options for compatibility with Jenkins
* Stop resetting the branch after checkout
* Further git cli adjustments
* Add test command to Makefile
* Add Jenkinsfile for PR workflow
* Add comments to Makefile, include gravity & force artifacts
* Update README
* Adjust makefile to run even without e submodule
* Fix unit-test errors
* Archive build artifacts on Jenkins
* Adjust Jenkinsfile syntax
* Update e ref
* Update Jenkinsfile
* Update Jenkinsfile
* Update Jenkinsfile
clean directory before checkout
* Update Jenkinsfile
de-init submodules before checkout
* Update Jenkinsfile
* Update Jenkinsfile
* Update Jenkinsfile
* Fix syntax error in make file