feat: add bulk secret import upload to Add secret dialog (PLAT-240) - #26725
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
cd114ba to
22ab3cd
Compare
Docs previewCheck off each page once it's been reviewed. If a page changes in a later push, its checkbox clears automatically so it gets a fresh look. Pages not yet wired into the docs navigation aren't listed here. |
Documentation CheckThis push is another merge from main ( Updates Needed
Verification Notes
Automated review via Coder Agents |
…240) Add a file-upload dropzone to the create branch of the Add secret dialog (edit is unchanged). The browser reads the file, derives the format from the extension, and calls the import endpoint, surfacing per-entry backend errors. Includes Storybook coverage for success, partial-failure, and unsupported-file cases.
44e6aae to
28258da
Compare
| isUploading={isImporting} | ||
| file={importFile} | ||
| onUpload={handleImportFile} | ||
| onUnsupportedFile={handleImportFile} |
There was a problem hiding this comment.
feels kind of weird to overload this handler to support both valid and invalid filetypes. very much a nit but perhaps separating this out into two handlers would read better?
82f6740 to
d64fd0c
Compare

Adds a file dropzone to the create branch of the Add secret dialog (final PR in the PLAT-240 stack, after #26723 and #26724). The browser reads the file, derives the format from the extension (
.env/.json/.yaml/.yml), and imports viaPOST /secrets/batch; per-entry backend errors surface in an alert and the success toast flags secrets imported without an env name. Storybook play stories and vitests cover the flow.Also documents the upload flow in
docs/user-guides/user-secrets.md.Closes https://linear.app/codercom/issue/PLAT-240