Tsudzuri Logo
Tsudzuri
拡張機能開発/API リファレンス

API リファレンス

拡張機能から利用可能な api オブジェクトの完全な仕様です。

datasetUI の登録

registerHeaderButton(button)

ヘッダー(画面右上)にアイコンボタンを追加します。

Signature
Parameters
  • idstringボタンの一意なID
  • iconstringLucideアイコンの名前(例: 'Star', 'File')
  • labelstringツールチップ等に表示されるラベル
  • onClick() => voidクリック時のハンドラ

registerToolbarButton(button)

エディタ下部のツールバーにボタンを追加します。

Signature
Parameters
  • idstringボタンの一意なID
  • labelstringボタンのラベル(アクセシビリティ用)
  • textstringボタンに表示されるテキスト
  • tooltipstring(オプション)ツールチップテキスト

registerSidePanel(panel)

右サイドバーに新しいパネルタブを追加します。

Signature
Parameters
  • idstringパネルの一意なID
  • labelstringパネルのタイトル
  • iconstringLucideアイコンの名前
  • componentReact.ComponentTypeパネル内に描画するReactコンポーネント

registerTheme(theme)

新しいカラーテーマを追加します。

Signature
Parameters
  • idstringテーマの一意なID
  • labelstringテーマの表示名
  • base'light' | 'dark'ベースとなるテーマ
  • cssstringCSS変数定義(例: '--color-bg-primary: #fff;')

registerSettingsPage(page)

設定モーダルに独自の設定ページを追加します。

Signature
Parameters
  • idstringページの一意なID
  • labelstringサイドバーに表示されるラベル
  • iconstringLucideアイコンの名前
  • componentReact.ComponentType設定ページとして描画するReactコンポーネント

registerPreviewMode(mode)

新しいプレビューモードを追加します。

Signature
Parameters
  • idstringモードの一意なID
  • labelstringドロップダウンに表示されるラベル
  • componentReact.ComponentTypeプレビューを表示するコンポーネント

registerCommand(command)

コマンドパレット等から実行可能なコマンドを追加します。

Signature
Parameters
  • idstringコマンドの一意なID
  • labelstringコマンドの表示名
  • execute() => void実行する関数

databaseデータアクセス・操作

getProjectStore()

アプリケーションのプロジェクトストア(Zustand)に直接アクセスします。

Signature
Returns
ProjectStoreState

getUIStore()

アプリケーションのUIストア(Zustand)に直接アクセスします。

Signature
Returns
UIStoreState

getCurrentFile()

現在アクティブなファイル(エディタで開いているファイル)の情報を取得します。

Signature
Returns
{ id, name, content } | null

getVariables()

プロジェクトで定義されている変数の一覧を取得します。

Signature
Returns
Array<{ name, value }>

extractVariableNames(text)

テキスト内の変数(var{name}形式)を抽出します。

Signature
Parameters
  • textstring対象のテキスト
Returns
string[]

replaceVariables(text, customValues?)

テキスト内の変数を値に置換します。customValuesを指定すると、一時的に値を上書きできます。

Signature
Parameters
  • textstring対象のテキスト
  • customValuesRecord<string, string>(オプション)変数の上書き値
Returns
string

saveExtensionData(extensionId, key, data)

拡張機能固有のデータをプロジェクト内(.app/extensions/{id}/)にJSONとして保存します。

Signature
Parameters
  • extensionIdstring拡張機能のID
  • keystring保存するデータのキー(ファイル名になります)
  • dataanyJSONシリアライズ可能なオブジェクト
Returns
Promise<void>

loadExtensionData(extensionId, key)

保存された拡張機能データを読み込みます。

Signature
Parameters
  • extensionIdstring拡張機能のID
  • keystringデータのキー
Returns
Promise<any>

subscribeToProjectStore(listener)

プロジェクトストアの変更を監視します。

Signature
Parameters
  • listener(state, prevState) => voidコールバック関数
Returns
() => void (unsubscribe function)

settings設定操作

getSettings()

現在のアプリケーション設定を取得します。

Signature
Returns
{ editor, proofreading, writing, autocomplete, fonts, theme }

updateSettings(settings)

アプリケーション設定を更新します。変更したい部分のみを指定できます。

Signature
Parameters
  • settingsPartial<Settings>更新する設定オブジェクト

edit_noteエディタ操作

getOpenTabs()

現在開いているタブの一覧を取得します。

Signature
Returns
Array<{ id, name, content }>

getActiveTab()

現在アクティブなタブ(ファイル)の情報を取得します。

Signature
Returns
{ id, name, content } | null

updateTabContent(fileId, content)

指定したファイルの内容を更新し、エディタの表示にも反映させます。

Signature
Parameters
  • fileIdstring更新するファイルのID
  • contentstring新しいファイル内容

insertText(text)

現在のアクティブなエディタのカーソル位置にテキストを挿入します。

Signature
Parameters
  • textstring挿入するテキスト

folderファイル操作

getFileTree()

プロジェクト内の全ファイル・フォルダ構造を取得します。

Signature
Returns
Array<{ id, name, type, parentId, content? }>

createFile(name, type, parentId)

新しいファイルまたはフォルダを作成します。

Signature
Parameters
  • namestringファイル名
  • type'file' | 'folder'種類
  • parentIdstring | null親フォルダのID(ルートの場合はnull)
Returns
Promise<void>

deleteFile(fileId)

ファイルを削除します。

Signature
Parameters
  • fileIdstring削除するファイルのID
Returns
Promise<void>

moveFile(fileId, newParentId)

ファイルを移動します。

Signature
Parameters
  • fileIdstring移動するファイルのID
  • newParentIdstring | null移動先のフォルダID
Returns
Promise<void>

renameFile(fileId, newName)

ファイル名を変更します。

Signature
Parameters
  • fileIdstring変更するファイルのID
  • newNamestring新しいファイル名
Returns
Promise<void>

readFile(fileId)

ファイルの内容を読み込みます。

Signature
Parameters
  • fileIdstring読み込むファイルのID
Returns
string | null

writeFile(fileId, content)

ファイルに内容を書き込み、保存します。

Signature
Parameters
  • fileIdstring書き込むファイルのID
  • contentstring書き込む内容
Returns
Promise<void>

buildユーティリティ

showNotification(message, type)

画面下部にトースト通知を表示します。

Signature
Parameters
  • messagestring通知メッセージ
  • type'info' | 'success' | 'warning' | 'error'通知タイプ

addEventListener(event, handler)

拡張機能間通信やシステムイベントのためのイベントリスナーを登録します。

Signature
Parameters
  • eventstringイベント名
  • handler(...args: any[]) => voidハンドラ関数

removeEventListener(event, handler)

イベントリスナーを解除します。

Signature
Parameters
  • eventstringイベント名
  • handlerFunction解除するハンドラ関数