Commit Graph

204 Commits

Author SHA1 Message Date
Cats Juice 09cc5c392b refactor(core): new workspace selector and create dialog (#10323) 2025-02-21 17:16:38 +08:00
Saul-Mirone 22e4bd8c20 refactor: move image proxy middleware and adapter extensions (#10345)
### TL;DR
Moved image proxy middleware and adapter extensions to their respective packages and introduced a new spec provider for adapter registration.

### What changed?
- Relocated `defaultImageProxyMiddleware` from blocks to `@blocksuite/affine-block-image`
- Moved `PresentTool` from fragment-frame-panel to block-frame
- Created new adapter extension specs for HTML, Markdown, and Notion HTML
- Introduced a spec provider pattern for adapter registration
- Removed direct transformer references from RootService
- Updated imports across affected files to use new locations

### How to test?
1. Verify image proxy functionality works in exports and imports
2. Test HTML, Markdown, and Notion HTML adapters still function correctly
3. Confirm presentation mode works with the relocated PresentTool
4. Check that all file import/export operations continue to work as expected

### Why make this change?
This reorganization improves code modularity by placing features in their logical packages and introduces a more maintainable pattern for adapter registration. The spec provider pattern makes it easier to manage and extend adapter functionality while reducing coupling between components.
2025-02-21 09:01:57 +00:00
Saul-Mirone adcc6b578c refactor(editor): move editor components to frontend core (#10335)
### TL;DR
Moved editor components from BlockSuite presets to AFFiNE core and updated imports accordingly.

### What changed?
- Relocated `EdgelessEditor` and `PageEditor` components from BlockSuite presets to AFFiNE core
- Removed basic editor examples from playground
- Updated import paths across the codebase to reference new component locations
- Added editor effects registration in AFFiNE core
- Removed editor exports from BlockSuite presets

### How to test?
1. Launch the application
2. Verify both page and edgeless editors load correctly
3. Confirm editor functionality remains intact including:
   - Document editing
   - Mode switching
   - Editor toolbars and controls
   - Multiple editor instances

### Why make this change?
This change better aligns with AFFiNE's architecture by moving editor components closer to where they are used. It reduces coupling with BlockSuite presets and gives AFFiNE more direct control over editor customization and implementation.
2025-02-21 04:28:54 +00:00
Saul-Mirone b8dcb85007 refactor: move outline fragment to separate package (#10331)
### TL;DR

Moved outline functionality into a dedicated fragment package and updated vanilla-extract CSS dependency.

### What changed?

- Created new `@blocksuite/affine-fragment-outline` package
- Relocated outline-related code from presets to the new fragment package
- Updated imports across affected files to reference the new package location
- Upgraded `@vanilla-extract/css` dependency from 1.14.0/1.16.1 to 1.17.0
- Added necessary package configuration and TypeScript setup for the new fragment

### How to test?

1. Verify outline functionality works as expected in both desktop and mobile views
2. Check that outline panel, viewer, and mobile menu components render correctly
3. Ensure outline navigation and interactions continue to work
4. Confirm no regressions in outline-related features

### Why make this change?

This change improves code organization by isolating outline functionality into a dedicated package, following the modular architecture pattern. This makes the codebase more maintainable and allows for better separation of concerns. The vanilla-extract CSS upgrade ensures consistency across packages and provides access to the latest features and fixes.
2025-02-20 15:59:13 +00:00
Saul-Mirone 5ac15f12e6 refactor: replace editor container with editor host (#10328)
### TL;DR
Refactored editor access to use `EditorHost` instead of `AffineEditorContainer` and updated mode access through `DocModeProvider`.

### What changed?
- Changed editor property types from `AffineEditorContainer` to `EditorHost` across multiple components
- Updated mode access to use `DocModeProvider` service instead of direct editor mode access
- Modified editor references to use `editor.host` where appropriate
- Updated scroll and highlight utilities to work with `EditorHost`

### How to test?
1. Open a document in both page and edgeless modes
2. Verify outline panel functionality works as expected
3. Test outline viewer navigation and highlighting
4. Confirm mobile outline menu operates correctly
5. Check that frame panel and TOC features work in all modes

### Why make this change?
This change improves architectural consistency by using `EditorHost` directly and accessing mode through the proper service provider. This makes the code more maintainable and follows better dependency practices by using the correct abstraction levels.
2025-02-20 14:20:32 +00:00
Saul-Mirone 007bbabce4 refactor: move frame manager and panel to separate packages (#10324)
### TL;DR
Moved frame management functionality from `blocksuite/blocks` to `@blocksuite/affine-block-frame` package.

### What changed?
- Relocated `frame-manager.ts` from `blocksuite/blocks` to `@blocksuite/affine-block-frame`
- Added new dependencies to block-frame package: `@blocksuite/affine-block-surface` and `yjs`
- Updated imports across multiple components to reference frame manager from its new location
- Moved utility functions `areSetsEqual` and `isFrameBlock` into frame-manager file
- Replaced direct EdgelessRootService references with GfxController in frame panel components

### How to test?
1. Verify frame functionality works in edgeless mode
2. Test frame creation, selection, and manipulation
3. Confirm frame navigation and presentation modes operate correctly
4. Check that frame panel and toolbar interactions remain functional

### Why make this change?
This refactoring improves code organization by consolidating frame-related functionality into a dedicated package, making the codebase more modular and easier to maintain. It also reduces dependencies between packages and provides clearer boundaries for frame-related features.
2025-02-20 13:06:40 +00:00
Saul-Mirone 1516903c77 refactor: move doc-title and ai-chat-block components (#10316)
### TL;DR
Moved doc title and AI chat block components to more appropriate locations while removing unused backlink functionality.

### What changed?
- Relocated doc title component from presets to affine-components
- Moved AI chat block from presets/blocks to blocks directory
- Removed unused backlink-related code and components
- Updated imports across files to reference new component locations
- Consolidated AI-related exports through a single entry point

### How to test?
1. Verify doc title still renders correctly in documents
2. Confirm AI chat functionality works as expected
3. Check that no backlink-related features are accessible
4. Ensure all AI features continue to work through the new import paths

### Why make this change?
This reorganization improves code organization by:
- Placing components closer to their related functionality
- Removing dead/unused code around backlinks
- Simplifying the import structure for AI-related features
- Making the codebase more maintainable by consolidating related components
2025-02-20 10:45:47 +00:00
JimmFly 1d339c682b fix(core): adjust share menu and upgrade-to-team page style (#10299)
close PD-2330 PD-2331 AF-2238
2025-02-20 04:10:52 +00:00
JimmFly b456feee63 fix(core): unexpected redirect to expired page after accepting invitation (#10257)
Co-authored-by: EYHN <cneyhn@gmail.com>
2025-02-19 09:10:12 +00:00
JimmFly 751f229e30 fix(core): unexpectedly jump to price plan when selfhosting (#10247) 2025-02-19 07:01:54 +00:00
EYHN c0cc4224bb feat(core): close popup after oauth login (#10273) 2025-02-19 14:44:02 +08:00
pengx17 cb15d48b82 chore(core): more setting telemetry events (#10194) 2025-02-18 09:55:00 +00:00
pengx17 78346be4fe fix(electron): update settings styles (#10193) 2025-02-18 09:54:59 +00:00
L-Sun 4e546c78ef chore(core): remove template doc feature flag (#10252) 2025-02-18 09:25:06 +00:00
CatsJuice b5ba17c464 chore(core): disallow closing auth modal for clicking outside and escape (#10156) 2025-02-16 08:14:12 +00:00
JimmFly 36800f2d24 fix(core): adjust the redirection path for retrying payments when self-hosting (#10181) 2025-02-14 10:18:00 +00:00
JimmFly ea95ff39c5 fix(core): show self hosted license seats (#10146) 2025-02-13 07:58:10 +00:00
forehalo 9dcce43360 refactor(core): auth ui (#10101)
close AF-2202 AF-2203
2025-02-12 07:39:09 +00:00
donteatfriedrice 19f0eb1931 fix(core): use patched preview spec builder in ai chat (#10090)
[BS-2526](https://linear.app/affine-design/issue/BS-2526/chat-panel-里的-footnote-popup-需要支持交互)
2025-02-11 15:11:54 +00:00
L-Sun 401ce70153 refactor(core): remove the unused compareDate field from DocDisplayIconOptions (#10095) 2025-02-11 13:26:43 +00:00
Saul-Mirone 6b78d2dcf2 refactor(editor): reduce getService (#10100) 2025-02-11 12:26:02 +00:00
pengx17 c5c59ba00a fix(core): adjust settings names (#10061)
fix AF-2190
2025-02-11 02:14:10 +00:00
CatsJuice f774868f0e feat(core): make some tabs in sidebar persistent for all docs page (#10014)
close AF-2164

![CleanShot 2025-02-07 at 14.23.36.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/deb15a06-32e9-40bf-8a15-07a3c2fa8227.gif)
2025-02-10 14:58:27 +00:00
Oleg d4f0c53a0c feat(core): frame editor settings (#9970)
Co-authored-by: L-Sun <zover.v@gmail.com>
Co-authored-by: Mirone <Saul-Mirone@outlook.com>
2025-02-10 15:23:32 +08:00
EYHN 92f4f0c2d9 feat(core): guard service (#9816) 2025-02-09 23:26:38 +00:00
JimmFly 5ae5fd88f1 feat(core): add doc grant feature to share menu (#9672) 2025-02-07 13:05:58 +00:00
donteatfriedrice b38389c670 feat(core): add tooltip for import dialog snapshot item (#10013)
[PD-2132](https://linear.app/affine-design/issue/PD-2132/import-导入优化:snapshot-需要一个问号,解释文档)
2025-02-07 10:23:59 +00:00
JimmFly d5a626d9c3 feat(core): optimize team workspace member management (#9737)
close AF-2106 AF-2077 AF-2089

feat(core): handle need more seat status

feat(core): prevent invite members when team plan is canceled
2025-02-07 10:08:00 +00:00
CatsJuice b4f078b9c9 feat(core): add deleted state for sidebar journal template (#9980) 2025-02-07 09:09:58 +00:00
JimmFly e68bdbde3e feat(core): add self host team plan (#9569) 2025-02-07 03:35:24 +00:00
JimmFly 2ed03eaed7 fix(core): workspace storage rows are displayed unexpectedly (#9539)
close AF-2066
2025-02-05 23:58:01 +08:00
pengx17 4b549e0484 fix(electron): optimize find in page in electron (2) (#9901)
1. find in page should have higher z-index than other modals
2. fix focused texts are not automatically being used as the default input value for searching
2025-01-27 07:58:16 +00:00
pengx17 ffbec1633e fix(electron): optimize find in page in electron (#9900)
fix AF-2168
When using find in page (cmd+f) in electron, the popup should not prevent the user from interacting with the main content.
Also fixed some minor ui issues
2025-01-27 07:19:12 +00:00
pengx17 a5c8356376 chore(electron): split view tracking events (#9896)
fix AF-2037
2025-01-27 02:40:08 +00:00
pengx17 791484a46c fix(core): some style issues (#9875)
fix AF-2158, AF-2159

It seems the input hack for modal is no longer needed
2025-01-24 05:06:59 +00:00
pengx17 6a74107010 fix(core): some storage setting enhancements (#9877)
fix AF-2157, AF-2155, AF-2156
1. add shift selection for grid blob card
2. various style issues
3. unused blobs list will also wait for workspace syncing
2025-01-24 04:35:54 +00:00
pengx17 6ac6a8d6d6 feat(core): unused blob management in settings (#9795)
fix AF-2144, PD-2064, PD-2065, PD-2066
2025-01-23 07:12:17 +00:00
pengx17 088ae0ac0a feat(electron): backup panel (#9738)
fix PD-2071, PD-2059, PD-2069, PD-2068
2025-01-22 22:52:31 +08:00
pengx17 4c665594d6 fix(editor): ref on click slots should not be global (#9830)
fix AF-2129
2025-01-22 05:20:55 +00:00
pengx17 defb0de4dd feat(core): reorg workspace settings (#9718)
fix AF-2118
2025-01-22 03:11:27 +00:00
Xun Sun 2db9cc3922 fix(core): set state isLoading to false after email changing is confirmed (#9824) 2025-01-22 09:47:23 +08:00
akumatus a3164b4ccf feat(core): support ai doc search panel (#9831)
Support issue [BS-2351](https://linear.app/affine-design/issue/BS-2351) and [BS-2461](https://linear.app/affine-design/issue/BS-2461).

## What changed?
- Add `chat-panel-add-popover` component.
- Refactor part of `AtMenuConfigService` into `DocSearchMenuService`.
- Add signal `content` property to `DocChip` interface for markdown content update.

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/ff1d69b3-edd6-4d33-a01d-8b16e5192af7.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/ff1d69b3-edd6-4d33-a01d-8b16e5192af7.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/ff1d69b3-edd6-4d33-a01d-8b16e5192af7.mov">录屏2025-01-21 18.46.29.mov</video>
2025-01-21 11:20:19 +00:00
L-Sun d2bde09ef6 fix(core): avoid multiple append right sidebar tab lit component (#9806)
This PR fixed that the TOC panel and frame panel will be connect and disconnect repeatly on the same instance. Similar issue:  https://github.com/toeverything/AFFiNE/pull/9019#discussion_r1872635745
2025-01-21 02:32:35 +00:00
Saul-Mirone fa5e6e1f45 fix: remove bs shared and components in affine (#9792) 2025-01-20 09:41:06 +00:00
forehalo cb53baca89 fix(electron): export and import (#9767) 2025-01-20 08:48:03 +00:00
Saul-Mirone 2b3da1f0e9 fix: remove global, store and std in affine packages (#9785) 2025-01-20 06:14:46 +00:00
CatsJuice 1a18aeb22e fix(core): make journal template selector fixed at bottom in sidebar (#9783) 2025-01-20 04:35:11 +00:00
fundon 4aabcaaa60 chore(core): update fill color of shape (#9674)
part of: https://github.com/toeverything/AFFiNE/pull/9633

* updates fill color in `shape.json`
2025-01-20 03:22:11 +00:00
pengx17 7713920b71 fix(core): move openinapp guard to workspace scope (#9751) 2025-01-19 10:00:04 +00:00
CatsJuice 9d61b41c05 feat(core): add template mark on detail page header (#9764)
close AF-2136
2025-01-18 17:02:25 +00:00