Bruno Quaresma
f87dbe757e
chore: replace MUI icons with Lucide icons - 11 ( #17814 )
...
PersonOutlined -> UserIcon
Schedule -> ClockIcon
SettingsSuggest -> SettingsIcon
SettingsOutlined -> SettingsIcon
CodeOutlined -> CodeIcon
TimerOutlined -> TimerIcon
2025-05-14 08:48:08 -03:00
Bruno Quaresma
c71839294b
fix: don't open a window for external apps ( #17813 )
...
This prevents empty windows like the following to happen:

2025-05-14 08:41:33 -03:00
Bruno Quaresma
67e40244a4
feat: add extra workspace actions in the workspaces table ( #17775 )
...
**Demo:**
<img width="1624" alt="Screenshot 2025-05-12 at 16 53 36"
src="https://github.com/user-attachments/assets/7f125b31-5ce8-4c1f-8e26-c3136346cae3 "
/>
2025-05-13 18:53:43 -03:00
Bruno Quaresma
709445e6fb
chore: replace MUI icons with Lucide icons - 9 ( #17796 )
...
OpenInNew -> ExternalLinkIcon
KeyboardArrowLeft -> ChevronLeftIcon
KeyboardArrowRight -> ChevronRightIcon
Settings -> SettingsIcon
2025-05-13 13:53:06 -04:00
Cian Johnston and Kyle Carberry
a1c03b6c5f
feat: add experimental Chat UI ( #17650 )
...
Builds on https://github.com/coder/coder/pull/17570
Frontend portion of https://github.com/coder/coder/tree/chat originally
authored by @kylecarbs
Additional changes:
- Addresses linter complaints
- Brings `ChatToolInvocation` argument definitions in line with those
defined in `codersdk/toolsdk`
- Ensures chat-related features are not shown unless
`ExperimentAgenticChat` is enabled.
Co-authored-by: Kyle Carberry <kyle@carberry.com >
2025-05-13 17:24:10 +01:00
Bruno Quaresma
86da21c491
chore: replace MUI icons with Lucide icons - 10 ( #17797 )
...
CloseOutlined -> XIcon
SearchOutlined -> SearchIcon
Refresh -> RotateCwIcon
Build -> WrenchIcon
2025-05-13 12:31:36 -03:00
Bruno Quaresma
eb9a651acd
chore: replace MUI icons with Lucide icons - 8 ( #17778 )
...
1. Replaced CheckOutlined with CheckIcon in:
- TemplateVersionStatusBadge.tsx
- TemplateEmbedPage.tsx
- IntervalMenu.tsx
- WeekPicker.tsx
- SelectMenu.tsx
2. Replaced EditCalendarOutlined with CalendarCogIcon in:
- UserSettingsPage/Sidebar.tsx
- Sidebar.stories.tsx
3. Replaced LockOutlined with LockIcon in:
- UserSettingsPage/Sidebar.tsx
- TemplateSettingsPage/Sidebar.tsx
- Sidebar.stories.tsx
4. Replaced Person with UserIcon in:
- UserSettingsPage/Sidebar.tsx
- Sidebar.stories.tsx
5. Replaced VpnKeyOutlined with KeyIcon in:
- UserSettingsPage/Sidebar.tsx
- Sidebar.stories.tsx
6. Replaced FingerprintOutlined with FingerprintIcon in:
- UserSettingsPage/Sidebar.tsx
- Sidebar.stories.tsx
2025-05-13 10:09:45 -03:00
Bruno Quaresma
02425ee864
chore: replace MUI icons with Lucide icons - 7 ( #17776 )
...
VisibilityOffOutlined -> EyeOffIcon
VisibilityOutlined -> EyeIcon
2025-05-13 10:08:41 -03:00
Danielle Maywood
0b5f27f566
feat: add parent_id column to workspace_agents table ( #17758 )
...
Adds a new nullable column `parent_id` to `workspace_agents` table. This
lays the groundwork for having child agents.
2025-05-13 00:01:31 +01:00
Steven Masley
398b999d8f
chore: pass previous values into terraform apply ( #17696 )
...
Pass previous workspace build parameter values into the terraform
`plan/apply`. Enforces monotonicity in terraform as well as `coderd`.
2025-05-12 15:32:00 -05:00
ケイラ
d0ab91c16f
fix: reduce size of terraform modules archive ( #17749 )
2025-05-12 13:50:07 -06:00
ケイラ
10b44a5d1d
fix: use monochrome zed icon ( #17774 )
2025-05-12 13:18:18 -06:00
Bruno Quaresma
15bd7a3add
chore: replace MUI icons with Lucide icons - 5 ( #17750 )
...
Replacements:
MUI | Lucide
OpenInNewOutlined | ExternalLinkIcon
HelpOutline | CircleHelpIcon
ErrorOutline | CircleAlertIcon
2025-05-12 13:36:51 -03:00
Danny Kopping
af2941bb92
feat: add is_prebuild_claim to distinguish post-claim provisioning ( #17757 )
...
Used in combination with
https://github.com/coder/terraform-provider-coder/pull/396
This is required by both https://github.com/coder/coder/pull/17475 and
https://github.com/coder/coder/pull/17571
Operators may need to conditionalize their templates to perform certain
operations once a prebuilt workspace has been claimed. This value will
**only** be set once a claim takes place and a subsequent `terraform
apply` occurs. Any `terraform apply` runs thereafter will be
indistinguishable from a normal run on a workspace.
---------
Signed-off-by: Danny Kopping <dannykopping@gmail.com >
2025-05-12 14:19:03 +00:00
Bruno Quaresma
842bb1f014
chore: replace MUI icons - 6 ( #17751 )
...
1. Replaced CheckCircleOutlined with CircleCheckIcon (Lucide)
2. Replaced Close/CloseIcon with XIcon (Lucide)
3. Replaced DoNotDisturbOnOutlined with CircleMinusIcon (Lucide)
4. Replaced Sell with TagIcon (Lucide)
2025-05-09 17:07:57 -03:00
Bruno Quaresma
1adad418ad
feat: display user apps in the workspaces table ( #17744 )
...
Related to https://github.com/coder/coder/issues/17311
**Demo:**
<img width="1511" alt="Screenshot 2025-05-09 at 11 46 59"
src="https://github.com/user-attachments/assets/3e9ba618-ed5d-4eeb-996f-d7bcceb9f1a9 "
/>
2025-05-09 17:01:57 -03:00
Bruno Quaresma
4970fb9bfa
chore: replace MUI icons - 4 ( #17748 )
...
1. Replaced CloudUploadOutlined with CloudUploadIcon in FileUpload.tsx
2. Replaced DeleteOutline with TrashIcon in:
- WorkspaceTopbar.tsx
- TokensPageView.tsx
- GroupPage.tsx
3. Replaced FolderOutlined with FolderIcon in FileUpload.tsx
2025-05-09 15:57:28 -03:00
Bruno Quaresma
aa4b764025
chore: replace MUI icons - 3 ( #17733 )
...
1. Replaced TaskAlt with CircleCheckBigIcon in:
- Paywall.tsx
- PopoverPaywall.tsx
2. Replaced InfoOutlined with InfoIcon in:
- ChangeVersionDialog.tsx
- WorkspaceNotifications.tsx
- Pill.stories.tsx
3. Replaced ErrorOutline/ErrorOutlineIcon with CircleAlertIcon in:
- workspace.tsx
- WorkspaceStatusBadge.tsx
- AppLink.tsx
2025-05-09 15:09:03 -03:00
Bruno Quaresma
b0a4ef01a8
chore: replace MUI icons - 2 ( #17732 )
...
Replace icons:
Check | CheckIcon
KeyboardArrowDown | ChevronDownIcon
KeyboardArrowUp | ChevronUpIcon
2025-05-09 14:44:10 -03:00
Bruno Quaresma
9e44f18b4b
refactor: add safe list for external app protocols ( #17742 )
...
To prevent malicious apps and vendors to use the Coder session token we
are adding safe protocols/schemas we want to support.
- vscode:
- vscode-insiders:
- windsurf:
- cursor:
- jetbrains-gateway:
- jetbrains:
Fix https://github.com/coder/security/issues/77
2025-05-09 14:40:26 -03:00
Danny Kopping and Steven Masley
3ee95f14ce
chore: upgrade terraform-provider-coder & preview libs ( #17738 )
...
The changes in `coder/preview` necessitated the changes in
`codersdk/richparameters.go` & `provisioner/terraform/resources.go`.
---------
Signed-off-by: Danny Kopping <dannykopping@gmail.com >
Co-authored-by: Steven Masley <stevenmasley@gmail.com >
2025-05-09 17:41:19 +02:00
Bruno Quaresma
9d7630bf4b
chore: replace MUI icons - 1 ( #17731 )
...
1. Replaced MUI StopOutlined with Lucide SquareIcon in:
- workspace.tsx
- WorkspacesPageView.tsx
- BuildIcon.tsx
2. Replaced MUI PlayArrowOutlined with Lucide PlayIcon in:
- workspace.tsx
- WorkspacesPageView.tsx
- BuildIcon.tsx
3. Replaced MUI DeleteOutlined with Lucide TrashIcon in:
- WorkspacesPageView.tsx
- WorkspaceActions.tsx
- TemplatePageHeader.tsx
- BuildIcon.tsx
2025-05-09 11:16:46 -03:00
Bruno Quaresma
0b8fd7e403
chore: fix :first-child warning ( #17727 )
...
Fix the following warning:
```
The pseudo class ":first-child" is potentially unsafe when doing server-side rendering.
```
2025-05-09 11:11:00 -03:00
Bruno Quaresma
902c34cf01
refactor: improve apps.ts readbility ( #17741 )
...
Apply PR comments from https://github.com/coder/coder/pull/17724
2025-05-09 11:01:35 -03:00
Bruno Quaresma
2bdd035873
chore: add keys for each app on workspaces table ( #17726 )
...
Fix warning:
```
hook.js:608 Warning: Each child in a list should have a unique "key" prop.
```
2025-05-09 11:01:24 -03:00
Bruno Quaresma
f897981e78
chore: extract app access logic for reuse ( #17724 )
...
We are starting to add app links in many places in the UI, and to make
it consistent, this PR extracts the most core logic into the
modules/apps for reuse.
Related to https://github.com/coder/coder/issues/17311
2025-05-09 10:41:52 -03:00
Jon Ayers
a9f1a6b2a2
fix: revert fix: persist terraform modules during template import ( #17665 ) ( #17734 )
...
This reverts commit ae3d90b057 .
2025-05-08 22:03:08 -04:00
ケイラ
ae3d90b057
fix: persist terraform modules during template import ( #17665 )
2025-05-08 16:13:46 -06:00
Jaayden Halko
d93a9cfde2
feat: add TagInput component for dynamic parameters ( #17719 )
...
resolves coder/preview#50
This uses the existing MultiTextField component as the tag-select
component for Dynamic parameters.
The intention is not to completely re-write the MultiTextField but to
make some design improvements to match the updated design patterns. This
should still work with the existing non-experimental
CreateWorkspacePage.
Before
<img width="556" alt="Screenshot 2025-05-08 at 12 58 31"
src="https://github.com/user-attachments/assets/9bf5bbf8-e26d-4523-8b5f-e4234e83d192 "
/>
After
<img width="548" alt="Screenshot 2025-05-08 at 12 43 28"
src="https://github.com/user-attachments/assets/9fa90795-b2a9-4c07-b90e-938219202799 "
/>
2025-05-08 12:59:33 -04:00
Jaayden Halko
0b141c47cb
chore: add DynamicParameter stories ( #17710 )
...
resolves coder/preview#112
- Add stories for DynamicParameter component
- fix bug with displaying immutable badge and required asterisk
2025-05-08 10:12:05 -04:00
Bruno Quaresma
857587b35d
fix: do not share token with http app urls ( #17720 )
...
It's a security issue to share the API token, and the protocols that we
actually want to share it with are not HTTP and handled locally on the
same machine.
Security issue introduced by https://github.com/coder/coder/pull/17708
2025-05-08 09:51:10 -03:00
Bruno Quaresma
4341403346
chore: simplify workspaces data fetching ( #17703 )
...
We've been using an abstraction that was not necessary to fetch
workspaces data. I also took sometime to use the new useWorkspaceUpdate
hook in the update workspace tooltip that was missing some important
steps like confirmation.
2025-05-08 09:42:39 -03:00
Bruno Quaresma
2695f4e950
chore: improve variable names of mocked users ( #17701 )
...
Many times I got confused when using MockUser and MockUser2 so I just
decided to better naming them to MockUserOwner and MockUserMember.
2025-05-08 09:32:32 -03:00
Jaayden Halko
c66e80e862
fix: extract checkbox label from dynamic parameter styling prop ( #17651 )
...
resolves #17474
A label will only be shown next to the checkbox If there is a value for
`label` in the styling prop for the dynamic parameter
<img width="457" alt="Screenshot 2025-05-01 at 21 35 32"
src="https://github.com/user-attachments/assets/3b3a8160-65a2-4411-b763-0d07a4eeb699 "
/>
2025-05-08 08:02:27 -04:00
Dean Sheather
b6182fe054
chore: add code-insiders.svg static icon ( #17716 )
...
We have `code.svg` but not `code-insiders.svg`
2025-05-08 05:09:16 +00:00
Bruno Quaresma
a02ba6616b
fix: fill session token when app is external ( #17708 )
...
Fix https://github.com/coder/coder/issues/17704
During the [refactoring of WorkspaceApp response
type](https://github.com/coder/coder/pull/17700/files#diff-a7e67944708c3c914a24a02d515a89ecd414bfe61890468dac08abde55ba8e96R112 ),
I updated the logic to check if the session token should be injected
causing external apps to not load correctly.
To also avoid future confusions, we are only going to rely on the
`app.external` prop to open apps externally instead of verifying if the
URL does not use the HTTP protocol. I did some research and I didn't
find out a use case where it would be a problem.
I'm going to refactor this code very soon to allow opening apps from the
workspaces page, so I will write the tests to cover this use case there.
**Not included:**
During my next refactoring I'm also going to change the code to support
token injections directly in the HREF instead of making it happen during
the click event.
2025-05-07 19:59:52 +00:00
Bruno Quaresma
6ac1bd807c
feat: display builtin apps on workspaces table ( #17695 )
...
Related to https://github.com/coder/coder/issues/17311
<img width="1624" alt="Screenshot 2025-05-06 at 16 20 40"
src="https://github.com/user-attachments/assets/932f6034-9f8a-45d7-bf8d-d330dcca683d "
/>
2025-05-07 14:26:21 -03:00
Bruno Quaresma
9fe5b71d31
chore!: fix workspace apps response ( #17700 )
...
Fix WorkspaceApp response type to better reflect the schema from
https://registry.terraform.io/providers/coder/coder/latest/docs/resources/app .
2025-05-07 10:05:07 -03:00
Bruno Quaresma
d146115ca0
chore: update browser list db ( #17699 )
2025-05-07 09:01:47 -03:00
DevCats
df0c6eda33
chore: add custom aider icon ( #17682 )
...
Created Custom SVG from Aider PNG and upload from module to static site
icons
2025-05-06 09:46:36 -07:00
Bruno Quaresma
4fa9d30bf4
refactor: update app buttons to use the new button component ( #17684 )
...
Related to https://github.com/coder/coder/issues/17311
- Replaces the MUI Buttons by the new shadcn/ui buttons. This change
allows the reuse of app links, and terminal buttons using the `asChild`
capability from the Radix components
- Uses the new [proposed
design](https://www.figma.com/design/OR75XeUI0Z3ksqt1mHsNQw/Workspace-views?node-id=1014-8242&t=wtUXJRN1SfyZiFKn-0 )
- Updates the button styles to support image tags as icons
- Uses the new Tooltip component for the app buttons
**Before:**
<img width="1243" alt="Screenshot 2025-05-05 at 17 55 49"
src="https://github.com/user-attachments/assets/e689e9dc-d8e1-4c9d-ba09-ef1479a501f1 "
/>
**After:**
<img width="1264" alt="Screenshot 2025-05-05 at 18 05 38"
src="https://github.com/user-attachments/assets/8fafbe20-f063-46ab-86cf-2e0381bba889 "
/>
2025-05-06 13:26:37 -03:00
Hugo Dutka
a7e828593f
chore: retry failing tests in CI ( #17681 )
...
This PR introduces failing test retries in CI for e2e tests, Go tests
with the in-memory database, Go tests with Postgres, and the CLI tests.
Retries are not enabled for race tests.
The goal is to reduce how often flakes disrupt developers' workflows.
2025-05-06 16:53:26 +02:00
Bruno Quaresma
d9b00e4849
feat: add inline actions into workspaces table ( #17636 )
...
Related to https://github.com/coder/coder/issues/17311
This PR adds inline actions in the workspaces page. It is a bit
different of the [original
design](https://www.figma.com/design/OR75XeUI0Z3ksqt1mHsNQw/Workspace-views?node-id=656-3979&m=dev )
because I'm splitting the work into three phases that I will explain in
more details in the demo.
https://github.com/user-attachments/assets/6383375e-ed10-45d1-b5d5-b4421e86d158
2025-05-06 11:28:14 -03:00
Jaayden Halko
ec003b7cf9
fix: update default value handling for dynamic defaults ( #17609 )
...
resolves coder/preview#102
2025-05-06 06:40:31 -04:00
Jaayden Halko
4587082fcf
chore: update design of External auth section of CreateWorkspacePage ( #17683 )
...
contributes to coder/preview#59
Figma:
https://www.figma.com/design/SMg6H8VKXnPSkE6h9KPoAD/UX-Presets?node-id=2180-2995&t=RL6ICIf6KUL5YUpB-1
This updates the design of the External authentication section of the
create workspace page form for both the existing and the new
experimental create workspace pages.
<img width="819" alt="Screenshot 2025-05-05 at 18 15 28"
src="https://github.com/user-attachments/assets/8bc419dc-e1db-4188-b920-73010bbe626d "
/>
2025-05-05 17:13:39 -04:00
Bruno Quaresma
93a584b7c2
fix: fix windsurf icon on light theme ( #17679 )
2025-05-05 11:10:50 -03:00
Bruno Quaresma
82fdb6a6ae
fix: fix size for non-squared app icons ( #17663 )
...
**Before:**

**After:**
<img width="192" alt="Screenshot 2025-05-02 at 14 36 19"
src="https://github.com/user-attachments/assets/59cb4531-06fd-44bc-b4b9-4441f2dce79a "
/>
2025-05-02 14:44:13 -03:00
Bruno Quaresma
3be6487f02
feat: support GFM alerts in markdown ( #17662 )
...
Closes https://github.com/coder/coder/issues/17660
Add support to [GFM
Alerts](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts ).
<img width="635" alt="Screenshot 2025-05-02 at 14 26 36"
src="https://github.com/user-attachments/assets/8b785e0f-87f4-4bbd-9107-67858ad5dece "
/>
PS: This was heavily copied from
https://github.com/coder/coder-registry/blob/dev/cmd/main/site/src/components/MarkdownView/MarkdownView.tsx
2025-05-02 14:44:01 -03:00
Cian Johnston and Kyle Carberry
544259b809
feat: add database tables and API routes for agentic chat feature ( #17570 )
...
Backend portion of experimental `AgenticChat` feature:
- Adds database tables for chats and chat messages
- Adds functionality to stream messages from LLM providers using
`kylecarbs/aisdk-go`
- Adds API routes with relevant functionality (list, create, update
chats, insert chat message)
- Adds experiment `codersdk.AgenticChat`
---------
Co-authored-by: Kyle Carberry <kyle@carberry.com >
2025-05-02 17:29:57 +01:00
M Atif Ali
64b9bc1ca4
fix: update licensing info URL on sign up page ( #17657 )
2025-05-02 16:07:10 +00:00