Commit Graph

721 Commits

Author SHA1 Message Date
Pavel Laptev
a2b90bab55
UI stacking lanes style fixes (#5211)
* fix margins and positioning

* fix dots on zoom

* Update StackHeader.svelte

* Update StackingStatusIcon.svelte
2024-10-18 13:38:55 +00:00
estib
4a96c1a423 Use the forge method to get the PR template content
Use the forge service to get the PR content method.
2024-10-18 15:38:02 +02:00
Pavel Laptev
45467f33e5
UI stacking lanes style fixes (#5210)
* fix margins and positioning

* fix dots on zoom
2024-10-18 15:19:15 +02:00
Pavel Laptev
e2b08729de
Styles fix: new branch modal (#5206) 2024-10-18 15:14:38 +02:00
Caleb Owens
ff334cccac Patch stacks :D 2024-10-18 14:48:56 +02:00
Kiril Videlov
f62883ffdb
Series UI: update copy to speak about branches
At least for now, its more familiar terminology
2024-10-18 14:10:33 +02:00
Esteban Vega
7624ef5e01
Merge pull request #5202 from gitbutlerapp/branch
PR cards: Remove the mergeable state message
2024-10-18 13:58:24 +02:00
ndom91
09bcfe5547 fix: update svelte checks of 'vritual branch' 2024-10-18 13:57:33 +02:00
estib
9abc6b72b4 PR cards: Remove the mergeable state message
Remove the status message regarding the mergeable state in the PR card.
2024-10-18 13:37:36 +02:00
ndom91
d14c3e9387 fix: revert adding tooltip prop to ContextMenuItem 2024-10-18 12:57:28 +02:00
ndom91
fa2954798d fix: instead of disabling+tooltip, just dont show invalid items in contextMenu 2024-10-18 12:57:28 +02:00
ndom91
2bc44d6433 chore: convert remaining ContextMenuItems to runes / snippets 2024-10-18 12:57:28 +02:00
ndom91
6804bfb6ef feat: add tooltips to series header contextMenu items to explain why they're disabled 2024-10-18 12:57:28 +02:00
ndom91
c760a0b482 feat: add tooltip option to ContextMenuItem 2024-10-18 12:57:28 +02:00
Esteban Vega
a9ecf285f6
add-branch-to-stack-update (#5188)
* Button: Add more styling props

- Choose the border radius style
- Set a max-width
- Ignore children (helps with the animation in between having no children and having a large child)

* StackingAddSeriesButton

Replace the 'new series' card with a button that appears on hover.
Also:
The modal displays more information, like what the resulting branch name will be called

* style updates

* button center align

* fix tooltip positioning

* some UI fixes

* added focus trap to the context menu

* styles updated

* update: transition time

---------

Co-authored-by: Pavel Laptev <pawellaptew@gmail.com>
2024-10-18 12:55:08 +02:00
ndom91
1e3f9ecd8a fix: update label to 'Push All' when there are multiple series 2024-10-18 11:32:35 +02:00
ndom91
99ada05663 feat: add token for branch_name in custom prompts 2024-10-17 23:00:03 +02:00
estib
d41e271e99 ForgeType
Set the type of repository forge type (e.g. GitHub, GitLab) once the base branch is determined.
Get the available templates with the updated method
2024-10-17 18:17:07 +02:00
Caleb Owens
eea2f32220 Prevent undesirable if can't talk to server 2024-10-17 16:13:16 +02:00
Caleb Owens
73f458738b Fix race condition in listing patch stacks 2024-10-17 14:27:28 +02:00
Caleb Owens
538c19671b Make sure feature flag works 2024-10-17 14:07:39 +02:00
Caleb Owens
92c1188759 Patch stack creation 2024-10-17 12:59:14 +02:00
Caleb Owens
2c00d5f869 Listing series 2024-10-16 17:49:55 +02:00
ndom91
c5c54b672f fix: in series delete confirmation modal show correct seriesName 2024-10-17 14:35:44 +02:00
ndom91
2005e04346 fix: update copy for feature flag for enabling multi-series stacking support 2024-10-17 14:23:41 +02:00
ndom91
f94ea35629
fix: also disable series 'rename' via contextMenu once pushed 2024-10-17 12:06:07 +02:00
Kiril Videlov
5d28c1a76a
Merge pull request #5162 from gitbutlerapp/kvs-branch
Implement 'integrate upstream changes' for the stacked flow
2024-10-17 12:34:56 +02:00
ndom91
032a0dfe48 fix: stacking dont show PR cards/btns if no service exists 2024-10-17 12:08:51 +02:00
estib
73f81332a3 fix: New branch dropzone only accepts uncommited files
When creating a brand new branch, don't let commited files or hunks create new branches
2024-10-16 19:15:56 +02:00
Kiril Videlov
64fd3b893d
Merge pull request #5165 from Byron/fixup-5089
Some improvements on top of #5089
2024-10-16 19:19:46 +02:00
Esteban Vega
740479861b
Merge pull request #5169 from gitbutlerapp/add-pr-details-and-refetch
PR card updates
2024-10-16 17:47:04 +02:00
Sebastian Thiel
201ceec88b
Adapt the UI implementation to deal with the lack of the FileInfo::status field 2024-10-16 16:49:44 +02:00
estib
af625080db fix: Get the right PR source branch
We were setting the PR **base branch** (e.g. main or master) as the source branch, instead of the head, as intended
2024-10-16 16:46:20 +02:00
ndom91
d9e103d898 fix: hide images > 5mb 2024-10-16 16:55:28 +02:00
ndom91
833d8510ce fix: disable image contextMenu in file preview 2024-10-16 16:55:28 +02:00
ndom91
5b09278807 fix: binary image display styling 2024-10-16 16:55:28 +02:00
estib
fb152bcc96 PR card updates 2024-10-16 16:20:02 +02:00
Esteban Vega
05e812ca88
Merge pull request #5167 from gitbutlerapp/default-target-on-fresh-install
fix: Swallow the default target not found
2024-10-16 15:49:35 +02:00
ndom91
eaa785e3bb fix: do not allow commit editing for upstream-only commits 2024-10-16 15:42:15 +02:00
estib
dec689c6ab fix: Swallow the default target not found
Don't surface the default target not found. This already is caught at the top level and the user is taken to the 'target not found' page.
2024-10-16 15:35:00 +02:00
Pavel Laptev
a7eef8ff38 center dots 2024-10-16 15:22:27 +02:00
ndom91
6b89ffdecf fix: bottom commitLine dashed 2024-10-16 15:22:27 +02:00
ndom91
4a3a67ffa5 feat: add seriesDividerLine between series 2024-10-16 15:22:27 +02:00
ndom91
7f63a34925 fix: rename stackingBranch* components to stackingSeries* 2024-10-16 15:22:27 +02:00
Esteban Vega
a2af3bb560
Merge pull request #5161 from gitbutlerapp/fix-input-auto-select-on-start-commit
fix: Auto-focus on 'Start commit'
2024-10-16 12:34:37 +02:00
estib
5de8266530 fix: Auto-focus on 'Start commit'
The auto-focus on the commit message input would not work, as the input would not be yet mounted.
Wait for the input to be mounted (`$expanded = true`) and then focus on it.
2024-10-16 12:24:01 +02:00
Kiril Videlov
a2506177f1
Use new integrate upstream in stacked up 2024-10-16 12:22:14 +02:00
ndom91
a738db6150 fix: dont show empty state if there are upstreamPatches 2024-10-16 12:02:14 +02:00
Sebastian Thiel
22f0e4ab36
Merge pull request #5089 from Zamoca42/feat/parse-binary-file
feat: Parse & display binary files
2024-10-16 11:36:28 +02:00
Kiril Videlov
606354abfd
Merge pull request #5159 from gitbutlerapp/branch
Fix on fix: Push button on scroll and small UI tweaks
2024-10-16 10:15:01 +02:00
Ali Houssain Sareini
caf1b92b89
Merge branch 'master' into master 2024-10-15 18:33:23 -04:00
Ali Houssain Sareini
d06593bcd1 lint 2024-10-15 18:28:44 -04:00
Pavel Laptev
bf6ef90afe style: fix double top border on Stacking lanes 2024-10-15 23:50:33 +02:00
Pavel Laptev
e6eb938dc5 refactor: Add intersection observer to lane-branches action for scroll visibility 2024-10-15 23:44:04 +02:00
ndom91
72281cb207 fix: do not allow user to generate series name after branch has been pushed 2024-10-15 22:41:14 +02:00
Kiril Videlov
202ec5ac0b If a lane has no commits and no incommited changes unapply means delete
There is nothing to keep
2024-10-15 15:04:24 +02:00
ndom91
a2c010f66a fix: don't fail if the file isn't there anymore after discarding hunk 2024-10-15 19:01:35 +02:00
ndom91
7241902704 fix: update copy for contextMenu labels 2024-10-15 18:46:05 +02:00
ndom91
1f0dca4646 feat: add 'generate branch name' to stack series header 2024-10-15 18:46:05 +02:00
ndom91
ee3c1f4023 fix: use some to express intent better in other commit cases 2024-10-15 18:17:38 +02:00
ndom91
f4dfceaa4d fix: add additional case for when to show push/force push btn 2024-10-15 18:17:38 +02:00
Pavel Laptev
3620ad6093
style(StackSeries, Stack): update padding in StackSeries and Stack components (#5154) 2024-10-15 17:55:58 +02:00
ndom91
6b90a0cbec fix: upstream label slash bug 2024-10-15 17:10:46 +02:00
ndom91
f1d2892bec fix: show only stack push btn when necessary 2024-10-15 17:04:52 +02:00
ndom91
85df49e009 feat: add stack header sticky property and new count btns 2024-10-15 16:41:01 +02:00
Pavel Laptev
c6482a94de
Improve modal UI and discard changes (#5148)
* style(modal): Update header padding and add color to body

* style: Update font color in modal body paragraphs

* feat(ui): improve DemoModal structure and props usage

* style: Remove unnecessary global styles from Modal component

* feat(ui): Update DemoModal component onclick event and add onSubmit handler

* StoryBook: Update text in DemoModal

* add missing "submit"

* modal lint/checks fixes

* Update "Discard changes" modal
2024-10-15 16:25:02 +02:00
Chooooooo
f178c4fed4
Update read_file_from_workspace logic
- Refactor `read_file_from_workspace` to separate `HEAD^{tree}` lookup logic
- Add new `read_file_from_tree` function to handle both `HEAD^{tree}` and specific commit lookups
- Add edge case handling for querying files from a specific commit in `read_file_from_workspace`
- Add conditions to handle modified or deleted files in worktree
- Improve file status handling with new `FileStatus` enum
- Update `FileInfo` struct to include file status information
2024-10-15 21:26:39 +09:00
Pavel Laptev
4d84a87f5c
Fix button type for modals (#5145) 2024-10-15 14:19:00 +02:00
Ali Houssain Sareini
f96f1ae2c3 refactor: Display selected code editor over generic Editor 2024-10-15 08:02:34 -04:00
Ali Houssain Sareini
08bd7f7129 added support for new default editor type in settings 2024-10-15 08:01:53 -04:00
Ali Houssain Sareini
f53a232052 fix lint error 2024-10-15 07:37:29 -04:00
Ali Houssain Sareini
8779cce0da rename openInVSCode to openInEditor 2024-10-15 07:37:14 -04:00
Ali Houssain Sareini
475975b0f4 added CodeEditorSettings type in settings 2024-10-15 07:35:03 -04:00
Pavel Laptev
62ffe0986d
Revert dialog modal implementation (#5143)
* rename `default` size to `medium`

* animation on close and focus trap

* focus trap fix

* fix clickoutside bug with open select

* Update focusTrap.ts

* fix check

* remove unnesessery code
2024-10-15 10:45:09 +02:00
Ali Houssain Sareini
ce3e718d29 revert BranchLaneContents removal in settings 2024-10-14 20:22:43 -04:00
Ali Houssain Sareini
e3c493a060 refactor: replace VSCode with generic editor 2024-10-14 20:05:07 -04:00
Ali Houssain Sareini
28fa6720b3 refactor: Update code editor paths to use editor from userSettings 2024-10-14 19:43:38 -04:00
Ali Houssain Sareini
0d0652c351 feat(ui): Add default code editor to settings/appearance 2024-10-14 19:43:15 -04:00
Ali Houssain Sareini
2394f38b9b refactor(settings): Add default code editor settings 2024-10-14 19:42:26 -04:00
Chooooooo
e789eb1a55
Add preview support for untracked binary files 2024-10-15 03:31:28 +09:00
Caleb Owens
22daef3681
Merge pull request #5136 from gitbutlerapp/Update-how-auth-tokens-are-passed-about
Update how auth tokens are passed about
2024-10-14 18:29:04 +02:00
Caleb Owens
5f49663265 Update how auth tokes are passed around
I forgot to run pnpm check
I forgot to run pnpm test
2024-10-14 17:31:02 +02:00
Chooooo
b4c84fdfd8
Merge branch 'master' into feat/parse-binary-file 2024-10-15 00:07:28 +09:00
ndom91
c5efb7f246 fix: dont show 'set remote branch name' option in stack header contextMenu 2024-10-14 16:40:45 +02:00
Pavel Laptev
ba2d95a338
style: button color updates (#5134) 2024-10-14 15:42:55 +02:00
Nico Domino
88611b6ab5 fix: layout updates 2024-10-14 15:40:47 +02:00
ndom91
f2fffce255 feat: add additional feature flag to disable adding multiple series within a stack 2024-10-14 15:40:47 +02:00
ndom91
5e7e87cab1 fix: hide commitList if there are no commits 2024-10-14 15:37:33 +02:00
ndom91
49a4f2581f fix: do not show upstream label when branch has not been pushed yet 2024-10-14 15:03:32 +02:00
Pavel Laptev
3fdc4d1b1e
UI: PR card tweaks (#5131)
* add tooltips

* fix kebaba size and margins
2024-10-14 14:49:54 +02:00
Esteban Vega
fdd64015b7
Merge pull request #5110 from gitbutlerapp/fix-histroy-pagination
fix: History lazy loading
2024-10-14 14:15:53 +02:00
ndom91
90ae4eccd9 fix: dont allow changing series name once pushed 2024-10-14 13:48:07 +02:00
ndom91
5724136e88 fix: change stacking header line alignment 2024-10-14 12:29:37 +02:00
Pavel Laptev
1b8cfd2723
Merge pull request #5126 from gitbutlerapp/Fix-remove-sidebar-focus-state
feat: Remove tabindex attribute from Navigation menu
2024-10-14 11:56:25 +02:00
Pavel Laptev
2797afd5c0 clear the AI description body after generation 2024-10-14 11:43:09 +02:00
Pavel Laptev
cf08814bee feat: Remove tabindex attribute from Navigation menu 2024-10-14 11:32:56 +02:00
Esteban Vega
ae283c4a65
Merge pull request #5123 from gitbutlerapp/fix-state-update-for-PR-modal-title
fix: Title state update for the PR modal
2024-10-14 11:28:17 +02:00
Pavel Laptev
c7342b1cdf
Integration modal design (#5116)
* new IntegrationListItem component

* Simple commit row added, componenets rename

* Tweak styles and `Select` update

* check fix
2024-10-14 11:10:00 +02:00
estib
e65fd1c947 fix: State update for the PR modal
The PR modals title would only be correctly updated on blur, because it was using the 'onchange' listener.
Using the 'oninput' listener fixed that.
Also: 
Only fetch the pull-request body if the modal is open
2024-10-14 10:52:52 +02:00
Esteban Vega
49a88430a2
Merge pull request #5048 from Pranav2612000/feat/4889-allow-moving-any-commit-from-stack-to-lane
[#4889] feat: allow moving any commit from a stack into another lane
2024-10-14 09:10:23 +02:00
estib
9bf6ef7995 fix: History lazy loading
Lazy loading the history side bar list items wouldn't paginate correctly.
There seems to have been two issues that caused this:
1. The intersection observer would was not initially set correctly
2. The "all loaded" flag was incorrectly set to true when clearing the history snapshots store. It should have been set to false.
2024-10-11 19:07:06 +02:00
ndom91
373ba6036e fix: add emptystateplaceholder to series header empty state
fix: update StackingBranchHeader with empty state
fix: empty state marginBottom: 10
2024-10-11 19:05:26 +02:00
ndom91
b86e171e8c fix: rename series title 2024-10-11 18:45:17 +02:00
ndom91
a38c3cc5c1 fix: always show gap on stackingstatusicon and use border radius css variable 2024-10-11 17:03:03 +02:00
estib
f71187ed05 feat: allow moving any commit from a stack into another lane
Rebasing fixes
2024-10-11 15:06:55 +02:00
Caleb Owens
316dd8d2b6 Extract persisted into a shared library 2024-10-11 11:55:07 +02:00
ndom91
902b6526bf fix: refactor historyViewToggle and add ctrl+z alias keyboard shortcut 2024-10-10 17:42:14 +02:00
Pavel Laptev
56d0fe44c8
"unnaply and drop changes" update copy, update modals UI and layout (#5092)
* update copy, update modals UI and layout

* Update BranchLaneContextMenu.svelte
2024-10-10 14:39:07 +00:00
Caleb Owens
d2034e1a5d Move context into shared 2024-10-10 15:57:16 +02:00
Caleb Owens
5b8c37f830 Move httpService into shared library 2024-10-10 15:31:17 +02:00
ndom91
8769d7c8ac fix: check stackingFeature to determine which alg to use for assigning 'localAndRemote' commit status 2024-10-10 15:43:11 +02:00
Chooooo
59513b8d99
Merge branch 'master' into feat/parse-binary-file 2024-10-10 19:52:42 +09:00
Chooooooo
a6ff493673
Code formatting 2024-10-10 19:40:06 +09:00
ndom91
9e27fea94e fix: only set upstreamName if upstreamReference exists 2024-10-10 12:31:13 +02:00
ndom91
fef2865469 fix: branch header bottom border when PR card isnt there 2024-10-10 12:31:13 +02:00
ndom91
8fa6bfc152 fix: hide upstream related btns if stack/series hasn't been pushed yet 2024-10-10 12:31:13 +02:00
Chooooooo
3c9eb56a37
Add parsing for binary files 2024-10-10 19:04:36 +09:00
Esteban Vega
979b5620a1
Merge pull request #5087 from gitbutlerapp/fix-Set-the-system-prompt-separately
fix: Set the system prompt for Anthropic
2024-10-10 11:59:42 +02:00
Caleb Owens
c46eb573a9
Merge pull request #5079 from gitbutlerapp/Add-a-shared-package
Add a shared package
2024-10-10 11:52:15 +02:00
estib
9e2e13ae82 fix: Set the system prompt for Anthropic
The System Prompt for Anthropic needs to be set in a separate field.
Split that as well when using Anthropic through the Butler AI API.
2024-10-10 11:50:15 +02:00
ndom91
4e051e16ed fix: status icon for series header 2024-10-10 11:12:53 +02:00
ndom91
89f630e7b3 fix: inline updating of series name 2024-10-10 11:10:24 +02:00
Mattias Granlund
27c23c7627 Capture stack usage metrics 2024-10-10 10:50:56 +02:00
Kiril Videlov
03247b7e22
Merge pull request #5082 from gitbutlerapp/more-pr-details-followups
Conflict Resolution: Add a confirmation modal
2024-10-10 10:37:45 +02:00
estib
936ec01e8f Conflict Resolution: Add a confirmation modal
If attempting to resolve conflicts on non-acestor-most commits, the user will be prompted to confirm whether they actually want that or not.
2024-10-10 10:30:29 +02:00
estib
31f929269f fix: Commit Input: Update the typing of the text areas
Update the typing of the text areas components inside the commit message input component.
Also add guards against them being undefined
2024-10-10 10:14:41 +02:00
Esteban Vega
857cf7816c
More PR details follow-ups (#5073)
- Add a dedicated 'open PR in browser' button
- Fix the description generation in the modal
2024-10-10 00:02:01 +02:00
Caleb Owens
eead534ab7 Add a shared package 2024-10-09 23:06:31 +02:00
Esteban Vega
e28a4b697c
Merge pull request #5069 from gitbutlerapp/user-mail-is-optional 2024-10-09 22:50:00 +02:00
ndom91
95767ab474 fix: rm 'create branch'/'push ref' btns from stacking commit card 2024-10-09 21:44:20 +02:00
ndom91
ebcfa9f9a0 fix: harmonize commitStatus types and ensure correct color commitCard and branchHeader are rendered
fix: eslint
2024-10-09 21:44:20 +02:00
ndom91
6e631d8ea4 fix: correctly color branch header 2024-10-09 21:44:20 +02:00
ndom91
b4deaae012 fix: do not group commits in stacking mode series rendering 2024-10-09 21:44:20 +02:00
ndom91
3a642c750f fix: pass only 'upstreamPatches' and 'patches' from the current series to commitList 2024-10-09 21:44:20 +02:00
Caleb Owens
5071cc40ff LIst conflicted files in commit files list 2024-10-09 20:21:57 +02:00
Caleb Owens
3ba4261599 Commit uncommit 2024-10-09 19:35:05 +02:00
Kiril Videlov
3978476b78 Add an extra field remote_commit_id on the API type VirtualBranchCommit
This makes it possibe (and easy) for the UI to determine if there is another (different) commit on the remote for the same patch
2024-10-09 18:15:10 +02:00
Pavel Laptev
e05c1a4a08
Move dummy UI and minor code refactor (#5061)
* update: storybook styles

* fix: Link button prop

* move borderless textarea to UI

* add: BorderlessTextarea story

* remove unused `autoHeight`

* simplify "Props" names

* migrate to Svelte 5: EmptyState component

* fix: autofocus when open the branches search

* eslint

* lint fixes

* lint fixes

---------

Co-authored-by: estib <stron@me.com>
2024-10-09 17:00:35 +02:00
Nico Domino
531cbde1ff
fix: stackingCommitList reorder-dropzone and "add empty commit" btn rendering (#5066) 2024-10-09 16:59:37 +02:00
estib
8860622ff4 User: Make email optional
When authenticating with some IdPs, email doesn't get shared.
In that case, trying to authenticate would just throw a Rust-end error to the users.
This fixes that
2024-10-09 16:43:00 +02:00
ndom91
7858230812 fix: disable deleting series if there is only 1 2024-10-09 15:39:58 +02:00
ndom91
e5fbb18883 fix: reorient new series name modal action btns 2024-10-09 15:39:58 +02:00
Caleb Owens
82b58b6875 Make edit mode fantastic 2024-10-09 15:27:20 +02:00
Caleb Owens
39f9f50296 Float unconflicted files in edit mode 2024-10-09 11:21:51 +02:00
Caleb Owens
12782d5229
Merge pull request #5000 from gitbutlerapp/pr-5000
FEARLESS REBASING
2024-10-08 16:49:51 +02:00
Esteban Vega
72e981f8cc
pr details follow up (#5054)
* PR Details: CMD or Ctrl + Click opens the browser

* Segment: Optionally make it unfocusable

Control whethe the segment can be focused on tab, or not

* PR Details: Remove unused 'e' handler

* Borderless Textarea: Ability to autofocus

Optionally, autofocus the input field on mount

* PR Details: Update focus behavior

- Focus on the title input filed on mount
- Make the segments unfocusable

* design update

* Update PrDetailsModal.svelte

---------

Co-authored-by: Pavel Laptev <pawellaptew@gmail.com>
2024-10-08 15:50:43 +02:00
Caleb Owens
45fbb1af76 Remove old update_base_branch code 2024-10-07 17:46:28 +02:00
Caleb Owens
2f33d618d5 Remove succeeding rebase flag from the frontend 2024-10-07 17:31:08 +02:00
Pavel Laptev
f6621ba4d5 copy update 2024-10-07 14:33:22 +02:00
estib
efcfe0954e PrDetailsModal: Display the actualy body
- Display the actual body value
- Generate the message on `shift` + `cmd` + g
2024-10-07 14:14:38 +02:00