Skip to content

Commit 705debf

Browse files
m1sk9laminne
andcommitted
Update src/endpoint/timeline.md
Co-authored-by: Tatsuto YAMAMOTO <[email protected]>
1 parent 1b55d43 commit 705debf

File tree

6 files changed

+25
-75
lines changed

6 files changed

+25
-75
lines changed

src/endpoint.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ Pulsate v0 APIでは殆どのエンドポイントで資格情報が必要であ
2222

2323
エンドポイントへアクセスするときの`Authorization` HTTPヘッダーに
2424

25-
```json
25+
```text
2626
Bearer <token>
2727
```
2828

2929
の形式で [認証トークン](./model.md#認証トークン) をつけて送信する必要がある.
3030

3131
例:
3232

33-
```json
33+
```text
3434
Bearer
3535
```
3636

@@ -117,13 +117,13 @@ Unicodeで規定された文字以外のデータを表現するときの記法
117117
のスキームである`acct:`を取り除き, `@`に置き換えたもの
118118
- 例: アカウント名が `@[email protected]`である場合
119119

120-
```json
120+
```text
121121
122122
```
123123

124124
- 宛先のホスト名(FQDN)は **省略不可**
125125

126-
```md
126+
```text
127127
128128
```
129129

src/endpoint/notes.md

+16-18
Original file line numberDiff line numberDiff line change
@@ -592,12 +592,10 @@ body: `application/json`
592592

593593
`reactions`:
594594

595-
| 項目名 || 説明 ||
596-
| ---------------------------------------------------------------------------------- | ------------------ | ---------------------------- | ---------- |
597-
| emoji | `string` | 絵文字 | |
598-
| 表記法は [Untitled](https://www.notion.so/74411becb886427fb512a32d523d6faf) を参照 | `<:alias:11938437` | | |
599-
| `🎉` | | | |
600-
| reacted_by | `snowflake` | リアクションしたアカウントID | `48499372` |
595+
| 項目名 || 説明 ||
596+
| ---------- | ----------- | ------------------------------------------------------------------- | ------------------------- |
597+
| emoji | `string` | 絵文字. 表記法は [絵文字の扱い](../endpoint.md#絵文字の扱い) を参照 | `🎉`, `<:alias:11938437>` |
598+
| reacted_by | `snowflake` | リアクションしたアカウントID | `48499372` |
601599

602600
**`400`** **`Bad Request`**
603601

@@ -739,12 +737,12 @@ body: `application/json`
739737

740738
`reactions`:
741739

742-
| 項目名 || 説明 ||
743-
| ---------------------------------------------------------------------------------- | ------------------ | ---------------------------- | ---------- |
744-
| emoji | `string` | 絵文字 | |
745-
| 表記法は [Untitled](https://www.notion.so/74411becb886427fb512a32d523d6faf) を参照 | `<:alias:11938437` | | |
746-
| `🎉` | | | |
747-
| reacted_by | `snowflake` | リアクションしたアカウントID | `48499372` |
740+
| 項目名 || 説明 ||
741+
| ----------------------------------------------------------- | ------------------ | ---------------------------- | ---------- |
742+
| emoji | `string` | 絵文字 | |
743+
| 表記法は [絵文字の扱い](../endpoint.md#絵文字の扱い) を参照 | `<:alias:11938437` | | |
744+
| `🎉` | | | |
745+
| reacted_by | `snowflake` | リアクションしたアカウントID | `48499372` |
748746

749747
**`404 Not Found`**
750748

@@ -806,9 +804,9 @@ body: `application/json`
806804
| blur | `string` | 添付ファイルが画像であるときのサムネイルの [blurhash](https://blurha.sh/) | | |
807805
| nsfw | `boolean` | ToDo | | |
808806

809-
| 項目名 || 説明 ||
810-
| ---------------------------------------------------------------------------------- | ------------------ | ---------------------------- | ---------- |
811-
| emoji | `string` | 絵文字 | |
812-
| 表記法は [Untitled](https://www.notion.so/74411becb886427fb512a32d523d6faf) を参照 | `<:alias:11938437` | | |
813-
| `🎉` | | | |
814-
| reacted_by | `snowflake` | リアクションしたアカウントID | `48499372` |
807+
| 項目名 || 説明 ||
808+
| ----------------------------------------------------------- | ------------------ | ---------------------------- | ---------- |
809+
| emoji | `string` | 絵文字 | |
810+
| 表記法は [絵文字の扱い](../endpoint.md#絵文字の扱い) を参照 | `<:alias:11938437` | | |
811+
| `🎉` | | | |
812+
| reacted_by | `snowflake` | リアクションしたアカウントID | `48499372` |

src/endpoint/timeline.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
### 入力
1313

1414
- パスパラメータ
15-
- `timeline_type`: ```string``, `undefined``
15+
- `timeline_type`: `string`, `undefined`
1616
- とり得る値: `home` / `global`
1717
- デフォルト: `home`
1818
- クエリパラメータ
@@ -22,7 +22,7 @@
2222
- `no_nsfw` : `bool | undefined`
2323
- デフォルト: `false`
2424
- NSFWフラグの立っているファイルを含む投稿を返さなくなります
25-
- `before_id` : ``snowflake`| undefined`
25+
- `before_id` : `snowflake| undefined`
2626
- デフォルト: `undefined`
2727
- ~~デフォルトでは現在取得できる最新の投稿から20件取得します.~~
2828
- 指定したIDより古い投稿を返します.指定したIDの投稿は含まれません
@@ -112,7 +112,7 @@
112112
- `no_nsfw` : `bool | undefined`
113113
- デフォルト: `false`
114114
- NSFWフラグの立っているファイルを1つでも含む投稿を返さなくなります
115-
- `before_id` : ``snowflake`| undefined`
115+
- `before_id` : `snowflake`| undefined`
116116
- デフォルト: `undefined`
117117
- デフォルトでは現在取得できる最新の投稿から20件取得します.
118118
- 指定したIDより古い投稿を返します.指定したIDの投稿は含まれません

src/introduction.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
<!-- toc -->
44

5-
Pulsate Specification は Pulsate プロジェクトに関する APIエンドポイントや設計などの仕様を記述したドキュメントです.
5+
<!-- deno-fmt-ignore -->
6+
Pulsate Specification は Pulsate プロジェクトに関するAPIエンドポイントや設計などの仕様を記述したドキュメントです.
67

78
プロジェクトの概要については [こちら](./project.md) をご覧ください.
89

src/model.md

-26
Original file line numberDiff line numberDiff line change
@@ -224,29 +224,3 @@ Pulsate に対して送信されたユーザー生成コンテンツのエンテ
224224
以下の属性が関連付けられます.
225225

226226
(wip)
227-
228-
# タイムライン
229-
230-
[アカウント関係](#アカウント関係)[検索述語](#検索述語) をベースに,
231-
ページネーションされた [投稿](#投稿)
232-
のコレクションを高速に取得するためのモデルです.
233-
234-
まず, この Pulsate システム全体で (Redis のようなインメモリ DB 内に)
235-
検索述語をキーとした大きな木構造を構築します. それらによる投稿 ID
236-
コレクションのフィルタ結果が常に全アカウント間で共有されます.
237-
238-
その木におけるノードでは, 要素数が 1000 以下の投稿 ID コレクションを保持します.
239-
240-
この木の更新は,
241-
誰かがタイムラインの作成および条件の編集を行ったタイミングで変更プランが保持され,
242-
一定時間ごとに履行されます.
243-
244-
## 投稿 ID コレクション
245-
246-
投稿 ID コレクションは, 投稿 ID を時系列データとしてページネーション &
247-
ランダムアクセスできるキューを実現します.
248-
対数時間以内に挿入とクエリができるデータ構造で構築します.
249-
250-
タイムラインとしての投稿 ID リストを取得するときは,
251-
そのパラメータである検索述語に最も近い ID コレクションを取得しつつ,
252-
取得後に細かい条件で別途フィルタします.

src/module.md

-23
Original file line numberDiff line numberDiff line change
@@ -62,26 +62,3 @@ TimelineModule ->> ActivityPubModule: 投稿作成イベント発火
6262

6363
- ActivityPubを経由した外部サーバーへのノート配送を行う.
6464
- ActivityPubを経由したノートの受信を行う.
65-
66-
## モジュール間通信
67-
68-
- Accountモジュールのモジュール間通信用サービスはこのように書く.
69-
- `pkg/intermodule/<モジュール名>.ts`のようなファイル名をつける.
70-
71-
```ts
72-
import { type Result } from "@mikuroxina/mini-fn";
73-
74-
import { type Account, type AccountName } from "../accounts/model/account.js";
75-
import type { FetchAccountService } from "../accounts/service/fetchAccount.js";
76-
77-
// Accountモジュールの他モジュールに対して公開するメソッド
78-
export class AccountModule {
79-
constructor(private readonly fetchAccountService: FetchAccountService) {}
80-
81-
async fetchAccount(
82-
name: AccountName,
83-
): Promise<Result.Result<Error, Account>> {
84-
return await this.fetchAccountService.fetchAccount(name);
85-
}
86-
}
87-
```

0 commit comments

Comments
 (0)