Commit Graph

199 Commits

Author SHA1 Message Date
JimmFly
e6818b4f14 feat(core): add doc info modal (#7409)
close AF-1038
close AF-1039
close AF-1040
close AF-1046

A popup window has been added to facilitate viewing of this doc's info in edgeless mode and other modes.

https://github.com/toeverything/AFFiNE/assets/102217452/d7f94cb6-7e32-4ce7-8ff4-8aba1309b331
2024-07-09 07:05:20 +00:00
EYHN
40e381e272 refactor(core): new quick search service (#7214) 2024-07-02 09:17:54 +00:00
Fangdun Tsai
855d555480 fix(core): should return a cleanup function (#7371) 2024-06-28 14:18:24 +08:00
JimmFly
4af6223dc3 chore(core): removed obsolete TODO (#7337)
Cleaned up some TODOs that no longer need to be done
2024-06-27 06:30:29 +00:00
Fangdun Tsai
a5662e3de2 fix(core): optimize request chat cards fn (#7331) 2024-06-26 23:50:45 +08:00
EYHN
dcf766f0ee feat(core): impl ai onboarding templates (#7341) 2024-06-26 13:49:23 +00:00
akumatus
6344456d37 fix: doc update time outdated (#7344)
Fix issue [BS-603](https://linear.app/affine-design/issue/BS-603).

- Move observe `blockUpdated` logic in `blocksuite-editor` component, so it can be excuted on both page-detail and center-peek mode.
- Remove useless `getDocUpdatedAt` service, because blocksuite can get `docMeta` directly.

https://github.com/toeverything/blocksuite/pull/7434

https://github.com/toeverything/AFFiNE/assets/12724894/e01e3f97-f1d0-4d1d-a8ed-e70e27e39bdb
2024-06-26 12:46:00 +00:00
pengx17
7baa260e97 refactor(core): image block use peek view workflow (#7329)
depends on https://github.com/toeverything/blocksuite/pull/7424
2024-06-26 07:49:25 +00:00
EYHN
092c639b0a fix(core): optimize performance when editing doc title (#7328) 2024-06-26 07:37:26 +00:00
fundon
a92515b5aa fix(core): ai chat opening and append card (#7322)
Closes: [BS-642](https://linear.app/affine-design/issue/BS-642/continue-with-ai-:-侧边栏关闭的情况下,先唤起-侧边栏,同时插入选中的内容)

https://github.com/toeverything/AFFiNE/assets/27926/3022d808-d560-4bc8-8a04-735b76056121
2024-06-25 15:56:44 +00:00
pengx17
f51da066a8 refactor: image preview component issues in center peek (#7313)
fix AF-948

- remove jotai
- every editor got its own image block modal
- image block uses center peek modal for animation and style
2024-06-25 07:34:18 +00:00
CatsJuice
b38c46649f feat(core): adjust ai help island style and behavior, add animation (#7310)
- Move right-sidebar activeTab state into `RightSidebarService`
- Remove `styled` usage and adjust the UI
- Fix the issue that ai-button clicking not work when sidebar opened
- Add an animation if AI-Chat panel hasn't been opened.

![CleanShot 2024-06-24 at 18.10.27.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/14c86fbc-ad4c-44bf-93fe-ca3450db908b.gif)
2024-06-24 14:37:38 +00:00
forehalo
7b3673ae82 chore: assign todos (#7297) 2024-06-21 07:54:14 +00:00
pengx17
e085b927f6 feat(core): peek view api enhancements (#7288)
upstream https://github.com/toeverything/blocksuite/pull/7390
fix AF-917
2024-06-21 07:38:42 +00:00
fundon
92be6b2ff7 fix(core): open ai chat for first time (#7291)
There are two issues here:

1. open right sidebar with chat
2. notify chat-panel of selected content

The second issue will be fixed in a subsequent PR.
2024-06-21 10:32:34 +08:00
CatsJuice
1fdfa834a0 feat(core): responsive detail page header (#7263) 2024-06-20 05:47:43 +00:00
pengx17
a085e507b4 chore: add event tracking for billing (#7277)
fix AFF-1226
2024-06-20 03:33:07 +00:00
regischen
ddf72733e1 feat: add ai-is-land (#7259) 2024-06-20 02:52:14 +00:00
EYHN
7c0a686cd9 refactor(i18n): new hook api (#7273)
# NEW HOOK API

`useI18n`: same as `useAFFiNEI18N`, with additional APIs

```ts
import { useI18n } from '@affine/i18n'

const i18n = useI18n()
i18n['hello world']() -> 你好世界
```

# NEW GLOBAL i18n Instance

`I18n`: use i18n capabilities outside of React

```ts
import { I18n } from '@affine/i18n'

I18n['hello world']() -> 你好世界
```

# NEW TYPES

`I18nKeys` -> all i18n keys

`I18nString` -> An i18n message (key&options)
transfer and store i18n text outside of React
```ts
const msg: I18nString = {
  key: 'helloworld',
  options: {
    arg1: '123'
  }
}

I18n.t(msg) -> 你好世界123
```

before:

```ts
registerCommand('open-page', {
  name: t('command.open-page')
  // ^- translation happens here,
})
```

after:

```ts
registerCommand('open-page', {
  name: { key: 'command.open-page' }
  // ^- store I18nString here, translate when the command render to UI
})
```
2024-06-20 02:19:41 +00:00
L-Sun
09201d42a0 chore: bump up @blocksuite/icons version (#7233) 2024-06-18 17:07:11 +08:00
L-Sun
b3ec3a2b3e refactor(core): migrate ai preset to AFFiNE (#7219)
## TL;DR
Move `@blocksuite/presets/ai` to AFFiNE. After this PR is merged, you can use AI features from `@affine/core/blocksuite/presets/ai`.
2024-06-18 07:31:06 +00:00
L-Sun
9b89c9ed38 chore: bump up blocksuite version (#7243)
## Features
- https://github.com/toeverything/BlockSuite/pull/7330 @CatsJuice
- https://github.com/toeverything/BlockSuite/pull/7348 @zzj3720

## Bugfix
- https://github.com/toeverything/BlockSuite/pull/7338 @akumatus
- https://github.com/toeverything/BlockSuite/pull/7353 @Saul-Mirone
- https://github.com/toeverything/BlockSuite/pull/7351 @lawvs
- https://github.com/toeverything/BlockSuite/pull/7357 @L-Sun
- https://github.com/toeverything/BlockSuite/pull/7355 @akumatus

## Misc
- https://github.com/toeverything/BlockSuite/pull/7352 @L-Sun
- https://github.com/toeverything/BlockSuite/pull/7349 @pengx17
2024-06-18 04:29:55 +00:00
pengx17
5307a55f8a feat: add importWorkspaceSnapshot for testing (#7224) 2024-06-14 09:33:13 +00:00
akumatus
24cb0d3757 refactor: add docsService for blocksuite to change and observe doc mode (#7200)
This PR provide `DocModeService` to manage document mode, which is used by blocksuite.

### What Changed?
- Add document mode apis from `DocService` and `DocsService`
- Remove useless `pageService.getEditorMode` and `pageService.slots.editorModeSwitch` api

[Related PR in blocksuite](https://github.com/toeverything/blocksuite/pull/7288)

[Bump Blocksuite](https://github.com/toeverything/AFFiNE/pull/7209)
> ## Features
> * [feat(presets): support different tracker control for actions blocksuite#7285](https://github.com/toeverything/blocksuite/pull/7285) @donteatfriedrice
> * [feat(edgeless): add default color and editing border for edgeless text blocksuite#7278](https://github.com/toeverything/blocksuite/pull/7278) @Flrande
> * [feat(blocks): center peek entries blocksuite#7275](https://github.com/toeverything/blocksuite/pull/7275) @pengx17
>
> ## Bugfix
> * [fix(blocks): affine-embed-synced-doc-block peek on dblclick blocksuite#7284](https://github.com/toeverything/blocksuite/pull/7284) @pengx17
> * [fix(edgeless): edgeless text rect should automatically update when changing font blocksuite#7292](https://github.com/toeverything/blocksuite/pull/7292) @Flrande
> * [fix(edgeless): align panel not work blocksuite#7293](https://github.com/toeverything/blocksuite/pull/7293) @Flrande
> * [fix(blocks): filterable list unexpected hover style blocksuite#7291](https://github.com/toeverything/blocksuite/pull/7291) @golok727
> * [fix(blocks): slash menu unexpected hover style blocksuite#7290](https://github.com/toeverything/blocksuite/pull/7290) @golok727
> * [fix(blocks): bookmark block error on undo or delete while loading blocksuite#7276](https://github.com/toeverything/blocksuite/pull/7276) @golok727
> * [fix(presets): chat input max-height blocksuite#7283](https://github.com/toeverything/blocksuite/pull/7283) @fundon
> * [fix(presets): get image blob from selection blocksuite#7286](https://github.com/toeverything/blocksuite/pull/7286) @donteatfriedrice
> * [fix(blocks): connectors resize and rotate blocksuite#7256](https://github.com/toeverything/blocksuite/pull/7256) @fundon
>
> ## Refactor
> * [refactor: add DocModeService for doc mode get, set, toogle and observe change blocksuite#7288](https://github.com/toeverything/blocksuite/pull/7288) @akumatus
> * [refactor(edgeless): rewrite auto-connect component as a widget blocksuite#7287](https://github.com/toeverything/blocksuite/pull/7287) @doouding
>
> ## Misc
> * [test: fix flaky blocksuite#7295](https://github.com/toeverything/blocksuite/pull/7295) @L-Sun
> * [style(page): adjust heading font-weight and letter-spacing blocksuite#7277](https://github.com/toeverything/blocksuite/pull/7277) @CatsJuice
> * [chore: apply member ordering rule blocksuite#7279](https://github.com/toeverything/blocksuite/pull/7279) @Saul-Mirone

---
2024-06-13 16:53:42 +08:00
pengx17
1439d00b61 feat: add search doc modal (#7136) 2024-06-06 06:29:36 +00:00
forehalo
c96fb46751 feat(core): adjust admin panel style (#7116) 2024-05-31 10:43:30 +00:00
pengx17
ea0059fa1b feat: center peek view (#7073)
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/T2klNLEk0wxLh4NRDzhk/7380c06e-880e-424a-9204-8cfb5e924978.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/T2klNLEk0wxLh4NRDzhk/7380c06e-880e-424a-9204-8cfb5e924978.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/7380c06e-880e-424a-9204-8cfb5e924978.mp4">Kapture 2024-05-30 at 19.42.46.mp4</video>
2024-05-31 10:28:37 +00:00
JimmFly
b13151b480 feat(core): add admin panel page (#7115)
The path is `/admin-panel`
2024-05-31 09:42:23 +00:00
forehalo
638fc62601 feat(server): runtime setting support (#5602)
---

<details open="true"><summary>Generated summary (powered by <a href="https://app.graphite.dev">Graphite</a>)</summary>

> ## TL;DR
> This pull request adds a new migration file, a new model, and new modules related to runtime settings. It also introduces a new `Runtime` service that allows getting, setting, and updating runtime configurations.
>
> ## What changed
> - Added a new migration file `migration.sql` that creates a table called `application_settings` with columns `key` and `value`.
> - Added a new model `ApplicationSetting` with properties `key` and `value`.
> - Added a new module `RuntimeSettingModule` that exports the `Runtime` service.
> - Added a new service `Runtime` that provides methods for getting, setting, and updating runtime configurations.
> - Modified the `app.module.ts` file to import the `RuntimeSettingModule`.
> - Modified the `index.ts` file in the `fundamentals` directory to export the `Runtime` service.
> - Added a new file `def.ts` in the `runtime` directory that defines the runtime configurations and provides a default implementation.
> - Added a new file `service.ts` in the `runtime` directory that implements the `Runtime` service.
>
> ## How to test
> 1. Run the migration script to create the `application_settings` table.
> 2. Use the `Runtime` service to get, set, and update runtime configurations.
> 3. Verify that the runtime configurations are stored correctly in the database and can be retrieved and modified using the `Runtime` service.
>
> ## Why make this change
> This change introduces a new feature related to runtime settings. The `Runtime` service allows the application to dynamically manage and modify runtime configurations without requiring a restart. This provides flexibility and allows for easier customization and configuration of the application.
</details>
2024-05-28 06:43:53 +00:00
JimmFly
bd9c929d05 feat(core): cmd+f search in doc function (#7040)
You can use the cmd+F shortcut key to trigger the FindInPage function.
2024-05-28 06:19:48 +00:00
EYHN
b356ddbe6e fix(core): fix ui flashing (#7056) 2024-05-27 08:05:20 +00:00
pengx17
8ed0ceb63e fix: reset doc mode correctly (#7071)
it looks like a typo to me, but no obvious issue has been reported related to it?
2024-05-27 06:26:03 +00:00
EYHN
a440e85ffe chore: bump blocksuite (#7075)
## Features
- toeverything/blocksuite#6937 @Flrande

## Bugfix
- toeverything/blocksuite#7137 @fundon
- toeverything/blocksuite#7126 @golok727
- toeverything/blocksuite#7128 @CatsJuice
- toeverything/blocksuite#7130 @fundon

## Refactor

## Misc
- toeverything/blocksuite#7131 @fundon

## Additional changes

Adjust the awareness provider so that it only obtains awareness instances when connect, and fixes the dependencies between workspace components.
2024-05-27 05:11:12 +00:00
Flrande
35a6cf655b feat(core): bump blocksuite (#6965)
## Features
- https://github.com/toeverything/BlockSuite/pull/7052 @donteatfriedrice

## Bugfix
- https://github.com/toeverything/BlockSuite/pull/7072 @Flrande
- https://github.com/toeverything/BlockSuite/pull/7073 @Flrande
- https://github.com/toeverything/BlockSuite/pull/7062 @akumatus
- https://github.com/toeverything/BlockSuite/pull/7066 @L-Sun
- https://github.com/toeverything/BlockSuite/pull/7061 @Flrande
- https://github.com/toeverything/BlockSuite/pull/7058 @L-Sun
- https://github.com/toeverything/BlockSuite/pull/7060 @doouding
- https://github.com/toeverything/BlockSuite/pull/7051 @L-Sun
- https://github.com/toeverything/BlockSuite/pull/7054 @L-Sun
- https://github.com/toeverything/BlockSuite/pull/7023 @golok727
- https://github.com/toeverything/BlockSuite/pull/7022 @golok727
- https://github.com/toeverything/BlockSuite/pull/7047 @fundon
- https://github.com/toeverything/BlockSuite/pull/7043 @akumatus
- https://github.com/toeverything/BlockSuite/pull/7041 @donteatfriedrice
- https://github.com/toeverything/BlockSuite/pull/7038 @fourdim
- https://github.com/toeverything/BlockSuite/pull/7040 @regischen

## Refactor
- https://github.com/toeverything/BlockSuite/pull/7068 @doouding
- https://github.com/toeverything/BlockSuite/pull/7069 @zzj3720
- https://github.com/toeverything/BlockSuite/pull/7065 @Flrande
- https://github.com/toeverything/BlockSuite/pull/7048 @fundon
- https://github.com/toeverything/BlockSuite/pull/7045 @Flrande
- https://github.com/toeverything/BlockSuite/pull/7046 @donteatfriedrice
- https://github.com/toeverything/BlockSuite/pull/7039 @Flrande
- https://github.com/toeverything/BlockSuite/pull/7036 @Saul-Mirone
- https://github.com/toeverything/BlockSuite/pull/7032 @Saul-Mirone

## Misc
- https://github.com/toeverything/BlockSuite/pull/7063 @Saul-Mirone
- https://github.com/toeverything/BlockSuite/pull/7050 @fourdim
- https://github.com/toeverything/BlockSuite/pull/7044 @doouding
- https://github.com/toeverything/BlockSuite/pull/7042 @Flrande
- https://github.com/toeverything/BlockSuite/pull/6992 @doouding
2024-05-17 03:44:11 +00:00
JimmFly
a61ded3f25 fix(core): add affine.pro to trustedDomain (#6943) 2024-05-15 09:00:15 +00:00
EYHN
4ebe8f5fb4 chore(core): improve export snapshot tool (#6863) 2024-05-13 04:00:47 +00:00
JimmFly
f94306703a feat(core): tag groups sorted alphabetically (#6865)
feat(core): tag groups sorted alphabetically
feat(core): add display group to collection page and tag page

<img width="755" alt="image" src="https://github.com/toeverything/AFFiNE/assets/102217452/17a5abbe-cd1a-4ce2-8adc-f9aa5b6d6e77">
2024-05-13 03:48:17 +00:00
pengx17
3e23878e0f feat: add more tracking events (#6866)
Added most tracking events

what is missing:
- still need a way to track events in blocksuite
- some events may not 100% accurate of the one defined in the PRD
2024-05-13 03:36:32 +00:00
JimmFly
b8a1fbd6c7 fix(core): add margin to scrollbar when clientBorder has no style (#6867)
close #6684

https://github.com/toeverything/AFFiNE/assets/102217452/9de18009-c718-4bdd-88fd-caafdb5b419c
2024-05-11 05:44:48 +00:00
JimmFly
eac55fe1c1 feat(core): add multiDelete to trash page (#6798)
close #6739

https://github.com/toeverything/AFFiNE/assets/102217452/b1779cdf-f617-4188-ad29-70ec1695af1b
2024-05-07 06:54:59 +00:00
EYHN
148e058cde refactor(core): remove once signed in event (#6740)
This once signed in event does not work properly.
2024-04-30 04:46:02 +00:00
EYHN
6202ba5ada refactor(core): remove jump once (#6733)
Previously, we marked `jumpOnce: true` on `doc.meta` to open a specific doc after creating a new workspace. This pr removes `jumpOnce` and directly jumps to the specific doc URL.

This PR also fixes an error when opening the all-page page, because the all-page page scans the jumpOnce attribute of all docs, and the code in it will fail on damaged data.
2024-04-29 08:51:31 +00:00
CatsJuice
e13024580d feat(core): add ai subscription landing page (#6657) 2024-04-22 09:03:27 +00:00
EYHN
d36b5e14aa feat(core): try cloud link (#6660) 2024-04-22 08:51:02 +00:00
EYHN
9fd3f29d1b fix(core): fix home page init cloud (#6654) 2024-04-22 08:05:20 +00:00
forehalo
e8bcb75602 fix(server): use post request to consume magic link token (#6656) 2024-04-22 07:15:26 +00:00
EYHN
4085cc6728 fix(core): fix subscribe link for pro plan (#6627) 2024-04-19 06:36:38 +00:00
EYHN
09832dc940 feat(core): add subscribe link (#6610) 2024-04-18 13:28:32 +00:00
EYHN
06fda3b62c feat(infra): framework 2024-04-17 15:09:09 +08:00
forehalo
66a272fb8b fix(core): unable to redirect to same origin paths (#6586) 2024-04-17 03:25:31 +00:00