Commit Graph
47 Commits
Author SHA1 Message Date
Ryan ClarkandRafał Cieślak d6fa030c0e Move import sorting over to prettier (#50618)
* Move import sorting over to prettier

* Update import order

* Re-run prettier

---------

Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
2025-01-02 13:36:46 +00:00
Brian Joerger 21cdf9e1d1 WebUI MFA types refactor (#49678)
* Unify mfa types.

* Move DeviceUsage to mfa/types.

* Refactor mfa options and move to services/mfa.

* Lint fix.

* Fix mfa challenge json.

* Add MFA Option constants.

* Fix lint; Fix test.

* Address comments.

* Add license.
2024-12-09 20:57:12 +00:00
39a636540c Bump the ui group across 1 directory with 58 updates (#49613)
* Bump the ui group across 1 directory with 58 updates

Bumps the ui group with 58 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@codemirror/autocomplete](https://github.com/codemirror/autocomplete) | `6.18.1` | `6.18.3` |
| [@codemirror/lang-sql](https://github.com/codemirror/lang-sql) | `6.7.1` | `6.8.0` |
| [@codemirror/view](https://github.com/codemirror/view) | `6.34.1` | `6.35.0` |
| [@grpc/grpc-js](https://github.com/grpc/grpc-node) | `1.11.3` | `1.12.2` |
| [@nivo/bar](https://github.com/plouc/nivo/tree/HEAD/packages/bar) | `0.87.0` | `0.88.0` |
| [@uiw/codemirror-themes](https://github.com/uiwjs/react-codemirror) | `4.23.3` | `4.23.6` |
| [@uiw/react-codemirror](https://github.com/uiwjs/react-codemirror) | `4.23.3` | `4.23.6` |
| [react-select](https://github.com/JedWatson/react-select) | `5.8.1` | `5.8.3` |
| [tslib](https://github.com/Microsoft/tslib) | `2.7.0` | `2.8.1` |
| [@storybook/addon-actions](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/actions) | `8.3.4` | `8.4.6` |
| [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/controls) | `8.3.4` | `8.4.6` |
| [@storybook/addon-toolbars](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/toolbars) | `8.3.4` | `8.4.6` |
| [@storybook/components](https://github.com/storybookjs/storybook/tree/HEAD/code/deprecated/components) | `8.3.4` | `8.4.6` |
| [@storybook/preview-api](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/preview-api) | `8.3.4` | `8.4.6` |
| [@storybook/react](https://github.com/storybookjs/storybook/tree/HEAD/code/renderers/react) | `8.3.4` | `8.4.6` |
| [@storybook/react-vite](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite) | `8.3.4` | `8.4.6` |
| [@storybook/test-runner](https://github.com/storybookjs/test-runner) | `0.19.1` | `0.20.0` |
| [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) | `6.5.0` | `6.6.3` |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) | `29.5.13` | `29.5.14` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `20.16.10` | `20.17.9` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `18.3.10` | `18.3.12` |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) | `18.3.0` | `18.3.1` |
| [msw](https://github.com/mswjs/msw) | `2.4.9` | `2.6.6` |
| [msw-storybook-addon](https://github.com/mswjs/msw-storybook-addon/tree/HEAD/packages/msw-addon) | `2.0.3` | `2.0.4` |
| [playwright](https://github.com/microsoft/playwright) | `1.47.2` | `1.49.0` |
| [prettier](https://github.com/prettier/prettier) | `3.3.3` | `3.4.1` |
| [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli) | `8.3.4` | `8.4.6` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.6.2` | `5.7.2` |
| [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) | `7.25.2` | `7.26.0` |
| [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) | `7.25.4` | `7.26.0` |
| [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) | `7.24.7` | `7.25.9` |
| [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) | `7.24.7` | `7.26.0` |
| [@swc/core](https://github.com/swc-project/swc) | `1.7.26` | `1.9.3` |
| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) | `3.7.1` | `3.7.2` |
| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.30.0` | `2.31.0` |
| [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) | `28.8.3` | `28.9.0` |
| [eslint-plugin-jest-dom](https://github.com/testing-library/eslint-plugin-jest-dom) | `5.4.0` | `5.5.0` |
| [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) | `7.37.0` | `7.37.2` |
| [jest-fail-on-console](https://github.com/ValentinH/jest-fail-on-console) | `3.3.0` | `3.3.1` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.12.2` | `8.16.0` |
| [vite-tsconfig-paths](https://github.com/aleclarson/vite-tsconfig-paths) | `5.0.1` | `5.1.3` |
| [@types/styled-system](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/styled-system) | `5.1.22` | `5.1.23` |
| [ace-builds](https://github.com/ajaxorg/ace-builds) | `1.36.2` | `1.36.5` |
| [@opentelemetry/context-zone](https://github.com/open-telemetry/opentelemetry-js) | `1.26.0` | `1.28.0` |
| [@opentelemetry/core](https://github.com/open-telemetry/opentelemetry-js) | `1.26.0` | `1.28.0` |
| [@opentelemetry/exporter-trace-otlp-http](https://github.com/open-telemetry/opentelemetry-js) | `0.53.0` | `0.55.0` |
| [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js) | `0.53.0` | `0.55.0` |
| [@opentelemetry/instrumentation-document-load](https://github.com/open-telemetry/opentelemetry-js-contrib) | `0.40.0` | `0.42.0` |
| [@opentelemetry/instrumentation-fetch](https://github.com/open-telemetry/opentelemetry-js) | `0.53.0` | `0.55.0` |
| [@opentelemetry/instrumentation-user-interaction](https://github.com/open-telemetry/opentelemetry-js-contrib) | `0.40.0` | `0.42.0` |
| [@opentelemetry/instrumentation-xml-http-request](https://github.com/open-telemetry/opentelemetry-js) | `0.53.0` | `0.55.0` |
| [@opentelemetry/propagator-b3](https://github.com/open-telemetry/opentelemetry-js) | `1.26.0` | `1.28.0` |
| [@opentelemetry/resources](https://github.com/open-telemetry/opentelemetry-js) | `1.26.0` | `1.28.0` |
| [@opentelemetry/sdk-trace-base](https://github.com/open-telemetry/opentelemetry-js) | `1.26.0` | `1.28.0` |
| [@opentelemetry/sdk-trace-web](https://github.com/open-telemetry/opentelemetry-js) | `1.26.0` | `1.28.0` |
| [@opentelemetry/semantic-conventions](https://github.com/open-telemetry/opentelemetry-js) | `1.27.0` | `1.28.0` |
| [winston](https://github.com/winstonjs/winston) | `3.14.2` | `3.17.0` |
| [zod-to-json-schema](https://github.com/StefanTerdell/zod-to-json-schema) | `3.23.3` | `3.23.5` |



Updates `@codemirror/autocomplete` from 6.18.1 to 6.18.3
- [Changelog](https://github.com/codemirror/autocomplete/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/autocomplete/compare/6.18.1...6.18.3)

Updates `@codemirror/lang-sql` from 6.7.1 to 6.8.0
- [Changelog](https://github.com/codemirror/lang-sql/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/lang-sql/compare/6.7.1...6.8.0)

Updates `@codemirror/view` from 6.34.1 to 6.35.0
- [Changelog](https://github.com/codemirror/view/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/view/compare/6.34.1...6.35.0)

Updates `@grpc/grpc-js` from 1.11.3 to 1.12.2
- [Release notes](https://github.com/grpc/grpc-node/releases)
- [Commits](https://github.com/grpc/grpc-node/compare/@grpc/grpc-js@1.11.3...@grpc/grpc-js@1.12.2)

Updates `@nivo/bar` from 0.87.0 to 0.88.0
- [Release notes](https://github.com/plouc/nivo/releases)
- [Changelog](https://github.com/plouc/nivo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plouc/nivo/commits/v0.88.0/packages/bar)

Updates `@uiw/codemirror-themes` from 4.23.3 to 4.23.6
- [Release notes](https://github.com/uiwjs/react-codemirror/releases)
- [Commits](https://github.com/uiwjs/react-codemirror/compare/v4.23.3...v4.23.6)

Updates `@uiw/react-codemirror` from 4.23.3 to 4.23.6
- [Release notes](https://github.com/uiwjs/react-codemirror/releases)
- [Commits](https://github.com/uiwjs/react-codemirror/compare/v4.23.3...v4.23.6)

Updates `react-select` from 5.8.1 to 5.8.3
- [Release notes](https://github.com/JedWatson/react-select/releases)
- [Changelog](https://github.com/JedWatson/react-select/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/JedWatson/react-select/compare/react-select@5.8.1...react-select@5.8.3)

Updates `tslib` from 2.7.0 to 2.8.1
- [Release notes](https://github.com/Microsoft/tslib/releases)
- [Commits](https://github.com/Microsoft/tslib/compare/v2.7.0...v2.8.1)

Updates `@storybook/addon-actions` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/addons/actions)

Updates `@storybook/addon-controls` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/addons/controls)

Updates `@storybook/addon-toolbars` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/addons/toolbars)

Updates `@storybook/components` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/deprecated/components)

Updates `@storybook/preview-api` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/lib/preview-api)

Updates `@storybook/react` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/renderers/react)

Updates `@storybook/react-vite` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/frameworks/react-vite)

Updates `@storybook/test-runner` from 0.19.1 to 0.20.0
- [Release notes](https://github.com/storybookjs/test-runner/releases)
- [Changelog](https://github.com/storybookjs/test-runner/blob/v0.20.0/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/test-runner/compare/v0.19.1...v0.20.0)

Updates `@testing-library/jest-dom` from 6.5.0 to 6.6.3
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testing-library/jest-dom/compare/v6.5.0...v6.6.3)

Updates `@types/jest` from 29.5.13 to 29.5.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

Updates `@types/node` from 20.16.10 to 20.17.9
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@types/react` from 18.3.10 to 18.3.12
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `@types/react-dom` from 18.3.0 to 18.3.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

Updates `msw` from 2.4.9 to 2.6.6
- [Release notes](https://github.com/mswjs/msw/releases)
- [Changelog](https://github.com/mswjs/msw/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mswjs/msw/compare/v2.4.9...v2.6.6)

Updates `msw-storybook-addon` from 2.0.3 to 2.0.4
- [Release notes](https://github.com/mswjs/msw-storybook-addon/releases)
- [Changelog](https://github.com/mswjs/msw-storybook-addon/blob/main/packages/msw-addon/CHANGELOG.md)
- [Commits](https://github.com/mswjs/msw-storybook-addon/commits/v2.0.4/packages/msw-addon)

Updates `playwright` from 1.47.2 to 1.49.0
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.47.2...v1.49.0)

Updates `prettier` from 3.3.3 to 3.4.1
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.3.3...3.4.1)

Updates `storybook` from 8.3.4 to 8.4.6
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.6/code/lib/cli)

Updates `typescript` from 5.6.2 to 5.7.2
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.2...v5.7.2)

Updates `@babel/core` from 7.25.2 to 7.26.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-core)

Updates `@babel/preset-env` from 7.25.4 to 7.26.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-preset-env)

Updates `@babel/preset-react` from 7.24.7 to 7.25.9
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.9/packages/babel-preset-react)

Updates `@babel/preset-typescript` from 7.24.7 to 7.26.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-preset-typescript)

Updates `@swc/core` from 1.7.26 to 1.9.3
- [Release notes](https://github.com/swc-project/swc/releases)
- [Changelog](https://github.com/swc-project/swc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/swc-project/swc/compare/v1.7.26...v1.9.3)

Updates `@vitejs/plugin-react-swc` from 3.7.1 to 3.7.2
- [Release notes](https://github.com/vitejs/vite-plugin-react-swc/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react-swc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react-swc/compare/v3.7.1...v3.7.2)

Updates `eslint-plugin-import` from 2.30.0 to 2.31.0
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0)

Updates `eslint-plugin-jest` from 28.8.3 to 28.9.0
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases)
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v28.8.3...v28.9.0)

Updates `eslint-plugin-jest-dom` from 5.4.0 to 5.5.0
- [Release notes](https://github.com/testing-library/eslint-plugin-jest-dom/releases)
- [Commits](https://github.com/testing-library/eslint-plugin-jest-dom/compare/v5.4.0...v5.5.0)

Updates `eslint-plugin-react` from 7.37.0 to 7.37.2
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.0...v7.37.2)

Updates `jest-fail-on-console` from 3.3.0 to 3.3.1
- [Release notes](https://github.com/ValentinH/jest-fail-on-console/releases)
- [Commits](https://github.com/ValentinH/jest-fail-on-console/compare/v3.3.0...v3.3.1)

Updates `typescript-eslint` from 8.12.2 to 8.16.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.16.0/packages/typescript-eslint)

Updates `vite-tsconfig-paths` from 5.0.1 to 5.1.3
- [Release notes](https://github.com/aleclarson/vite-tsconfig-paths/releases)
- [Commits](https://github.com/aleclarson/vite-tsconfig-paths/compare/v5.0.1...v5.1.3)

Updates `@types/styled-system` from 5.1.22 to 5.1.23
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/styled-system)

Updates `ace-builds` from 1.36.2 to 1.36.5
- [Release notes](https://github.com/ajaxorg/ace-builds/releases)
- [Changelog](https://github.com/ajaxorg/ace-builds/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ajaxorg/ace-builds/compare/v1.36.2...v1.36.5)

Updates `@opentelemetry/context-zone` from 1.26.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.26.0...v1.28.0)

Updates `@opentelemetry/core` from 1.26.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.26.0...v1.28.0)

Updates `@opentelemetry/exporter-trace-otlp-http` from 0.53.0 to 0.55.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/experimental/v0.53.0...experimental/v0.55.0)

Updates `@opentelemetry/instrumentation` from 0.53.0 to 0.55.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/experimental/v0.53.0...experimental/v0.55.0)

Updates `@opentelemetry/instrumentation-document-load` from 0.40.0 to 0.42.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/sql-common-v0.40.0...instrumentation-pg-v0.42.0)

Updates `@opentelemetry/instrumentation-fetch` from 0.53.0 to 0.55.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/experimental/v0.53.0...experimental/v0.55.0)

Updates `@opentelemetry/instrumentation-user-interaction` from 0.40.0 to 0.42.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/sql-common-v0.40.0...instrumentation-pg-v0.42.0)

Updates `@opentelemetry/instrumentation-xml-http-request` from 0.53.0 to 0.55.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/experimental/v0.53.0...experimental/v0.55.0)

Updates `@opentelemetry/propagator-b3` from 1.26.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.26.0...v1.28.0)

Updates `@opentelemetry/resources` from 1.26.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.26.0...v1.28.0)

Updates `@opentelemetry/sdk-trace-base` from 1.26.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.26.0...v1.28.0)

Updates `@opentelemetry/sdk-trace-web` from 1.26.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.26.0...v1.28.0)

Updates `@opentelemetry/semantic-conventions` from 1.27.0 to 1.28.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-js/compare/v1.27.0...v1.28.0)

Updates `winston` from 3.14.2 to 3.17.0
- [Release notes](https://github.com/winstonjs/winston/releases)
- [Changelog](https://github.com/winstonjs/winston/blob/master/CHANGELOG.md)
- [Commits](https://github.com/winstonjs/winston/compare/v3.14.2...v3.17.0)

Updates `zod-to-json-schema` from 3.23.3 to 3.23.5
- [Release notes](https://github.com/StefanTerdell/zod-to-json-schema/releases)
- [Changelog](https://github.com/StefanTerdell/zod-to-json-schema/blob/master/changelog.md)
- [Commits](https://github.com/StefanTerdell/zod-to-json-schema/commits)

---
updated-dependencies:
- dependency-name: "@codemirror/autocomplete"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: "@codemirror/lang-sql"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@codemirror/view"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@grpc/grpc-js"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@nivo/bar"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@uiw/codemirror-themes"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: "@uiw/react-codemirror"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: react-select
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: tslib
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/addon-actions"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/addon-controls"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/addon-toolbars"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/components"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/preview-api"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/react"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/react-vite"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@storybook/test-runner"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@testing-library/jest-dom"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: msw
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: msw-storybook-addon
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: playwright
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: storybook
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@babel/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@babel/preset-env"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@babel/preset-react"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@swc/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@vitejs/plugin-react-swc"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: eslint-plugin-import
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: eslint-plugin-jest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: eslint-plugin-jest-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: eslint-plugin-react
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: jest-fail-on-console
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: typescript-eslint
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: vite-tsconfig-paths
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@types/styled-system"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: ace-builds
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ui
- dependency-name: "@opentelemetry/context-zone"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/exporter-trace-otlp-http"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/instrumentation"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/instrumentation-document-load"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/instrumentation-fetch"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/instrumentation-user-interaction"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/instrumentation-xml-http-request"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/propagator-b3"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/resources"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/sdk-trace-base"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/sdk-trace-web"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: "@opentelemetry/semantic-conventions"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: winston
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ui
- dependency-name: zod-to-json-schema
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: ui
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add BroadcastChannel and TransformStream to patched JSDOM env

* Dedupe packages

* Get rid of @types/node@22.10.1 peer dep

First I added an override for @types/node set to ^20.17.9, ran pnpm i,
then I removed the override and ran pnpm i again.

* Cast `message` to `unknown[]`

* Accept `ArrayBufferLike` in `bufferToBase64url` and `arrayBufferToBase64` to make it work with `Uint8Array.buffer`

* Force nwsapi to 2.2.9 for JSDOM ^20.0.3

Co-authored-by: Bartosz Leper <bartosz.leper@goteleport.com>

* Remove override for cookie in @bundled-es-modules/cookie

This was done in #48200 and is no longer needed, since this package
now uses cookie 0.7.2 as a dep.

* Run prettier

* Allow license of prettier

It's MIT, but the check thinks it's "Apache-2.0 AND BSD-2-Clause AND
BSD-3-Clause AND ISC AND MIT".

https://github.com/prettier/prettier/blob/3.4.1/LICENSE

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
Co-authored-by: Grzegorz Zdunek <grzegorz.zdunek@goteleport.com>
Co-authored-by: Bartosz Leper <bartosz.leper@goteleport.com>
2024-12-03 16:32:48 +00:00
Edward Dowling 95b8489ab4 Add proto definitions and plugin spec Microsoft Teams no code integration (#46640)
* Add proto definitions for MsTeams no code integration

* Add access monitoring rule and hosted support to msteams plugin

* Fix linting

* Fix go sum mismatch caused by msteams dependency

* Fix linting in access monitoring rules
2024-11-04 14:46:23 +00:00
Lisa Kim 8044b98a0d Web: add support for requesting for kube namespaces (#47345) 2024-10-28 15:48:20 +00:00
Gavin Frazar c1f2896909 fix RDS Aurora enrollment security group tips (#47930) 2024-10-25 23:46:05 +00:00
Bartosz Leper 36b9df21d0 Add server access section to the role editor (#47253)
* Add a new role editor

So far, the editor only supports two fields, but it's a start.

* Review

* Specify default options in role editor

This allows us to switch back and forth between Standard and YAML editor
without resetting the model (at least for roles that have nothing more than
metadata, for now).

* Remove unnecessary console.log

* Remove freezeDeep; review

* Center the loading indicator

* Adding and removing role editor sections

* Add a server access section

* Fix broken import

* Fix lint and tests

* Review

* Licenses

* Review

* Drop the console statement

* Review

* lint

* Lint, once again
2024-10-15 10:21:14 +00:00
Bartosz Leper b8b844058b Specify default options in role editor (#47189)
* Add a new role editor

So far, the editor only supports two fields, but it's a start.

* Review

* Specify default options in role editor

This allows us to switch back and forth between Standard and YAML editor
without resetting the model (at least for roles that have nothing more than
metadata, for now).

* Remove unnecessary console.log

* Remove freezeDeep; review

* Center the loading indicator

* Fix broken import

* Review

* Drop the console statement

* Review
2024-10-09 17:19:35 +00:00
Rafał Cieślak 20c5848111 pluralize: Return plural noun when num is 0 (#44949) 2024-08-01 15:54:41 +00:00
Zac Bergquist fc9172b9b8 Fix code that has the old Apache 2 license (#44815)
Teleport OSS is licensed under AGPLv3 as of Teleport 15.
See https://goteleport.com/blog/teleport-oss-switches-to-agpl-v3/
2024-07-30 16:11:24 +00:00
Rafał Cieślak b58d3f9373 Display full list of DNS zones in VNet panel (#43195)
* Remove unused getCluster func from clusterConfigCache

* Make ClusterConfigCache public

* Improve warning when fetching leaf clusters for DNS setup

* Return AlreadyExists from VnetService.Start and handle it on frontend

* Implement VnetService.ListDNSZones

* Share ClusterConfigCache between lib/vnet and lib/teleterm

* Extract blink keyframes

* Add processing and warning status to ConnectionStatusIndicator

* Speed up slide animation for VNet panel

* Display DNS zones in VNet panel

* Show processing state on repeated calls only after delay

* Pass empty deps array to useEffect

* Return Promise<never> from usePromiseRejectedOnUnmount

* Add ellipsis to processing state copy

* MockedUnaryCall.then: Handle onrejected not being defined

I just copied stuff from the linked implementation of then.

* Fix mistake in comment for ListDNSZones
2024-06-20 18:45:21 +00:00
Grzegorz Zdunek 9a6c5dd2a5 Support requesting resources from the search bar (#42048)
* Ask for requestable resources in the search bar if the cluster allows showing them

* Show requestable resources in the list

* Add a resource to the request when the user selects it

* Do not a resource if it is already added

* Increase score for requestable resources, add a test

* Cancel button should clear the request

* Do not set `searchAsRoles`

* Reset the unified resources component when `rootCluster.showResources` changes

I noticed that sometimes the component stuck on 'No resources' screen.
It happens when the call for unified resources is done before cluster details are fetched.

* Block the call for `listUnifiedResources` when `showResources` is unspecified

* Move `waitForever` to `shared/utils`
2024-05-28 15:58:52 +00:00
Lisa Kim 3a88c153b5 WebDiscover: Add custom input fields for database test connection with wildcard (#40931)
* WebDiscover: Add custom input fields for database test connection with asterisks

* Add specific validation rule and add tests

* Update database fixture for testing
2024-05-08 00:58:03 +00:00
Lisa Kim 00d8addbfc Web: create js version of parsing string with double quotes and commas (#41086) 2024-05-01 17:05:26 +00:00
Grzegorz Zdunek 784d7ac10c Clone the tshd gRPC client to allow inspecting errors (#39229)
* Add functions to clone every gRPC method, so they can be passed over the context bridge

* Replace `@grpc/grpc-js` interceptors with `@protobuf-ts/runtime-rpc` ones

* Replace string check with check on metadata, add missing `AddMetadataToRetryableError`

* Add `pin` to sensitive properties

It's needed because now we also log a passwordless login stream call.

* Add `cloneClient` method to clone the entire gRPC client

* Switch tests to `TshdRetryableError`

* Improve comments

* Move `cloneClient` and `cloneAbortSignal` to the top of the file

* Simplify condition

* Lowercase logs

* Check if the error is `RpcError` using `instanceof`

* Log error object instead of `[object Object]`

* Do not export call specific types

* Wrap gRPC calls in `createClient` to allow passing the errors over the context bridge (#39230)

* Regenerate protos with the `protobuf-ts` client

* Enable `strictBindCallApply` so `.bind()` results have correct types (instead of `any`)

This is needed for wrapping calls in `createClient`.

* Use `protobuf-ts` client instead of `grpc-js` one

* Convert `createClient` to use `protobuf-ts` response style, clone each call

* Switch callsites to `cloneAbortSignal`

* Replace `error.message` checks with a proper check on the error status code

* Clone the entire client instead of each method separately

* Correct the error `cause` in `ResourceSearchError`

* Remove `params.sortBy` defaults, always set `startKey` to string

* Use a simpler type for `reportUsageEvent`

* Fix interceptor test

* Ignore TS error in `highbar.ts`
2024-03-18 16:33:16 +00:00
Rafał Cieślak 17e342b722 Improve handling of unrecognized documents in Connect (#38015)
* Serialize unhandled case to console

* getResourceUri: Return undefined for unhandled cases
2024-02-12 10:06:07 +00:00
matheus 8e941fe785 Add buttons to download and copy to clipboard content to TextEditor (#37333)
* Add editor buttons

* Set icon size

* Move downloadObject to OSS

* remove unused test-id

* Use values from theme

* Fix buttons positioning

* Convert jsx files to tsx

* Use const instead of var

* Add z-index to buttons

* Add license
2024-02-01 20:12:23 +00:00
Sakshyam Shah fd65f29d63 updates TextSelectCopyMulti to save content as file (#37232)
* feat: save content as file

* add min height to have consistent height on empty text

* run linter and update snapshot

* move download icon to the right of copy icon

* increase left padding when showing download icon

* accomodate vertical and horizontal scroller and icon button view

* move download function to shared utils

* rename downloadContentAsFile to saveOnDisk, unit test

* original style with increased padding for download icon
2024-01-31 02:12:29 +00:00
Bartosz Leper da1a97c8bf Rename "Hardware Key" to "Passkey or Security Key" (#36562)
* Rename "Hardware Key" to "Passkey or Hardware Key"

* Update snapshots

* On the second thought, rename these to "Passkey or Security Key"
2024-01-12 09:19:32 +00:00
caec5f35cf Ironrdp (#26874)
* adds ironrdp client and has it connect, alongside rdp-rs

* Integrates IronRDP client into the TDP png-response system. Instead of sending back chunks of the screen, its sends the full screen every time, and this is my running hypothesis for the current sticking point: a "Maximum call stack size exceeded" from the tdp client in the react app

* Changes arrayBufferToBase64 to use reduce, which fixes the "Maximum call stack size exceeded" bug

* removes convert_bgra_to_rgba which isn't needed with the bitmaps being produced by IronRDP

* Adds support for updating only a specific image region

* removes mistaken read_rdp_output_inner call from connect_rdp_inner

* Adds support for mouse input. I believe this code has race conditions for client.write_frame though this requires more research.

* Patches things up with the new IronRDP structure

Requires some modifications to IronRDP, see the corresponding commit hash
for IronRDP in lib/srv/desktop/rdp/rdpclient/Cargo.toml.

Started getting call stack overflows when manual testing again, but I'm
going to ignore those for now and focus on the version of this architecture
that passes the remoteFX encoded messages over TDP.

* Adds RemoteFX Frame to the backend

* Proof of concept for integrating a wasm module into the frontend

Building the wasm module still needs to be done manually, this was
just to get to a point where tools are configured and it can be successfully
called in both dev and prod modes.

Required that I comment out "default-src 'self'" in the CSP, this will
need to be figured out later.

We're also using a package called vite-plugin-wasm-pack whereas ironrdp
uses vite-plugin-wasm. I'm not sure why, I'm going to look into this and
swap out to vite-plugin-wasm if possible.

* Swaps out vite-plugin-wasm-pack for vite-plugin-wasm and adds build-wasm script to the teleport package.json.

vite-plugin-wasm-pack looks relatively unmaintained in comparison
to vite-plugin-wasm-pack.

build-wasm script is needed to build the wasm binary before calling vite [build]

* Adds backend structure for RPC PoC

Untested as of yet and it isn't pretty, but this more or less imitates the
RPC approach we have for directory sharing.

* hack solution which calls everything 'static. THIS IS VERY UNSAFE, WE SHOULD DO SOMETHING ELSE

* Gets the full display working end to end
with a particular commit of IronRDP. Unfortunately this commit is now
well out of date, and IronRDP had some bugs that were preventing RemoteFX
frames from being sent back.

* Full display working end to end with the updated IronRDP

* updates init_wasm_log to enable logging in the console

* updates hardcoded io_channel_id and user_channel_id

* Uses specific IronRDP sub-crates (i.e. ironrdp-session, ironrdp-tokio, etc.) rather than relying on whatever is re-exported from the ironrdp sub-crate itself

* Gets FastPathFrameResponse up to speed and the PoC is now working

* deletes all the rpc stuff which it turns out we don't need

* more cleanup including consolidating the FastPathFrame message between wasm and js, adding some comments

* Updates the documentation string for top level Client in lib.rs

* Removes hardcoded rdp server address, screen size, and username

* Swaps to online IronRDP repo

* Updates the TDP RFD with new messages
renaming them to be precise.

* remove hardcoded ip

* creates asRustBackedSlice

* removing some old todos

* Add cleanup for wasm-pack build artifacts to make clean

* Fix wasm in production builds (#27428)

* Converts the default Content-Security-Policy representation to a map
which makes it easier to programmatically add-to/overwrite the defaults
for special cases.

Also adds tests for the various custom CSPs.

* Alphabetize CSP directives for ease of testing/debugging in the future

* makes maps more easily composable

* removes commented code, and topLevelAwait() which was causing production builds to break

* Adds 'wasm-unsafe-eval' to the script-src section of the Content-Security-Policy
when a desktop session's url is detected.

The app already enforces no caching via the Cache-Control, Pragma, and
Expires headers (SetNoCacheHeaders), which means that any time the app
is requested in a new tab, the browser will always request a new index.html
which can be sent back with a new Content-Security-Policy header.

Since the only way to get to a desktop session is to either
click a link in the app which opens a new tab, or to open a new tab and
navigate to the url manually (this differs from most components, which can
be navigated to without a page reload using React Router), we can reliably
check each index.html request for a characteristic desktop session url path,
and only include the 'wasm-unsafe-eval' directive when strictly necessary
(in the spirit of the principle of least privilege).

* Removes vite-plugin-top-level-await from package.json

* moves regex to global so that it only need be compiled once

* CR fixes
updates Cargo.lock
removes commented feature flag
removes -framework SystemConfiguration
fixes makefile comment

* unsafe.SliceData

* fixes phrasing

* changes to docstring

* changes handle_tdp_fast_path_response to handle_tdp_rdp_response_pdu
so that its name is in line with its definition in RFD 0037 and
adds a more descriptive docstring.

* small fixes to comments

* preallocate RDPFastPathPDU Encode buffer

* updating comments

* Adds a detailed discussion of the Go/Rust Interface to the README (#29762)

* Aligns the codebase with the Go/Rust interface principles in the README (#29764)

* Move client functionality into Client (#29765)

* Adds the RDP Channel IDs TDP message (#27514)

* Refactoring `rdpclient` (#29766)

* Ironrdp recording playback (#28228)

* httplib.SetIndexContentSecurityPolicyWithWasm for recordings as well as desktop sessions so that the ironrdp wasm client can be used for recording playback

* Adds desktopplayback path to websocket proxy definitions so that it can be used with the dev server

* adds tdp.TypeRDPFastPathPDU as a tdp message to be recorded

* With this commit, recordings can be played back with the FastPathProcessor

Refactors tdp Client and subclass PlayerClient
such that now the classes are always constructed the same way,
and the internal representation of the screen size (the FastPathProcessor)
is either:

1. Created upon the call to Client.connect(spec) when spec is !undefined.
This is the case when the Client is being used for a desktop session.

2. Created when a client screen spec is received from the server. This is
the case when PlayerClient is being used for playback.

* Switches from sending the width/height via ur parameter string
to sending it via the client screen spec tdp message.

* changes tdpCli* to client* and adds a canvas* to the canvas related functions

* Static tokio (#30066)

* Beginnings of RdpdrBackend integration (#32814)

* Adds handling for the EstablishContextCall (#32971)

* Adds support for `ListReadersCall` and `ListReadersReturn` (#33004)

* Adds support for `GetStatusChangeCall`/`GetStatusChangeReturn` (#33056)

* Adds support for ConnectCall and ConnectReturn (#33136)

* Better error handling (#32925)

This change removes couple of unwrap that could cause panics on the Rust side and prevents panics from invalid cgo handle on the Go side.
It also sends error message from IronRDP to UI and cleans up a little final sequence of closing various goroutines in case of error or sessions end.

* Adds support for `HCardAndDispositionCall` with `ScardIoCtlCode::BeginTransaction` (#33192)

* `TransmitCall` and `TransmitReturn` (#33282)

* `StatusCall` and `StatusReturn` (#33284)

* `ReleaseContext` and refactor `handle_scard_call` (#33434)

* IronRDP clipboard sharing (#33335)

This change adds clipboard sharing to our IronRDP migration using ironrdp_cliprdr crate with out TDP-based backend (reused from rdp-rs times)

* Adds EndTransaction, Disconnect, Cancel, and IsValidContext (#33612)

* Adds support for `GetDeviceTypeId` (#33613)

* Adds support for `ReadCacheW` (#33618)

* `WriteCacheW` (#33620)

* Smartcard Login (#33712)

* `GetReaderIcon` (#33779)

* Update to IronRDP latest commit

* Removes a bunch of old deprecated code (including `rdp-rs`) (#33786)

* Pipes in `SharedDirectoryAnnounce` (#33911)

* Use tokio-boring for TLS upgrade (#33900)

This change switches TLS upgrade in our new RDP approach to tokio-boring in FIPS-compliant builds.
It also adds runtime check for FIPS mode.

Tested locally in custom Docker image.

* Update sspi (#34558)

* Break up rdpdr.rs, add support for the first directory sharing pdus (#34009)

* Adds support for `SharedDirectoryCreateRequest` and `SharedDirectoryCreateResponse`. (#34011)

* `SharedDirectoryDeleteRequest` and `SharedDirectoryDeleteResponse` (#34051)

* remove leftover code

* Server drive query information request (#34082)

* Rdp client refactor (#34122)

* Add handling for `DeviceCloseRequest` (#34139)

* Updates to `IronRDP` latest (#34744)

* Updates to IronRDP latest with a slightly different API

* remove defunct comment

* `ServerDriveQueryDirectoryRequest` and `SharedDirectoryListRequest/Response` (#34746)

* `ServerDriveQueryVolumeInformationRequest` and `ClientDriveQueryVolumeInformationResponse` (#34871)

* `DeviceControlRequest` (#34898)

* `Read` (#34914)

* `Write` (#34919)

* `SetInformation` (#35092)

* `LockControl` (#35146)

* Stack pr feedback and other cleanup (#35306)

* Adds desktop access websocket pattern to vite config

* Updates IronRDP to latest, removes manual context strings in favor of automatically generated (by this latest IronRDP commit) (#35392)

* Small line fixes, comment removal, changing license to AGPL

* Update Go/Rust interface section of README (#35590)

* Ironrdp manual docs (#35455)

* Remove unnecessary whitespace

* Refactor navigation paths in Active Directory documentation for clarity

Replaced textual descriptions with formatted paths using `>` symbols for better readability.

Having been subject to going through many such tutorials myself, I find this to be a more
user-friendly way of presenting the information. It's very common to need to go back and
forth between the documentation and the group policy manager, and having these paths in a
format that can catch the eye quickly is a big help. This also appears to be common practice
e.g.

- https://softwarekeep.com/help-center/how-to-enable-remote-desktop-on-windows
- https://www.helpwire.app/blog/remote-desktop-group-policy/

* Add instructions for enabling RemoteFX

* Add an optional step to the end of each GPO update subsection

This lets us point users to subsections individually without worrying
about reminding them that they need to run a `gpupdate /force` each
time (because its already right there in the subsection).

* lowercase "open"

* Updates configuration script to enable RemoteFX (#35461)

* Restructure Cargo workspace (#35591)

* Update `IronRDP` to latest, fix key log leak (#35707)

Updates IronRDP to latest with the changes necessary to keep up with the changes in https://github.com/Devolutions/IronRDP/pull/328. We select the `"rustls"` feature explicitly now, this is in line with our implicit choice of it as [the default](https://github.com/Devolutions/IronRDP/pull/325/files#diff-1f64036f3e460819b2b1e954803b7f266feca0e2787ca0614ae1253323944f59L19) before these latest changes.

Also creates a custom debug for `ScardBackend` so as to not leak `key_der` in the logs.

* Don't leak pin in the logs

* Updates CI to fix broken checks and builds caused by WASM introduction (#35401)

* removes SystemConfiguration framework (not sure why it was there).

* Updates cspell

* fixes TestSetRedirectPageContentSecurityPolicy

* Updates e ref to a currently-draft-PR ref.

* Fix per session mfa (#35902)

* Updating e-ref to tip of `master`

* dependency-review: Ignore cargo dependencies with invalid license specifications

* Updates OSS build-macos.yaml to support wasm-pack

---------

Co-authored-by: Przemko Robakowski <przemko.robakowski@goteleport.com>
Co-authored-by: Mike Jensen <mike.jensen@goteleport.com>
2023-12-20 23:21:14 +00:00
Grzegorz Zdunek 81090e2ee8 Handle clicking on a label inside UnifiedResources (#35255)
* Extract `makeAdvancedSearchQueryForLabel` function

* Encapsulate all logic related to clicking on a label inside the shared `UnifiedResources`

* Run linter
2023-12-06 08:46:47 +00:00
fheinecke b178b8b732 Updated Teleport codebase to AGPL3 license (#35259)
Signed-off-by: Fred Heinecke <fred.heinecke@goteleport.com>
2023-12-01 17:48:14 +00:00
Grzegorz Zdunek abda5340dd Make unified resources data fetching mechanism more flexible (#33917)
* Extract `useUnifiedResourcesFetch` hook

* Set correct deps

* Reset the entire `UnifiedResources` component in Web UI when the `clusterId` changes

* Avoid passing unified request params to `useKeyBasedPagination`

* Rename `EmptySearchResults` to `NoResources`

The component is rendered when there are no resources,
not when the search returns nothing.

* Introduce `UnifiedResourcesQueryParams` type, which contains the only properties that the user can modify in the unified resource view

* Remove `data-testid`

* Improve comments and moved the hook

* Use `clear` function explicitly to reset `useUnifiedResourcesFetch` state

* Document what triggers the initial fetch request in `useInfiniteScroll`

* Rename `Wrapper` to `ClusterResources`

* Use a custom `AbortError` class that both Web UI and Connect can throw

* Revert "Use a custom `AbortError` class that both Web UI and Connect can throw"

This reverts commit f548c6989f.

* Handle gRPC abort errors in `isAbortError`
2023-10-27 14:57:07 +00:00
Rafał Cieślak 71a37bf50c Await peristed state restoration before concluding UI initialization (#33735)
* Wait for restoring persisted state in initUi

* DocumentsReopen: Show number of open tabs and cluster name

* Move the comment for pluralize

* Log errors in AppInitializer

* Create useLogger hook

* Rename functions which initialize the app

* Don't wait for startup modals before showing UI
2023-10-25 09:05:33 +00:00
Lisa Kim c53dc1d081 Web: Add notification store (#32970)
* Add notification bell to top bar

Also fixes topbar.test act warnings (even though tests passed)

* Add attention dot to navigation switcher

* Add attention dot to navigation item

* Create store notification and enable it

* Address review

- Made store notification type more generic
- Drop opactiy styling for top bar drop downs
- Use assertUnreachable in switch cases

* Address CR

* Fix import path and rename file

* Leave a TODO comment
2023-10-12 17:41:21 +00:00
Brian Joerger b7dbf85f52 Revert private key policy error handling in WebUI (Redo) (#33237)
* Revert private key policy error handling in WebUI.

* Update e ref.
2023-10-11 19:44:35 +00:00
Brian Joerger d2164a2b97 Revert #32918 and make privateKeyPolicyEnabled an optional field (#33173)
* Revert "Revert private key policy error handling in WebUI (#32918)"

This reverts commit 5e11bf5b49.

* Make privateKeyPolicyEnabled an optional field.
2023-10-10 01:15:09 +00:00
Brian Joerger 5e11bf5b49 Revert private key policy error handling in WebUI (#32918)
* Revert private key policy error handling in WebUI.

* Restore privateKeyPolicyEnabled field.
2023-10-09 18:59:46 +00:00
Grzegorz Zdunek 40b29c746d compareSemVers should return 0 if values are equal (#32315) 2023-09-25 08:19:51 +00:00
Rafał Cieślak 847a1b1167 Implement waiting for Connect My Computer node to join cluster (#30905)
* Add daemon.Service.ResolveClusterURI

* Accept agents dir through command line flag

tshd needs to know this out of band, so that when the Electron app tells
it to watch for host UUID file for a specific cluster, the Electron app
can send just the profile name of the cluster instead of an arbitrary path
on the computer.

* Implement WaitForConnectMyComputerNodeJoin in tsh daemon

* wait: Use addEventListener instead of onabort

* Make TshAbortController emit abort event only once

This aligns it with a regular AbortController, which also emits the event
only once.

* Refactor how types are imported in tshd fixtures

* Implement WaitForConnectMyComputerNodeJoin in Electron app

* createAbortController: Add signal.aborted, use emitter.once

* Improve wait function based on Deno implementation

https://github.com/denoland/deno_std/blob/72d6e6641e3cd39ae69fba89a78feab354018ef0/async/delay.ts#L39

* Add a comment about the events package
2023-09-21 11:43:10 +00:00
Grzegorz ZdunekandRafał Cieślak e6fc38cf5e Connect My Computer: Add status tab (#29976)
* Add IPCs for checking if the agent config file exists and for killing the agent

* Prepare app for the new document type

* When setup is done, switch the setup document to the status document, add a menu item that opens it.

I also replaced `Popover` with `Menu`,
it makes the menu consistent with other menus in web UI.

* Add `runWithPreparation` and `kill` functions to control the lifecycle of the agent. Compute the final agent state based on their state and the state of the process.

* Extract information related to the agent to `useAgentProperties` hook, so we can show `systemUsername` or `roleName` in multiple places

* Add `DocumentConnectMyComputerStatus` component

* Show agent state on the CMC icon

* Use `access` for checking file existence

* Add `createConnectMyComputerStatusDocument`

* Rename `isSetupDone` to `isAgentConfiguredAttempt`

* Improve `isAgentConfiguredAttempt` error handling

* Rename `state` to `agentState`

* Return services for the given `rootClusterUri` in `MockWorkspaceContextProvider`

* Fix comment

* Refactor calculating agent state

* Do not allow to open status document when agent is not configured

* Prettier and license

* Use proper icons instead od emojis

* Fix story reloading

* Remove dot at the end of `process-error` message to align it with other messages

* Refactor agent status calculation (#30617)

* Fix document redirection

* Add comments

* Rename `StackTrace` to `Logs`

* Move `workspace` back to the `ShowState` story component

* Use `downloadAgentAttempt` from the context directly in the setup

* Redirect to another document in `useLayoutEffect`

* Rename leftovers of stackTrace to logs

---------

Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
2023-08-18 13:54:37 +00:00
Grzegorz Zdunek c999082b1c Connect My Computer: Downloading the agent (#28698)
* Move `compareSemVers` function to `shared`

* Set correct `sessionData` path when the app is initialized

* Add `sessionDataDir`, `tempDataDir` and `agentBinaryPath` to `RuntimeSettings`

* Add `downloadAgent`

* Add a download step to CMC setup

* Escape spaces in the agent path only when used in a command

* Run prettier

* Change `sessionData` path for Windows too

* Improve comments

* Rename `AGENT_VERSION` to `CONNECT_CMC_AGENT_VERSION`

* Inspect HTTP status of the download response before using it

* Move `tar-fs` and `@types/tar-fs` to regular deps

* Switch to `execFile`

* Rename `isAgentAlreadyDownloaded` and `BinaryParams`

* Grammar fix

* Remove state from `FileDownloader`

* Remove custom check for the save path

* Deprecate old `compareSemVers` export instead of removing it

* Use vX.Y.Z format

* Improve comment

* Log fetch error and throw an error with status code

* Do not modify process.env in tests

* Add `ConnectMyComputerService`

* Fix comment and log message

* Run setup only when all statuses are ''

* Revert unintentionally removed comment

* Remove logger line

* Share the same promise across multiple callers

* Remove temp file

* Prettier

* Put CMC temp file in a directory

* Simplify `sharePromise` signature

* Rename `binaryName` to `tarballName`

* Use a correct path for cache on Linux
2023-07-14 15:47:28 +00:00
Lisa Kim 9bac74aeac Web: Provide accurate actionable steps with duplicate db name error (#26116)
* Add aws rds fields to databases responses

* Type ApiError response field

* Add utility func for returning err msg from Error

* Implement checking for existing db servers when fetching rds dbs

* Disable selecting table row when db servers exists

* Provide a more accurate actionable steps in case of dup err

* Fix blank id on resuming discover flow

* Address code review

* Fix lint: missing license

* Remove increasing limit +5, corner case handling seems unnecessary
2023-05-16 19:10:14 +00:00
Rafał Cieślak dd9c042a68 Connect: Show resource search errors in the search bar (#24520)
* Move tshd test helpers to a better location

* Support passing no props to tshd test helpers

* Refactor ResourcesService getServerByHostname tests

* Move pluralize to shared package

* SearchContext: Rename `opened` to `isOpen`

* ActionPicker story: Show auxiliary items in a separate column

* ActionPicker: Split getClusterName into two functions

getClusterName used to not return the name of the cluster if there's only
a single cluster present. Some places needed to get the cluster name
no matter what, such as the modal with resource errors that will be added
to ActionPicker.

* Refactor resource search to use Promise.allSettled

* useSearchAttempts has been renamed to useActionAttempts
* useActionAttempts returns resourceSearchAttempt in order to supply errors
  from ResourcesService.searchResources to ActionPicker.

* SearchContext: Implement lockOpen

We'll want to display error details in a modal. While the user interacts
with the modal, we don't want to close the search bar and reset the results.

So instead, we are going to force the search bar to stay open until the
user closes the modal. This will use the lockOpen function from this commit.

* Add modal for showing resource search errors

* Refactor mockedSearchContext to not be a top-level mutable var

* Show an item in search bar with resource search errors

* ResourceSearchError: Add instanceof check to tests, include clusterUri in message

* Make isLockedOpen into a ref

* Use table tests for lockOpen tests

* Revert "Make isLockedOpen into a ref"

This reverts commit 07f4206cc2.

* Move capitalization to ResourceSearchError.messageWithClusterName

* ResourceSearchError: Use `public` in constructor

* Connect: Improve focus management in search bar (#24665)
2023-04-17 12:46:39 +00:00
Jeff Pihach 5eafe86fa4 Remove usage of lodash methods (#21567)
* Create new local util lib to replace lodash.

* Replace usage of isInteger and debounce from lodash with highbar.

* Create isObject and runOnce utility methods.

* remove use of at, isObject, and once lodash method usage.

* remove map and transform lodash calls.

* Add memoize function to highbar.

* remove memoize lodash usage.

* remove merge and isEqual lodash methods and update other missing refs to highbar.

* convert the throttle to debounce.

* add throttle method to highbar.

* use the new throttle method instead of debounce where necessary.

* Add mergeDeep function for init config merge.

* remove lodash from the build process.

* Fix introduced bug in workspacesService.

* Added tests for highbar mergeDeep and expanded its functionality to support arrays.

* review updates.

* Added types to mergeDeep function.

* Add missing MapCache prototype methods.

* Add license notices, types and missing hash code.

* First pass at compare an array objects function.

* use new compareArrayObjs fn

* Add missing not

* Added types to arrayObjectIsEqual

* Add tests for arrayObjectIsEqual and fix some edge case bugs.

* update util fn name
2023-02-21 17:25:36 +00:00
Jeff Pihach 3f75acb163 Add license headers to web files that were missing it. (#21315)
* Lint the web files but not node_modules or vendored files.

* Add license headers to web files that were missing it.

* Add missing licenses.
2023-02-07 16:27:31 +00:00
Grzegorz Zdunek 3a0fc94aa6 Connect: wait for process to exit before closing app (#20673) 2023-01-26 14:34:14 +00:00
Lisa Kim 6b08ee907d Handle private key policy errors and config (#1298)
There are three ways we determine if use of private key is enabled:

-Cluster config: this setting won't render the login form, 
it will just direct user to login with other supported methods
- 'privateKeyPolicyEnabled' flag: only returned with a 200 for resets 
and invites. This flag was required so that we can additionally render 
recovery codes if any (only for Teleport Cloud)
- Checking if the error returned contains the backend hard coded 
keywords ('hardware_key' or 'hardware_key_touch'). Role configs
will require an attempt (either logging in or assuming an access request)
before the backend checks if this user requires use of private keys.
2022-10-28 14:38:04 -07:00
Rafał Cieślak 7e9aa52653 Connect: Fix filtering internal logins (#1292) 2022-10-24 10:29:58 +00:00
MichaelandGrzegorz Zdunek fe004fc158 [Connect] Add Document Access Requests (#1203)
* init webapps.e ref

* update web.e

* added imported components

* udpated to correct imported types

* webapps.e update

* readme update and lint fix

* removed extra console logs

* sub head fix for webe

* reattached webape head

* fixed tests

* added access request change confirm dialog

* null check

* webappe

* count to accessRequestSerivce, import/export names, small fixes

* fixed imports and createrequest params

* updated imports from removed containers in teleterm-e

* optional params for reuse outside of ClusterLogout

* webapps.e ref update

* update webapps.e ref

* webapps.e ref update

* webapps.e ref update and navigation item update

* webapps.e update

* align sync button center to match access request size

* added accessRequestsSerice tests

* updating webapps.e

* created accessRequests object on workspace type and cleanup

* added requestId to documentaccessrequest type and webapps.e update

* protobuf updates changing created/expires from string to timestamppb

* webappse update and review feedback

* updated protos with comments

* changing delete/review access request responses to void

* updated getaccessrequests to not include ID

* protobuf updates

* webappse update

* update to resource tables styles

* update to standard access_request_id field in RPCs

* webappse upddate

* updated tests and added types

* updated webappse

* clusterService method for getrequestableroles, retryWithRelogin for fetch, webappse update

* webappse update

* story fixes

* added kubes support to tsh

* proto files

* update webappse

* Provide `WorkspaceContext` for documents in each workspace

* updating webappse

* webappse update

* accessrequestservice fix for resoruces

* updated webapps.e after master merge

* removed extra data from persisted state for assumed access requests

* update webappse

* protobuf files

* lint fixes

* adding getWorkspaces stub to fix tests

* webappse update

* webappse snapshots update

* protobuf updates

Co-authored-by: Grzegorz Zdunek <grzegorz.zdunek@goteleport.com>
2022-10-11 18:53:57 -05:00
Jeff Pihach 991856e137 Added eslint rule to enforce the order of file imports (#1030)
* add import order lint rule.
* auto fix import order and spacing.
* prettier fix.
* manual fix of import order.
* update failing snapshots.
* bump e submodule for import order fixes.
2022-07-25 16:21:23 -06:00
Lisa Kim b86c9bcdfe [2/3] Prettify shared, build, and teleport packages (#955)
* Update prettier ignore
2022-07-06 14:57:40 +00:00
Lisa Kim d343e5618c Remove u2f components and logic (#711)
* Also updates e-ref
2022-04-04 17:56:49 -07:00
Lisa Kim f916657669 Update getMfaOptions to createMfaOptions 2022-03-30 17:30:43 -07:00
Alexey Kontsevoyandgzdunek b55dd4f2f1 Teleterm Preview (beta) (#590)
* first version

* Fix build

* Fix

* fixes

* add app context

* Add Navigator

* more screens

* add cluster

* grpc

* Add gateways

* add node-pty

* add tshd daemon

* add main process quick reload

* add tsh access

* Use default terminal shell and add context menu (#444)

* node-pty errors

* Fix build process and include `tsh` in the package  (#451)

* Use single `package.json` config

* Include `tsh` in app package

* fix linux package target

* add global search

* fix tsc (errors) build step

* Add mocks

* Add logging to file (#455)

* minor cleanups

* Add keyboard shortcuts service (#462)

* add sync statuses for teleport resources

* add teleterm icon (#470)

* Fix dev reloads of main process

* minore bug fixes

* implement auth

* update webpack configs to v5 (#492)

* arrange the cards evenly depending on the available space & add drag and drop (#486)

* fix text truncation on tabs

* Add logout and cluster removal

* Add context menu to clusters (#500)

* Add tabs shortcuts & open new tab basing on active tab (#495)

* Make xterm understand resize sequence (#507)

* use `Immer` in teleterm store (#516)

* Add apps and kubes

* Teleterm bugfixes (#519)

* add command palette

* Replace Gateways with Connections

* add tc

* Clean up

* Add basic config service (#526)

* add fonts config (#528)

* Fix resize bug

* Minor teleterm fixes (#531)

* remove exit code checking before closing a tab

* prevent closing `home` tab

* Fix crashing errors

* Remove Roles and Activities

* Remove GlobalSearch

* Add context menu to tab items (#533)

* make quickIInput always visible on top

* Add workspace service (#538)

* Add recently opened documents to workspace (#547)

* add recently opened documents to workspace

* review fixes

* review fixes

* add `ClusterConnect` component

* remove the `close` item and electron help items from the app menu (#560)

* improve navigator behaviour (#565)

* improve navigator behaviour

* Add new connection handling

* Add username to gateways

* add kube connect command

* Gateway should render instructions per DB protocol

* Address design changes

Co-authored-by: gzdunek <gzdunek@users.noreply.github.com>
2022-02-08 18:40:28 -05:00
Isaiah Becker-Mayer 1ac2d4a9b9 moving progress bar (#577)
* 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

* Moves Base64urlString type to where its needed

* removes DS_Store

* addresses code review

* simplifies and fixes durationMs logic

* final touches
2022-02-08 10:38:12 -05:00
Lisa Kim f1f5630543 Add Array Buffer and Base64URL converter (#415)
* Added preferredLocalMfa to config file
* Added webauthn as an auth 2fa type
2021-10-12 10:24:48 -07:00