donteatfriedrice
319d909ac8
fix(editor): paste surface-ref block to another doc as embed-linked-doc block ( #10274 )
...
[BS-2155](https://linear.app/affine-design/issue/BS-2155/复制-insert-frame-group-粘贴后,应当变为-block-ref-link )
2025-02-19 07:02:27 +00:00
donteatfriedrice
15e9acefc2
fix(editor): paste when select multiple block texts ( #10227 )
...
[BS-2512](https://linear.app/affine-design/issue/BS-2512/选中多段粘贴,多段只有第一段会被replace,这个bug还在 )
2025-02-18 12:13:55 +00:00
Flrande
cedee0a1b2
fix(editor): split at the start of list with children ( #10244 )
2025-02-18 09:10:00 +00:00
L-Sun
011c18de8b
fix(editor): hide collpased content during dragging note ( #10133 )
...
Close [BS-2531](https://linear.app/affine-design/issue/BS-2531/%E6%8B%96%E5%8A%A8%E6%8A%98%E5%8F%A0%E7%9A%84note%E6%97%B6%EF%BC%8C%E4%B8%8D%E6%98%BE%E7%A4%BA%E9%9A%90%E8%97%8F%E5%86%85%E5%AE%B9 ), [BS-2536](https://linear.app/affine-design/issue/BS-2536/page-block%E9%A1%B6%E9%83%A8toolbar )
2025-02-13 04:18:11 +00:00
L-Sun
54d194afe7
fix(editor): set edgeless note style will override collapse state ( #10098 )
...
Close [BS-2489](https://linear.app/affine-design/issue/BS-2489/%E6%94%B9%E5%8F%98note-style%E4%BC%9A%E9%87%8D%E7%BD%AEcollapse%E7%8A%B6%E6%80%81 )
2025-02-11 14:29:25 +00:00
L-Sun
0b3c7a578e
fix(editor): collapsed page block visibility ( #10097 )
...
This PR fixed that doc title is not hidden when page block is collapsed
2025-02-11 14:29:24 +00:00
L-Sun
42bdae16fb
fix(editor): only render emoji in page block header ( #10096 )
2025-02-11 14:29:23 +00:00
pengx17
fd25cd875b
feat: focus the create page item when query returns no result in at menu ( #10060 )
...
fix AF-2191
2025-02-10 15:51:56 +00:00
CatsJuice
f774868f0e
feat(core): make some tabs in sidebar persistent for all docs page ( #10014 )
...
close AF-2164

2025-02-10 14:58:27 +00:00
L-Sun
9f56a21d8a
feat(editor): add animation for switching to edgeless mode firstly ( #10021 )
...
Close [BS-2327](https://linear.app/affine-design/issue/BS-2327/page-block-%E5%9C%A8-edgeless-%E5%88%87%E6%8D%A2%E7%BC%A9%E6%94%BE%E5%8A%A8%E7%94%BB )
### What Changes:
- Add a zoom animation when switching to edgeless mode firstly
- Move viewport record from `sessionStorage` to `localStorage`
https://github.com/user-attachments/assets/dac11aab-76bd-44b1-8c0e-4a8a10919841
2025-02-10 07:41:10 +00:00
EYHN
92f4f0c2d9
feat(core): guard service ( #9816 )
2025-02-09 23:26:38 +00:00
pengx17
9fd547d484
chore(core): upload flaky test traces ( #9974 )
2025-02-07 15:15:45 +08:00
JimmFly
e68bdbde3e
feat(core): add self host team plan ( #9569 )
2025-02-07 03:35:24 +00:00
L-Sun
891d9df0b1
feat(editor): show doc title in page block ( #9975 )
...
Close [BS-2392](https://linear.app/affine-design/issue/BS-2392/page-block-需要显示文章title )
### What Changes
- Add `<doc-title>` to edgeless page block (a.k.a the first page visible note block)
- Refactors:
- Move `<doc-title>` to `@blocksuite/affine-component`, but you can aslo import it from `@blocksuite/preset`
- Extract `<edgeless-note-mask>` and `<edgeless-note-background>` from `<affine-edgeless-note>` to a seperate file
- Rewrite styles of `<affine-edgeless-note>` with `@vanilla-extract/css`
https://github.com/user-attachments/assets/a0c03239-803e-4bfa-b30e-33b919213b12
2025-02-06 21:18:28 +00:00
pengx17
d7da12597a
fix(core): use divider component to replace height dividers ( #9986 )
2025-02-06 10:37:05 +00:00
Oleg
e3fac97b9b
fix(web): minor bug fixes ( #9696 )
...
Co-authored-by: Mirone <Saul-Mirone@outlook.com >
2025-01-27 14:21:41 +09:00
L-Sun
829980bace
refactor(editor): toc dragging with std.dnd ( #9883 )
...
Close [BS-2458](https://linear.app/affine-design/issue/BS-2458/toc-dnd重构 )
### What Changes
- Refactor toc note card dnd with `std.dnd`
- Extract note display mode change to command `changeNoteDisplayMode`
- It will reorder notes when the display mode changed from `EdgelessOnly` to page mode visible (a.k.a `DocOnly` or `Both`)
2025-01-24 13:27:17 +00:00
L-Sun
02bcecde72
refactor(editor): simplify TOC implementation with signal and context ( #9873 )
...
### What Changes
1. Used `@preact/signal` and `@lit/context` to simplify repetitive passing of properties of TOC components,
2. Fixed TOC invalid when editor changed, such as click new page button.
2025-01-23 17:01:04 +08:00
L-Sun
4839f0f369
refactor(editor): shadowless TOC with valilla extract css ( #9856 )
...
Close [BS-2474](https://linear.app/affine-design/issue/BS-2474/使用shadowlesselement重构toc )
This PR refactor TOC with `ShadowlessElement` and `@valilla-extract/css`
2025-01-22 16:24:31 +00:00
L-Sun
16d4430ec9
test(editor): move tests of toc to affine ( #9833 )
2025-01-21 13:34:59 +00:00
Flrande
b6a8d644f8
test(editor): add tests for heading toggle ( #9820 )
2025-01-21 09:35:33 +00:00
L-Sun
7400cf225f
refactor(editor): highlight selected cards of TOC based on signal ( #9807 )
...
Close [BS-2314](https://linear.app/affine-design/issue/BS-2314/添加打开toc时,将note-block-高亮 ), [BS-1868](https://linear.app/affine-design/issue/BS-1868/toc-里面-note之间顺序可拖动性,在page和edgeless里面是不同的,这个是设计的行为么 ?)
This PR refactor the highlight logic of note cards of TOC panel:
- notes block selected in edgeless note
- notes block covered by text or block selection in page mode
- note cards selected in TOC for dragging
Other changes:
- remove not used codes
- add tests for highlight note cards
2025-01-21 07:50:57 +00:00
zzj3720
2e18ae59e3
refactor(editor): do not create a tag column by default anymore ( #9789 )
...
close: BS-2423
2025-01-20 06:59:10 +00:00
L-Sun
6ba802fb17
feat(editor): append note to page button ( #9762 )
...
Close [BS-2310](https://linear.app/affine-design/issue/BS-2310/note-display-in-page-%E7%9A%84%E8%A1%8C%E4%B8%BA ), [BS-2312](https://linear.app/affine-design/issue/BS-2312/edgeless-note-%E7%9A%84-element-toolbar-%E6%B7%BB%E5%8A%A0display-in-page%E6%8C%89%E9%92%AE ) and [BS-2313](https://linear.app/affine-design/issue/BS-2313/添加display-in-page的toast提示,以及打开toc的按钮 )
2025-01-19 08:35:02 +00:00
CatsJuice
f8abe997f5
fix(core): open template doc on sidebar template entrance ( #9766 )
...
close AF-2135, AF-2136, AF-2138, AF-2133
2025-01-18 16:44:05 +00:00
fundon
7436c139ab
fix(core): improve doc title and icon display ( #9755 )
...
Closes: [AF-2132](https://linear.app/affine-design/issue/AF-2132/优化-emoji-title-和-icon-显示 )
2025-01-18 17:29:15 +08:00
L-Sun
d8727c2001
fix(editor): close embed edit modal on editor unmount ( #9765 )
...
Close [BS-2436](https://linear.app/affine-design/issue/BS-2436/should-close-embed-card-edit-modal-after-editor-unmount )
### What Changes:
- fix(editor): close embed edit modal on editor unmount
- test(editor): add test to embed edit modal when switching mode
2025-01-17 11:53:09 +00:00
pengx17
7dc470e7ea
feat(core): add new bs dnd adapter ( #9717 )
2025-01-16 13:54:50 +00:00
doouding
99717196c5
refactor: rewrite blocksuite dnd ( #9595 )
...
### Changed
- Refactored BlockSuite drag-and-drop using @atlaskit/pragmatic-drag-and-drop/element/adapter.
- Updated block dragging to use the new drag-and-drop infrastructure.
### BlockSuite DND API
Access the BlockSuite drag-and-drop API via `std.dnd`. This is a lightweight wrapper around pragmatic-drag-and-drop, offering convenient generic types and more intuitive option names.
#### Drag payload structure
There's some constrain about drag payload. The whole drag payload looks like this:
```typescript
type DragPayload = {
entity: {
type: string
},
from: {
at: 'blocksuite',
docId: string
}
}
```
- The `from` field is auto-generated—no need for manual handling.
- The `entity` field is customizable, but it must include a `type`.
All drag-and-drop methods accept a generic type for entity, ensuring more accurate payloads in event handlers.
```typescript
type BlockEntity = {
type: 'blocks',
blockIds: string[]
}
dnd.draggable<BlockEntity>({
element: someElement,
setDragData: () => {
// the return type must satisfy the generic type
// in this case, it's BlockEntity
return {
type: 'blocks',
blockIds: []
}
}
});
dnd.monitor<BlockEntity>({
// the arguments is same for other event handler
onDrag({ source }) {
// the type of this is BlockEntity
source.data.entity
}
})
```
#### Drop payload
When hover on droppable target. You can set drop payload as well. All drag-and-drop methods accept a second generic type for drop payload.
The drop payload is customizable. Additionally, the DND system will add an `edge` field to the final payload object, indicating the nearest edge of the drop target relative to the current drag position.
```typescript
type DropPayload = {
blockId: string;
}
dnd.dropTarget<BlockEntity, DropPayload>({
getData() {
// the type should be DropPayload
return {
blockId: 'someId'
}
}
});
dnd.monitor<BlockEntity, DropPayload>({
// drag over on drop target
onDrag({ location }) {
const target = location.current.dropTargets[0];
// the type is DropPayload
target.data;
// retrieve the nearest edge of the drop target relative to the current drop position.
target.data.edge;
}
})
```
2025-01-16 12:36:58 +00:00
L-Sun
969ac30874
fix(editor): reactive heading icon ( #9729 )
...
Close [BS-2407](https://linear.app/affine-design/issue/BS-2407/[bug]-edgeless-里选中-title-后更改,hint-没有改变 )
2025-01-16 08:32:15 +00:00
CatsJuice
ad86292f45
test(core): add basic tests for template doc setting ( #9702 )
...
close AF-2112, AF-2114, AF-2115
2025-01-16 02:28:29 +00:00
pengx17
b1896746f9
refactor(core): move setting dialog to workspace scope ( #9706 )
2025-01-15 13:00:06 +00:00
L-Sun
94c9717a35
feat(editor): edgeless page block toolbar ( #9707 )
...
Close [BS-2315](https://linear.app/affine-design/issue/BS-2315/page-block-header )
### What Changes
- Add header toolbar to page block (the first note in canvas)
- Add e2e tests
- Add some edgeless e2e test utils. **The package `@blocksuite/affine` was added to `"@affine-test/kit"`**
2025-01-15 12:04:44 +00:00
fundon
0b2d11e6b1
fix(editor): text highlighting ( #9708 )
2025-01-15 10:57:27 +00:00
pengx17
0bce5c6730
feat(core): remove workspace selectors in settings ( #9705 )
...
fix AF-2119
2025-01-15 07:37:25 +00:00
CatsJuice
10196f6785
feat(core): new template doc property ( #9538 )
...
close AF-2045, AF-2047, AF-2065
2025-01-14 02:10:33 +00:00
zzj3720
c016f8e37e
feat(editor): support linked-doc in rich-text column ( #9634 )
...
close: BS-2345
2025-01-10 14:43:40 +00:00
zzj3720
8e8058a44c
feat(editor): support pasting Excel data into database block ( #9618 )
...
close: BS-2338
2025-01-09 14:35:19 +00:00
Saul-Mirone
126ab18967
feat(editor): selection as store extension ( #9605 )
2025-01-09 11:49:23 +00:00
forehalo
c0ed74dfed
chore: standardize tsconfig ( #9568 )
2025-01-08 04:07:56 +00:00
donteatfriedrice
09c7a597be
fix(core): should focus when clicking sidebar button ( #9339 )
2025-01-06 04:09:01 +00:00
fundon
569e63377d
fix(core): should sync name after renaming in pdf embed view ( #9398 )
...
https://github.com/user-attachments/assets/f6a3d7b8-9ae3-4d8f-833f-d7aca1e0fffa
2024-12-30 09:56:02 +00:00
fundon
6fcdd015aa
fix(component): lit portal not re-rendering in inline links case ( #9321 )
...
* uses `portal.key` in templates
* updates `portal.id` for use in queries
2024-12-27 15:43:13 +08:00
forehalo
8de0679d70
Revert "fix(core): make all docs journal judgement reactive ( #9290 )"
...
This reverts commit 727f21d78f .
2024-12-27 14:21:59 +08:00
CatsJuice
727f21d78f
fix(core): make all docs journal judgement reactive ( #9290 )
2024-12-25 01:41:16 +00:00
Saul-Mirone
e13f9d3885
feat: enable new dnd flag ( #9194 )
2024-12-18 05:53:08 +00:00
liuyi
b0e64fe516
chore: remove legacy tests ( #9183 )
2024-12-17 17:06:28 +08:00
EYHN
b36b398957
fix(infra): memory leak ( #9013 )
2024-12-16 16:55:49 +00:00
fundon
0945381d7b
chore: improve links test cases ( #9148 )
2024-12-16 04:03:06 +00:00
renovate
7c2f0064ae
chore: bump up @blocksuite/affine version to v0.19.0 ( #9140 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite ) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all ), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md )) | [`0.18.7` -> `0.19.0`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.18.7/0.19.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) |
---
### Release Notes
<details>
<summary>toeverything/blocksuite (@​blocksuite/affine)</summary>
### [`v0.19.0`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0190 )
[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.7...v0.19.0 )
##### Minor Changes
- [`d7ec057`](https://redirect.github.com/toeverything/blocksuite/commit/d7ec057 ): Blocksuite minor release.
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-13 06:58:42 +00:00