Commit Graph

662 Commits

Author SHA1 Message Date
ndom91
2af2e34bc0 feat: finish implementing upstream commits accordion 2024-10-04 12:43:26 +02:00
Mattias Granlund
8bdeb3f635 Cleanup experimental stacking feature
- initial "new stacking branch" card
- persist setting for show stacking details
- separates out individual branch / pr header
- stack files in separate folder
- implements upstream commits accordion
2024-10-04 12:43:26 +02:00
estib
94fa0fed5d fix: Update the type of the drop down button
Fix up the type of variable used to refernce the drop down button in the PR button component
2024-10-03 11:58:01 +02:00
Pavel Laptev
47c0bad9ac
fix: diff example "added/deleted" lines (#5023) 2024-10-03 00:22:00 +02:00
Esteban Vega
c4fc0923ce
Merge pull request #5017 from gitbutlerapp/add-scroll-area-to-the-edit-mode
Edit mode: Add a max height and scrollable container
2024-10-02 13:28:19 +02:00
Pavel Laptev
3b280597fa layout update + remove "ActionView" component 2024-10-02 12:07:11 +02:00
Mattias Granlund
3008244201 Fix errors that appeared after svelte plugin upgrade 2024-10-02 11:26:15 +02:00
Mattias Granlund
332bbb3c1d Fix bind:this={} for Svelte5 components
- needs `ReturnType` and `typeof` to work correctly
- svelte-check does not recognise this type bug yet
- vscode svelte plugin started complaining a week ago
2024-10-02 11:25:31 +02:00
Pavel Laptev
3470a73999 header "files amount" badge added 2024-10-02 11:21:16 +02:00
estib
88b0f204bf Edit mode: Add a max height and scrollable container
In order to be able to display large edit mode files list without having to scroll the whole page to the bottom, add a scrollable container to the commits file list
2024-10-02 10:01:52 +02:00
estib
7ce815a7ca Markdown: Add BR and strong
Add new-line and bold-text rendereres for the Markdown component
2024-10-01 17:15:31 +02:00
estib
924706092b ai: Enable streaming
Ability to stream the LLM responses into the UI.
2024-09-28 13:17:37 +02:00
estib
0f05b435ba Result: Add async transformer 2024-09-28 13:15:44 +02:00
estib
76dd98b982 Add Anthropic SDK 2024-09-28 13:13:43 +02:00
estib
3424f7781b ai: Add PR description method
Add a method to the AI service that takes in some context about a PR and creates a description body out of it
2024-09-26 15:25:41 +02:00
Pavel Laptev
4fd1712994
Small UI updates (#5006)
* design tokens update

* update "update" icon

* increase button icons contrast

* Fix: button layout

* made "fast" transition variable even faster

* update "virtual-branch-small" icon

* bigger file icons, remove "fileName" property

- Larger file icons.
- The file path label in the "FileListItem" included the file name, but it should only contain the folder path.
- Since the "filePath" string already includes the file name, it's easier to split it within the "FileListItem" component, rather than passing the file name as a separate prop.
2024-10-01 16:08:03 +02:00
estib
945f991ad3 Edit mode: Open the conflicted files in the IDE
Add the ability to right-click a file in the list to open it in the selected IDE.
Also add a button that opens all the conflicted files automatically.
2024-09-30 19:11:51 +02:00
estib
a169b41594 fix: Correctly detect conflicted files
Correctly detect and display whether the commit file is conflicted in the edit mode page
2024-09-30 18:38:20 +02:00
Pavel Laptev
85e32fd4e2
Custom font support for displaying diffs (#4991)
* replace hardcoded "font-family"

* "Diff font" option in User Settings

* Update +page.svelte

* Update +page.svelte

* added "allow font ligatures" option

* copy update

* Update +page.svelte

* remove console.log

* Appearance settings: Reorder the settings 

Move down the font family the input into its dedicated section

* Graduate inline diffs to standard setting

The option to display inline integrated diffs in the hunk viewer is no longer an experimental option, but an 'stable' appearance setting option.

---------

Co-authored-by: estib <stron@me.com>
2024-09-30 12:58:39 +02:00
Nico Domino
d10bbcf515
feat: new stacking ui commit lines (#4972)
Co-authored-by: Pavel Laptev <pawellaptew@gmail.com>
2024-09-28 16:59:29 +02:00
estib
0f6a78e1b6 fix: Test for integrateUpstreamModal being undefined
Don't try to read a property from the integration modal if it's undefined
2024-09-28 11:00:33 +02:00
Navtoj Chahal
26b99e217e
Disable Hidden Input Interaction 2024-09-26 19:39:02 -07:00
Esteban Vega
598d60fbed
Merge pull request #4971 from gitbutlerapp/make-select-generic 2024-09-24 20:06:00 +02:00
Esteban Vega
60c33f135e
Merge pull request #4970 from gitbutlerapp/clean-up-update-base-button
clean-up: Remove unnecessary function declaration
2024-09-24 16:55:12 +02:00
Nico Domino
a7325e4d2d
fix: log and show toast (#4965) 2024-09-24 16:03:02 +02:00
estib
0f7b9f4d9c Make the Select component generic
Auto-detect the type of the value the select options can have
2024-09-24 15:43:46 +02:00
estib
9f6672b4e3 clean-up: Remove unnecessary function declaration 2024-09-24 14:19:50 +02:00
estib
adc6357a80 Use the exposed state of the integrate upstream modal
Export the state of whether the modal is open or not.
Use it in the base branch page and the update base button.
2024-09-24 13:37:58 +02:00
estib
536dfac6e4 IntegrateUpstreamModal: Factor out the modal
Factor out the modal for upstream integration into a dedicated component so that it can be shared easily
2024-09-24 09:54:13 +02:00
Caleb Owens
7c9401dd49
Merge pull request #4781 from gitbutlerapp/Fix-snapshot-details-transformer
Fix snapshot details transformer
2024-09-24 12:34:08 +02:00
Kiril Videlov
4c11a96456
Merge pull request #4962 from gitbutlerapp/Fix-state-for-file-selections-not-propagating
Fix state for file selections not propagating
2024-09-24 09:33:19 +02:00
Caleb Owens
9c23e577ba Constrain FilIdSelection API 2024-09-23 21:00:53 +02:00
Caleb Owens
edc0bd1a1d Fix state for selections not propagating 2024-09-23 20:26:34 +02:00
Nico Domino
82099fe43e
fix: submit commit title/desc with ctrl+Enter everywhere (#4958) 2024-09-23 16:16:30 +02:00
Esteban Vega
69b304bc33
Merge pull request #4948 from gitbutlerapp/conflict-fix-commit-info
Display the author and commit title in the edit mode
2024-09-23 14:43:18 +02:00
estib
22e7f46950 refactor: replace custom entries with Object.entries
Remove custom entries utility and replace its usage with 
Object.entries across hotkeys and branch utility files.
2024-09-23 12:21:18 +02:00
Pavel Laptev
edbc8eb3a3
Small UI fixes (#4950)
* fix the hunk header font-weight

* Text case fix

* Update sections order

* Fix "Full data synchronization" layout and toggles
2024-09-19 14:09:29 +02:00
estib
c15dbbf083 Edit Mode page: Display commit info
Display information about the commit in the edit mode page
2024-09-19 14:02:05 +02:00
estib
838002fa06 Commit service
Create a service that enables searching inside a project for a commit information by its ID
2024-09-19 14:01:03 +02:00
Nico Domino
cdae30d1a9
fix: use pull request template form (#4946) 2024-09-18 10:01:34 +00:00
estib
ccf7106f49 Update the hunk locking style
Update it following the feedback from Discord: https://discord.com/channels/1060193121130000425/1224366824305463337/1285608946870124617
2024-09-18 09:18:49 +02:00
Kiril Videlov
a01cac1baa
Merge pull request #4938 from gitbutlerapp/hunk-column-changes
fix: File section max line number & simplify hunk header calculation
2024-09-18 08:34:01 +02:00
Kiril Videlov
089af8e111
Merge pull request #4933 from gitbutlerapp/hunk-locking-design
HunkDiff: Display a lock if needed
2024-09-18 08:33:06 +02:00
Pavel Laptev
4f94be5439 refactor: Improve label for unapplying changes in BranchLaneContextMenu 2024-09-17 22:14:18 +02:00
estib
aecae8e2bf
fix: File section max line number & simplify hunk header calculation
- Fix a bug in which the max lines would not be taken into account when checking what the biggest line number in a hunk section.
- Simplify the calculation of the header width for the HunkDiff component
2024-09-17 17:15:09 +02:00
estib
cc6c8b9bec fix: Don't override the user settings
The user settings would not be correctly updated because multiple places were reloading it

This fixes the issue https://github.com/gitbutlerapp/gitbutler/issues/4931
2024-09-17 16:49:34 +02:00
Caleb Owens
69487faafa
Merge pull request #4935 from gitbutlerapp/Remove-BS-services
Remove BS services
2024-09-17 16:47:59 +02:00
Caleb Owens
beea22bcc3 Remove BS services 2024-09-17 16:46:08 +02:00
estib
8b2ea87ed5 HunkDiff: Display a lock if needed
Show a lock icon if the hunk in question is locked to this lane
2024-09-17 15:16:59 +02:00
Nico Domino
6476a1c754
feat: use new Tabs components to organise Preferences page (#4906) 2024-09-17 11:22:17 +02:00
Caleb Owens
b6a4f7cd35 Improve scrolling of update modal 2024-09-16 20:50:45 +02:00
estib
7dbadb13a9 Get the upstream name from the pushed virtual branch
Once the push of a virtual branch succeeded, return the ref name and the remote name in order to correctly determine which branch name to create a PR from.
2024-09-16 18:15:06 +02:00
Esteban Vega
5b34cc75bd
Merge pull request #4925 from gitbutlerapp/commit-context-menu
Add commit context menu
2024-09-16 17:31:59 +02:00
estib
a9c58aa35a fix: Extract the name from the remote ref correctly
Correctly extract the name of the remote branch, supporting branch names with nested paths

Also: Add tests
2024-09-16 16:05:12 +02:00
estib
d712fa88d1 Add commit context menu
Add a context menu to the commit card
2024-09-16 15:32:11 +02:00
estib
1398f6853b improvement: Default the selection of the project remote
The remote for a new project will default to the remote of the selected branch. It can be overwritten if needed.
2024-09-16 14:10:10 +02:00
estib
9772c02edc Base Branch Service: Type the remote branch information 2024-09-16 14:03:33 +02:00
estib
75defc2ae6 Array utils: unique items 2024-09-16 14:00:05 +02:00
estib
2dae466162 Branch Utils: enhance branch utilities with ranking functions
Add functions to determine the best branch and best remote. Implement a branch ranking system based on exact matches and suffix matches to better 
prioritize branches.
2024-09-16 13:59:17 +02:00
Nico Domino
a0b83556d2
feat: create 'Apperance' settings page and add highlight branchlane setting (#4921)
Co-authored-by: Pavel Laptev <pawellaptew@gmail.com>
2024-09-16 12:49:28 +02:00
Nico Domino
d7c00a0b9f
fix: rm effect.pre used only to avoid previous bug (#4919) 2024-09-16 12:20:34 +02:00
Mattias Granlund
02d6b6db9e Fix mistake in push failure error capature 2024-09-16 11:58:31 +02:00
estib
c9a5d7a75d Branch file list: Remove comments about actions 2024-09-16 11:42:04 +02:00
estib
08fb9effc4 Merge remote-tracking branch 'origin/master' into keyboard-shortcuts 2024-09-16 11:40:23 +02:00
estib
79e25de197 fix: actions initialization for CommitDragItem
Use a derived store to compute actions based on the branch and commit, 
removing the need for a side effect. This enhances readability and 
ensures that actions are updated reactively whenever dependencies change.
2024-09-16 10:33:16 +02:00
Mattias Granlund
97d117bb02 Improve push failed error analytics
- error message was not being included
2024-09-16 10:20:14 +02:00
Kiril Videlov
def3692df8
Merge pull request #4917 from gitbutlerapp/fix-pr-infinite-loop
fix: Don't update the state with the pre-effect
2024-09-16 10:10:00 +02:00
Esteban Vega
5faa0ac1b5
Merge pull request #4916 from gitbutlerapp/fix-file-selectability
fix: Only allow hunk selection in uncommited files
2024-09-16 10:08:35 +02:00
estib
3eadc2e743 fix: Don't update the state with the pre-effect
It seems like this would lead to an infinite loop in some cases
2024-09-16 10:03:29 +02:00
estib
2467b87fda fix: Only allow hunk selection in uncommited files
Files hunks from the commits should not be selectable
2024-09-16 09:50:59 +02:00
Pavel Laptev
8ec4fbdd67 few CSS fixes 2024-09-15 23:07:04 +02:00
estib
2bf882676f fix HunkDiff borders
The borders move with the hunk diffs
2024-09-15 10:49:47 +02:00
Pavel Laptev
1c70cdc3f4
Fixes scroll on drag (#4913)
* remove old tailwind CSS class

* fix `onDestroy` lifecycle error

* fix scroll glitch for changed files while dragging
2024-09-14 17:43:06 +02:00
Esteban Vega
1a47f5ec4d
Merge pull request #4850 from gitbutlerapp/ndom91/use-template-dropdown
fix: refactor pr template path input to pre-filled `Select` instead of `TextBox`
2024-09-13 17:25:58 +02:00
Caleb Owens
edd0cbe0e6 Rename unapplying 2024-09-13 16:58:42 +02:00
Nico Domino
c952ffee65
Merge branch 'master' into ndom91/use-template-dropdown 2024-09-13 16:28:58 +02:00
Caleb Owens
ce2aa91385 feat: Add onclick prop to DefaultTargetButton
Add onclick prop to DefaultTargetButton component to enable
button functionality. This change allows the component to handle
click events and perform specified actions when the button is
clicked.
2024-09-13 16:07:25 +02:00
ndom91
147a8aafcd fix: tweak copy 2024-09-13 12:56:08 +02:00
ndom91
d1d2e0c80b fix: cleanup pr template method names 2024-09-13 12:10:07 +02:00
ndom91
e8bb66c151 fix: use relativePath and get project basePath on rust side 2024-09-13 12:01:03 +02:00
ndom91
d14b6496b1 fix: rename githost form 2024-09-13 11:29:24 +02:00
ndom91
907bbe838d fix: more conflict clean up 2024-09-13 11:17:04 +02:00
ndom91
e842b282ae fix: merge conflicts 2024-09-13 11:15:06 +02:00
Mattias Granlund
eec288548a Remove displayed remoteRef from commit card 2024-09-12 18:38:09 +02:00
Mattias Granlund
8aafd8345d Show pr card for commit group if such exists 2024-09-12 18:38:09 +02:00
Mattias Granlund
1b175bb119 Re-use push button with snippet 2024-09-12 18:38:09 +02:00
Mattias Granlund
ab08bb9a47 Render one commit list per commit group 2024-09-12 18:38:09 +02:00
Mattias Granlund
5b3dff9634 Toggle feature by typing s t a c k 2024-09-12 18:38:09 +02:00
Mattias Granlund
bd7be6a759 Convert CommitList to svelte5 component 2024-09-12 18:38:09 +02:00
Mattias Granlund
6a7ae9dcb3 Add stack grouping function 2024-09-12 18:38:09 +02:00
Mattias Granlund
35b3991ab8 Use modified branch header whens stacking is enabled 2024-09-12 18:38:09 +02:00
estib
5395d00a1a Merged origin/master into keyboard-shortcuts 2024-09-12 14:47:17 +02:00
Caleb Owens
3c61856481
Merge pull request #4894 from gitbutlerapp/improve-topics
improve topics
2024-09-12 14:12:41 +02:00
Caleb Owens
bd1cc06af2 Use pagination API for querying labels 2024-09-12 14:06:12 +02:00
Caleb Owens
c78fe929d9 Improve topics just a tad 2024-09-12 13:56:18 +02:00
Nico Domino
3bc54fcad0
fix: rm unnecessary extra markdown wrapping class (#4893) 2024-09-12 11:38:50 +00:00
Caleb Owens
db992dedfa
Merge pull request #4869 from gitbutlerapp/update-api
Update api
2024-09-12 13:23:05 +02:00
Nico Domino
3a478b4f15
fix: reactive markdown rendering (#4888) 2024-09-12 09:53:21 +00:00
estib
5352eb1717 Merged origin/master into keyboard-shortcuts 2024-09-12 09:13:39 +02:00
Pavel Laptev
7c0a3766af usused CSS removed 2024-09-12 02:03:22 +02:00
Pavel Laptev
8723bd5c17 selected hunk colors update 2024-09-12 01:48:01 +02:00
Pavel Laptev
96d52014e0 Fix hunk header styles
- There was an issue with borders on scroll
- Fix the hunk header paddings
- replaced `box-shadow` with borders. Looks like it's not longer an issue
2024-09-12 01:29:28 +02:00
Pavel Laptev
e4df03aa50 remove unused code 2024-09-12 01:27:41 +02:00
Pavel Laptev
965118de7a Remove duplicated hunk inf and replace indicators with infomessages 2024-09-11 23:29:10 +02:00
Nico Domino
4700d5b2f1
fix: improve deeply nested token rendering (#4883) 2024-09-11 18:36:57 +02:00
estib
5137517650 BranchFilesList keybindings: Select all files
Select all files with meta-key + 'a'.
Also, `fileIdSelection` will make sure that the no duplicates are added to the selection
2024-09-11 17:31:33 +02:00
estib
d41827c9d1 BranchFilesList keybindings: Stage and unstage files
Stage or unstage the files by pressing the space-bar on the selected files.
Click enter to focus on the commit message input field
2024-09-11 17:20:56 +02:00
estib
f3b3649bca Merged origin/master into keyboard-shortcuts 2024-09-11 17:03:04 +02:00
Caleb Owens
d76d900a7e
Fix janky generics 2024-09-11 16:00:04 +02:00
estib
b8c60adc64 Merge branch 'master' into keyboard-shortcuts 2024-09-11 15:50:07 +02:00
estib
c3273c10fe Commit Input: Control focus behaviors
Add the ability to control externally when the commit message text input is focused.

Also:
Opent the commit input when a file is selected and the space bar is pressed
2024-09-11 15:43:38 +02:00
Esteban Vega
c4686bbf63
Merge pull request #4859 from gitbutlerapp/check-boxes-behavior
Improve the file list checkboxes behavior
2024-09-11 15:43:18 +02:00
estib
4c93b3632e Clean-up: Remove console log 2024-09-11 15:40:10 +02:00
Caleb Owens
aeea013ba0
Update base branch button feature flagged 2024-09-11 15:18:20 +02:00
estib
b08fb7d101 Commit Input: Close on 'Escape'
Pressing 'Escape' will close the commit input file
2024-09-11 14:30:29 +02:00
Esteban Vega
2d8b82309d
Merge pull request #4876 from gitbutlerapp/file-navigation
fix: File key navigation and selection
2024-09-11 14:28:43 +02:00
Nico Domino
0595319405
fix: rm unnecessary Space.svelte and add List/ListItem (#4874) 2024-09-11 13:59:08 +02:00
Nico Domino
a1ff2079db
fix: createPr arguments order (#4878) 2024-09-11 11:43:26 +00:00
estib
390119e009 fix: File key navigation and selection 2024-09-11 12:19:52 +02:00
Pavel Laptev
25c2f516fd
style: Updated box-shadow to use custom variable in ContextMenu and Select components (#4870) 2024-09-11 12:12:10 +02:00
Caleb Owens
191686ec4d
Ahhh, don't loose shit 2024-09-11 11:23:20 +02:00
Caleb Owens
f5477a502b
Issues 2024-09-10 22:35:02 +02:00
estib
aaae6e605c HunkDiff: Udpate the diff table style 2024-09-10 19:52:35 +02:00
ndom91
09b02feb78 fix: wire up prService template fns correctly 2024-09-10 19:29:24 +02:00
ndom91
b7a037b1dc fix: move new template methods to PRService 2024-09-10 19:18:42 +02:00
ndom91
781fbb5a13 fix: merge conflict 2024-09-10 18:55:45 +02:00
ndom91
f53b5b8f2e chore: more cleanup 2024-09-10 17:34:22 +02:00
ndom91
4aa9e96ced fix: use pullRequestPath as boolean 2024-09-10 17:24:51 +02:00
ndom91
eecea80884 fix: read pr tempalte from disk 2024-09-10 17:14:35 +02:00
ndom91
aaa3dbae5d chore: revert github: pnpm dependency string 2024-09-10 15:13:33 +02:00
ndom91
da8d4d791b chore: test removing protocol in package.json github entries 2024-09-10 14:41:21 +02:00
ndom91
3175174c43 fix: test https+github protocol in package.json 2024-09-10 14:37:50 +02:00
ndom91
bfcc4abc26 chore: add notes to other githost types 2024-09-10 14:02:11 +02:00
ndom91
25bbe28411 fix: cleanup and pass absolute path from rust to FE 2024-09-10 13:55:18 +02:00
ndom91
e888025499 fix: move PrTemplate fns to gitHost 2024-09-10 12:22:02 +02:00
estib
ba021da232 PR service: Initialize it only with the base branch
Re-write the PR service interface in order to set the upstream branch when creating the PR, not the service.
2024-09-10 11:16:03 +02:00
estib
041344bab5 Utils: Create branch module
Add a branch utilities module with a function that retrieves the branch name from a reference
2024-09-10 11:09:20 +02:00
Kiril Videlov
23cd9b0e97
fix ci lol 2024-09-10 16:38:12 +02:00
Pavel Laptev
85462206a4
Edit mode UI updates (#4862)
* Show full status tag only if file modified

* tooltip to the page added
2024-09-10 11:35:17 +02:00
ndom91
bfe299aa98 fix: cleanup and PR review 2024-09-10 10:37:15 +02:00
estib
94b4744c3f Move the error logging to the Branch controller 2024-09-10 09:19:33 +02:00
ndom91
a5fb400985 fix: simplify setting git_host default settings in projects.json 2024-09-09 15:35:15 +02:00
ndom91
22f71c2a58 fix: rename get_pr_templates fn to github specific 2024-09-09 15:22:05 +02:00
ndom91
e0c2bdfe14 fix: eslint BranchHeader import-order 2024-09-09 14:57:41 +02:00
ndom91
8efe6c7a71 fix: cleanup createPr arguments and types 2024-09-09 14:02:59 +02:00
estib
8c22b6c0d1 Update Ownership class
Rename the `Ownership` class to `SelectedOwnership`, as it is only used to determine the selected state of the files to add to a commit.

Renamed the methods as well to convey their actual purpose.

The `SelectedOwnership` class will be updated in a way that the selected is persisted across file/hunk ownership updates
2024-09-09 13:53:57 +02:00
ndom91
8986dc3e12 fix: refactor template inputs to being passed to 'createPr' fn 2024-09-09 13:49:46 +02:00
estib
7bb3c7c9cf BranchFilesList: Clean-up and prefer Svelte 5 APIs
Refactor and clean-up the component, so that the newer, more readable Svelte 5 state APIs are used
2024-09-09 12:00:34 +02:00
estib
660c555cd9 Move chunk to array utilities
Deduplicate and move the chunk utility into the array utilities module
2024-09-09 11:56:03 +02:00
ndom91
c5ede5ce79 fix: use correct relative path when sending to GH 2024-09-08 18:49:35 +02:00
ndom91
d7badd82a5 fix: enable saving git_host settings to projects.json 2024-09-08 18:34:45 +02:00
ndom91
32f13df06d fix: handle old projects which dont have git_host project settings key 2024-09-08 18:23:05 +02:00
ndom91
b43e9312cb fix: sync selected values with GitHost preferences form 2024-09-08 18:19:23 +02:00
ndom91
460e19299a fix: refactor out use of Persisted store values for pr template boolean and path 2024-09-08 18:11:39 +02:00
ndom91
6b55fa56ba fix: simplify getAvailablePullRequestTemplate args 2024-09-08 18:11:03 +02:00
ndom91
216f5b40f3 fix: update Select to use correct label and value in dropdown 2024-09-08 17:42:36 +02:00
ndom91
3c812cb963 fix: move getAvailableTemplates functionality from project service to github service 2024-09-08 17:42:08 +02:00
ndom91
a02d80807d fix: rm textinput in GitHostForm 2024-09-08 16:48:30 +02:00
ndom91
6396bfea45 fix: cleanup 2024-09-08 16:39:19 +02:00
ndom91
bbe9249a01 fix: git paths 2024-09-08 16:34:58 +02:00
ndom91
e2bb456f7d feat: initial template dropdown support 2024-09-08 16:16:09 +02:00
estib
0a6493087b FileListItem: Track whether all or some hunks have been selected
If only some of the hunks have been selected, display the file checkbox as indeterminate
2024-09-08 12:21:49 +02:00
estib
d7c8c78100 Utils: Check for array items compliance
Create a module for array utilities.
Add a function that determines what amount of items in an array satisfy a condition
2024-09-08 12:18:56 +02:00
estib
d3c1ed8ed4 Style: Checkbox indeterminate state
Make it so that the indeterminate state of the checkbox matches the selected style
2024-09-08 12:16:56 +02:00
estib
a904bcc567 Commit List: Allow force push when removing commits
Display the force-push action button even when only removing "localAndRemote" commits.
2024-09-06 17:30:28 +02:00
Kiril Videlov
db2f33a2ef
remove incorrect placeholder 2024-09-09 13:12:18 +02:00
Nico Domino
68f0a3c288
fix: use our own open-rs implementation instead of relying on tauri's "shell-open" (#4748)
Co-authored-by: Yerke Tulibergenov <yerke@squareup.com>
Co-authored-by: Caleb Owens <caleb@gitbutler.com>
Co-authored-by: Pavel Laptev <pawellaptew@gmail.com>
Co-authored-by: Mattias Granlund <mtsgrd@gmail.com>
Co-authored-by: Sebastian Thiel <sebastian.thiel@icloud.com>
Co-authored-by: GitButler <gitbutler@gitbutler.com>
2024-09-07 19:28:50 +02:00
estib
33eb64392f Clean-up: BranchLaneContextMenu: Remove console.log 2024-09-06 15:55:28 +02:00
Nico Domino
32d766c2d6
fix: bump all svelte related dependencies (#4828) 2024-09-06 12:25:41 +02:00
Esteban Vega
710308b4ea
Merge pull request #4832 from gitbutlerapp/fix-create-pr-button
fix: Disable the PR button if there is no GitHub integration
2024-09-06 11:14:05 +02:00
Esteban Vega
cb6cdf794f
Merge pull request #4834 from gitbutlerapp/clean-up-select-component
Clean-up: Remove anti-pattern from the Select component
2024-09-06 11:11:44 +02:00
estib
bde8c52477 fix: Project Not Found page
After successfully untracking the missing project, display the correct messages (whether the success or failure to untrack).
Also, update the projects list accordingly
2024-09-06 09:43:10 +02:00
estib
057df19c9d Clean-up: Remove anti-pattern from the Select component
Instead of updating the state through an effect, factor out the `searchValue` state variable into the parent component, and only derive the filtered options from it
2024-09-05 15:25:29 +02:00
Esteban Vega
3c0f67300d
Merge branch 'master' into fix-create-pr-button 2024-09-05 13:54:26 +02:00
Kiril Videlov
a3800459c3
Merge pull request #4833 from gitbutlerapp/Fix-broken-error-page
Fix broken error page
2024-09-05 13:46:33 +02:00
Mattias Granlund
13be25f3e5 Fix broken error page
- nested if condition left the page blank
2024-09-05 14:20:55 +03:00
estib
5e05cd787c fix: Disable the PR button if there is no GitHub integration
If there is no GitHub integration, correctly disable the create PR button
2024-09-05 12:10:12 +02:00
Esteban Vega
3b0a2761e0
Merge branch 'master' into unapply-only-hunks-from-lane 2024-09-04 18:19:08 +02:00
Nico Domino
36e98459a2
feat: add support for custom pull request template paths (#4814) 2024-09-04 17:25:30 +02:00
Esteban Vega
768c9470ad
Merge branch 'master' into unapply-only-hunks-from-lane 2024-09-04 17:21:09 +02:00
Esteban Vega
e06e93efbf
Merge pull request #4826 from gitbutlerapp/improve-commit-text-input
Improve the commit text content experience
2024-09-04 14:40:39 +02:00
estib
ee238fdfd1 Improve the commit text content experience
Pressing enter on from the title will behave in the expected way, pushing down the content into the description box
2024-09-04 14:21:02 +02:00
Esteban Vega
43346053c5
Merge branch 'master' into fix-select-update-error 2024-09-04 11:37:50 +02:00
Esteban Vega
924cc5df1e
Merge pull request #4813 from gitbutlerapp/remove-missing-repo
Can remove repository if it's missing, from the error boundary page
2024-09-04 11:32:56 +02:00
Pavel Laptev
ab2a9ccc9f
fix: Update rootMargin values to include units in CommitAction and GroupHeader components (#4822) 2024-09-04 09:08:58 +01:00
estib
23a5bb7ee4 Connect the project methods to the new components
Plug in the newly implemented methods to the new designs
2024-09-03 17:08:21 +02:00
estib
fa4727dcb7 fix: Update the select options correctly
The Select component options are a prop that initializes the state variable `filteredOptions`. 
The issue was, that if the prop is updated, the state variable doesn't seem to be updated as well.
This fixes that by manually updating the state variable whenever the prop updates.
2024-09-03 17:06:06 +02:00
Pavel Laptev
cc60ed1ea0 Added ProjectNotFound screen + small layout updates 2024-09-03 11:45:33 +02:00
estib
34e102f336 Only discard the files changes inside the lane
When using the file context menu inside a given lane to discard the changes, only the changes to that file inside the lane should be discarded.
Any other changes to that same file that live in other lanes are kept
2024-09-03 11:34:19 +02:00
Pavel Laptev
6530284a80
fix: hovering animation (#4816) 2024-09-03 00:26:30 +02:00
Mattias Granlund
5f9c2e5832 Rename gitbutler/integration -> gitbutler/workspace 2024-09-02 20:53:19 +03:00
estib
636b065279 Ability to relocate project, if missing
Optionally, the path of a project can be manually updated if moved
2024-09-02 17:42:07 +02:00
estib
c784ff7194 Use the user error codes directly
Don't reimplement the user error handling scheme, and just extend what's there.
2024-09-02 16:45:00 +02:00
estib
df57f8bc28 Augment the project page errors with codes
Add the error code to the project page error for a better, more granular error handling
2024-09-02 16:39:45 +02:00
estib
105ad7d0fa Resolve linting errors 2024-09-02 15:18:31 +02:00
estib
8192b4e5fa Reuse the RemoveProjectButton component
Adapt the component so that the modal is optionally bypassed
2024-09-02 15:04:38 +02:00
estib
be89f303d2 Can remove repository if it's missing 2024-09-02 14:44:03 +02:00
Pavel Laptev
444b03ff38
style(sidebar): Update padding and color for PR tags in SidebarEntry (#4811)
* style(sidebar): Update padding and color for PR tags in SidebarEntry

* Tooltip update
2024-09-02 12:51:30 +02:00
Pavel Laptev
5821d92b77
Replase checkbox with toggle + copy update (#4810) 2024-09-02 08:49:27 +02:00
Pavel Laptev
c820a33e41
Tooltip-refactoring-+-new-component (#4804)
* tooltip component + custom svelte transitions

* update some tooltips

* replace old toogle

* replace old tooltip hook

* remove old tooltip hook

* lint fixes

* design tokens update
2024-09-01 20:30:36 +02:00
Mattias Granlund
98c3f5d310 Fix copiedFromRemoteId bug
- correctly shows commits as rebased when changeId is missing
- setting relatedTo is sufficient, no need to touch `get status()`
2024-09-01 15:33:35 +03:00
ndom91
de310a203d fix: isDeleting branch behaviour in BranchPreviewHeader 2024-09-01 14:18:04 +03:00
ndom91
5e5c8cb289 fix: rename loadingDelete => isDeleting 2024-09-01 14:18:04 +03:00
ndom91
fc31c5e262 fix: set branch delete modal action btn to loading=true when appropriate 2024-09-01 14:18:04 +03:00
Nico Domino
c2a662edf3
fix: extract Board empty state into own component (#4796) 2024-08-30 11:48:55 +00:00
Pavel Laptev
fe3c73ccfd
FileListItem fix (#4799)
* show lock icons and lock tooltip

* replace state with derived

* allow to drag files
2024-08-30 13:11:23 +02:00
Kiril Videlov
2c7773a6cd
Merge pull request #4793 from Byron/git2-to-gix
performance improvements and bug fixes
2024-08-30 12:53:26 +02:00
Kiril Videlov
af6fdc36a4
add api for updating change references 2024-08-30 12:38:50 +02:00
Pavel Laptev
425136da20
Edit mode updates (#4792)
* Add `Scrollbar` and `ScrollableContainer` to the UI lib

* event fixes

* replace app components with UI

* Move `ContentWrapper` to the UI side

* update file status badge colors

* move scrollbar components back to to app

because of the user settings

* dummy commit card added to the edit mode

* add the commit line

* edit modal UI tweaks

* remove unused code

* lint fixes

* lint fixes
2024-08-30 11:21:11 +02:00
Sebastian Thiel
4d495cb3bc
Adjust integration check to also recognize by matching tree.
This is relevant when all commits are equal by tree, but seem changed
due to the added GitButler headers.

For added safety, we also compare by commit message, date and authors,
basically everything that isn't the headers.
2024-08-30 07:15:47 +02:00
Sebastian Thiel
36f23d529f
CLI with branch list-remotes to list remote branches 2024-08-30 07:15:46 +02:00
Filipe Louro
92349391f3 Refactor RepoInfo type to use domain instead of source and resource 2024-08-29 18:24:45 +03:00
Filipe Louro
90bf797ad0 Add resource to tests to make checks happy 2024-08-29 18:24:45 +03:00
Filipe Louro
43264e28f2 Run prettier 2024-08-29 18:24:45 +03:00
Filipe Louro
bec6ddcefa Make if statement more strict 2024-08-29 18:24:45 +03:00
Filipe Louro
3cc2edda7a Set gitHostFactory for gitlab self hosted instances 2024-08-29 18:24:45 +03:00
Nico Domino
0f48b53108
feat: add <form /> to Modal implementation (#4780) 2024-08-29 11:34:47 +02:00
Caleb Owens
7b5cef41b9
Fix snapshot details transformer 2024-08-28 16:38:21 +02:00
Pavel Laptev
95d11a2965
Fix files selection (#4764)
* allow select multiple if the lane is applied

* missing commit Id added

* fix selection with `shift`

* disable draggable icon for unapplied commits

* replace `isPreview` with existing `isUnapplied`

* do not allow mutliple selection for remote commits

* refactor(utils): small update

* revert previous commit

* review changes
2024-08-28 11:27:48 +02:00
Caleb Owens
47358dd7a8
Have sidebar in edit mode 2024-08-28 10:41:47 +02:00
Caleb Owens
25409fd6f9
Merge pull request #4777 from gitbutlerapp/UI-updates-Edit-mode
UI updates: Edit mode
2024-08-28 10:19:40 +02:00
Kiril Videlov
b6c57eedf9
Merge pull request #4745 from Comnir/4472-fix-conflicting-branches-list-message
Fix conflicting-branches list message
2024-08-28 10:09:55 +02:00
Pavel Laptev
cb52363774 Sokitview updates 2024-08-27 23:37:05 +02:00
Kiril Videlov
12d48df0f7
Merge pull request #4774 from gitbutlerapp/remove-unused-feature-flag
remove unused feature flag
2024-08-27 20:57:26 +02:00
Nico Domino
30231c2f46
fix: dont hide "discard file" contextMenu option from binary files (#4770) 2024-08-27 20:50:47 +02:00
Kiril Videlov
74e7b1eeb5
remove unused feature flag 2024-08-27 20:46:22 +02:00
Nico Domino
a1650b464a
fix: reenable tipsy hover on branch empty-state (#4772) 2024-08-27 15:28:04 +00:00
Mattias Granlund
864994514f
Update app updater button copy (#4762)
* Update app updater button copy

* copy update

---------

Co-authored-by: Pavel Laptev <pawellaptew@gmail.com>
2024-08-27 16:36:28 +02:00
Pavel Laptev
f4594dcfb4 disable hovers for file list items 2024-08-27 14:55:48 +02:00
Kiril Videlov
06f50b4531 Merge branch 'master' into branch-stacking-first-stab 2024-08-27 14:13:08 +02:00
Caleb Owens
0b397d2368
Jiggle some code about 2024-08-27 13:05:28 +02:00
Caleb Owens
3fb5077c4a
Somethign somethign matchy matchy design 2024-08-27 13:05:27 +02:00
Caleb Owens
d2d3afbf2b
Added unstaged changes event 2024-08-27 13:05:07 +02:00
Kiril Videlov
4b5a8d14ef
add commands for pushing change references 2024-08-26 21:38:40 +02:00
Kiril Videlov
cef701796d
update the create reference method to take change id 2024-08-26 20:49:01 +02:00
Nico Domino
b287516cc7
feat: use PR template when available (#4736) 2024-08-26 17:08:37 +02:00
Mattias Granlund
2f684d620b Suppress up-to-date if not invoked manually 2024-08-26 15:32:52 +01:00
Pavel Laptev
99dcf812c4
Add zoom functionality with keyboard shortcuts and update menu actions for the View item (#4753)
* feat: Add zoom functionality with keyboard shortcuts and menu actions

feat: Implement global settings menu action navigation to settings page

feat: Implement theme switching functionality with keyboard shortcut and menu action

* code review fixes
2024-08-26 15:24:44 +02:00
Kiril Videlov
2ddb032ebf
show relevant commit refs if feature is toggled 2024-08-23 21:03:44 +02:00
Kiril Videlov
33e7d7b269
adds the ability to create branch refs from the UI 2024-08-23 18:07:24 +02:00
Caleb Owens
fdcbae3250
Merge pull request #4746 from gitbutlerapp/UI-lib-updates-#5
UI lib updates #5
2024-08-23 16:37:39 +02:00
Pavel Laptev
2b5b5c00aa remove unused code 2024-08-23 15:49:49 +02:00
Comnir
da0c623e06 Add back some imports... 2024-08-23 16:43:56 +03:00
Pavel Laptev
964f700f04 update FileListItem and FileIcon components 2024-08-23 15:42:00 +02:00
Caleb Owens
74a5c1a2ae
Merge pull request #4742 from gitbutlerapp/Exit-edit-mode-without-saving
Exit edit mode without saving
2024-08-23 15:33:53 +02:00
Comnir
ca8bf2e400 Fix conflicting-branches list message
- Currently no branches are listed
- The branches list returned by update_base_branch contains string, whereas when the message is constructed it's assumed the objects in the list have a 'name' property
2024-08-23 16:20:33 +03:00
Kiril Videlov
7137fce76e
add ui feature flag for branch stacking 2024-08-23 13:46:17 +02:00
Caleb Owens
dd84ad168c Fix wdio and tsconfig errors 2024-08-23 12:56:24 +02:00
Caleb Owens
04a63f1712 Exit edit mode without saving 2024-08-23 12:47:17 +02:00
Caleb Owens
ec7a38f538
Merge pull request #4717 from gitbutlerapp/Rebase-revolution
Rebase revolution
2024-08-22 18:28:49 +02:00
Caleb Owens
c987629262 Add project specific setting and refactor 2024-08-22 17:57:03 +02:00
Pavel Laptev
21eeb5f5c9
minor UI lib updates (#4740)
* button icons change

* Shorter copy

* checkbox updated to Svelte 5

- added `Checkbox` story

* Fix checkbox and badge props

* change story name

* segement color transition update

* illustrations update

* update SVG illustration colors

* style: Update button CSS variables for different button styles.
2024-08-22 15:39:09 +02:00
Caleb Owens
0603fd7457 Sure up behaviour with blank commits and reordering 2024-08-22 15:15:23 +02:00
Mattias Granlund
9c100fca49 Visually distinguish draft prs in branch list 2024-08-22 13:46:33 +01:00
Nico Domino
51139b4d73
fix: zoom shortcut codes for international keyboard users (#4735) 2024-08-22 10:45:34 +01:00
Mattias Granlund
191dc073e8 Improve app drag areas
- drag from lane gutters (but not over scrollbar)
- drag from empty space in new branch dropzone
- drag from empty space
2024-08-22 00:23:52 +01:00
Mattias Granlund
c968a1049c
Merge pull request #4671 from Comnir/delete-project-when-backing-from-adding-project
fix: clicking 'Cancel' on new project page does nothing
2024-08-21 14:36:50 +01:00
Caleb Owens
ace6facb24 Getting behaviour locked in 2024-08-21 14:45:41 +02:00
Pavel Laptev
d56973a56e Update AppUpdater.svelte
- update copy
- show the `tick` icon if the app is "UPTODATE"
- fix the background for the loading scale
- don't show the slide animation if the app is "UPTODATE" or "ERROR"
2024-08-21 12:40:08 +01:00
Mattias Granlund
132336c1da Add AppUpdater component test 2024-08-21 12:40:08 +01:00
Mattias Granlund
caae223b1f Fix checks monitor test
- these tests can't be run concurrently apparently
2024-08-21 12:40:08 +01:00
Mattias Granlund
ed6ecf183f Add test to ensure continous update polling 2024-08-21 12:40:08 +01:00
Mattias Granlund
4a2e947c46 Simplify and test updater service
- reverts to old UI
- moves more business logic into .ts file
- add tests for a few scenarios
2024-08-21 12:40:08 +01:00
Mattias Granlund
086d0cb0fb Fix branch re-ordering
- lets svelte re-order visually rather than manipulating the dom
2024-08-21 11:31:25 +01:00
Nico Domino
3ce2b5b338
fix: avatars from Google accounts via Auth0 (#4725) 2024-08-21 11:06:52 +02:00
Mattias Granlund
4a015e8b0d
Merge branch 'master' into delete-project-when-backing-from-adding-project 2024-08-20 12:36:48 +01:00
Caleb Owens
65fb462d64 Rebase revolution
Co-authored-by: Scott <schacon@gmail.com>
2024-08-19 18:10:28 +02:00
Caleb Owens
4a9114f4f3 Remove unused styles? 2024-08-19 13:31:38 +02:00
Caleb Owens
17d15719ce Update terminology 2024-08-19 13:25:46 +02:00
Caleb Owens
59f65983ac Put edit mode behind a feature falg 2024-08-19 13:16:26 +02:00
Caleb Owens
dbe8013de3 Record entering edit mode in oplog 2024-08-19 11:44:59 +02:00
Caleb Owens
7ab7731a31 Add edit mode actions
More edit mode
2024-08-19 11:03:51 +02:00
Pavel Laptev
daa285f41e
Login flow update and UI updated (#4716)
* UI: Fix disabled `WelcomeAction` state

* update stories structure

* update UI components structure

* fix path to icons.json

* fix path to `timeAgo` functions

* added `LinkButton` component and updated login functions

* copy change

* remove `console.log`

* lint: formatting fixes

* remove `console.log` from the `Modal` story

* casing change

* remove duplicated folders (casing issue)
2024-08-19 11:55:19 +02:00
Nico Domino
776a66b293
chore: migrate BranchLabel to runes (#4712) 2024-08-19 09:01:53 +00:00
Caleb Owens
575d8a0492
Merge pull request #4708 from gitbutlerapp/Use-gix-for-cloning
Use gix for cloning repositories
2024-08-19 10:44:44 +02:00
Pavel Laptev
4e23be18d8
CSS fixes: branch (#4715)
* fix with on drag

* fix draggable handle for collapsed lines

* remove left border for the folded line when dragging
2024-08-18 21:39:35 +02:00
Mattias Granlund
c9b5aa7c26 Refactor app updater a bit
- fixes things discovered in manual testing
- avoid $effect loops
2024-08-17 09:02:00 +01:00
Mattias Granlund
238a26b4ae show dismiss button if up-to-date 2024-08-17 09:02:00 +01:00
Pavel Laptev
422ce4f308 added new design 2024-08-17 09:02:00 +01:00
Mattias Granlund
bc10f4985b Add manual check for app update 2024-08-17 09:02:00 +01:00
Nico Domino
efb9a03a49
chore: migrate BranchHeader files to runes (#4710) 2024-08-16 17:44:58 +02:00
Nico Domino
88e791c307
fix: eslint.config for testing (#4704) 2024-08-16 15:30:53 +02:00
Nico Domino
4aceb459a3
fix: e2e record.ts cleanup (#4696) 2024-08-16 14:51:33 +02:00
Caleb Owens
2316d0f10d Use gix for cloning repositories 2024-08-16 12:21:42 +02:00
Nico Domino
7dc829960a
fix: tooltips when used in elevated contexts (#4703) 2024-08-16 12:17:43 +02:00
Caleb Owens
d3e3ffffd2 fix githost factory initialization 2024-08-15 19:00:44 +02:00
Comnir
b92ee0f3ee Fix imports 2024-08-15 19:50:50 +03:00
Caleb Owens
ca5de46bac sanitize all text 2024-08-15 18:02:18 +02:00
Nico Domino
13a270613c
feat: add ffmpeg video recorder for e2e tests (#4686) 2024-08-15 11:54:10 +02:00
Comnir
b5a5be42b0 Revert BackButton changes 2024-08-14 19:51:29 +03:00
Comnir
4735da4990 Replace BackButton with a Button 2024-08-14 19:47:33 +03:00
Caleb Owens
838f6e6226 Refactor mode service to remove manual unsubscribe 2024-08-14 11:22:47 +02:00
Caleb Owens
83283d918c
Merge pull request #4682 from gitbutlerapp/Provide-current-mode-to-frontend
Provide current mode to frontend
2024-08-14 10:02:37 +02:00
Pavel Laptev
fdea1cb0f5
UI lib: text utility classes (#4684) 2024-08-14 09:52:20 +02:00
Nir
a8f6e0a3b9
Change action name and logging 2024-08-14 09:01:11 +03:00
Nico Domino
11ff8a71cc
feat: initial addProject test with WebdriverIO (#4589)
Co-authored-by: Mattias Granlund <mtsgrd@gmail.com>
Co-authored-by: Test User <test@example.com>
2024-08-13 17:31:19 +02:00
Caleb Owens
e0d7b56cb5 Provide current mode to frontend 2024-08-13 17:05:28 +02:00
Pavel Laptev
273b7f9332
UI updates (#4676) 2024-08-12 09:34:18 +02:00
Caleb Owens
e18749ad1f feat(branches): add project-specific branch listing options
Implement project-specific persistence for branch listing options.
This change ensures that each project maintains its own selected
option state, improving user experience across multiple projects.
Update CombinedBranchListingService to use project-specific
persistence and modify its constructor to include projectId.
2024-08-11 17:29:49 +02:00
Caleb Owens
d68959bb78 feat(branch): optimize listing and enhance lazy loading
Improve branch listing performance and lazy loading behavior.
Introduce debouncing for branch listing updates to reduce
unnecessary calls. Refactor LazyloadContainer for better
efficiency and reliability. Update Branches component to use
reactive search term. These changes aim to enhance overall
application responsiveness and user experience.
2024-08-11 16:08:29 +02:00