Commit Graph

364 Commits

Author SHA1 Message Date
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
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
Comnir
bb791f7d13 Remove colons, following svelte(?) upgrade 2024-08-10 20:28:22 +03:00
Comnir
130cef5eb4 fix: clicking Cancel on new project page does nothing
- Fixes #2539
- Clicking 'Add new project' immediately adds the the repo to the projects list
- Clicking Cancel on the project setup pageredirects to the app root page
- If the projects list conatins a project, the root page redirects to the project page. When the project setup is incomplete, the project setup is displayed
- To avoid this redirect, clicking cancel now deletes the project
2024-08-10 20:00:51 +03:00
Caleb Owens
4c47923485 feat(CloneForm): add error tracking and improve typing
Adds Sentry exception tracking and PostHog event capture for
repository clone failures.
2024-08-10 15:31:04 +02:00
Kiril Videlov
252568ec20
makes it easier to drag window 2024-08-10 13:51:12 +02:00
Kiril Videlov
a6ada0423f
refactor: Change button text to "Delete local" in BranchPreviewHeader. 2024-08-09 22:48:58 +02:00
Kiril Videlov
ed7a8c4027
Merge pull request #4663 from gitbutlerapp/create-delete-local-branch
create-delete-local-branch
2024-08-09 16:07:54 +02:00
Kiril Videlov
d635f72269
i dont trust the old Refname implementation
So not using it for deletion here
2024-08-09 15:59:32 +02:00