folder(フォルダー)
eagle.folder API を使って、新しいフォルダを簡単に作成したり、現在のアプリケーション内のフォルダにアクセスすることができます。
// Eagle アプリで現在選択されているフォルダを取得
let folder = (await eagle.folder.getSelected())[0];
// 属性を変更
folder.name = '新しいフォルダ名';
folder.description = '新しい説明...';
// 変更を保存
await folder.save();
🦄 ベストプラクティス: データの安全性を確保するために、API が提供する save()
メソッドを使用してデータの読み書きや変更を行い、Eagle リソースライブラリの下の metadata.json
や任意のファイルを直接変更しないようにしてください。
メソッド
create(options)
フォルダを作成します。
options
Objectname
string - フォルダ名description
string (任意) - フォルダの説明parent
string (任意) - 親フォルダの ID。このパラメーター付きだとcreateSubfolder(parentId, options)
と同じです。
戻り値
Promise<folder: Folder>
- 成功したfolder
を返します。
let newFolder = await eagle.folder.create({
name: '新しいフォルダ',
description: 'フォルダの説明。',
});
createSubfolder(parentId, options)
サブフォルダを作成します。
parentId
string - 親フォルダの IDoptions
Objectname
string - フォルダ名description
string (任意) - フォルダの説明
戻り値
Promise<folder: Folder>
- 成功したfolder
を返します。
let parentFolder = await eagle.folder.getById('folder_id');
let subFolder = await eagle.folder.createSubfolder(parentFolder.id, {
name: 'サブフォルダ',
description: 'サブフォルダの説明。',
});
get(options)
指定条件のフォルダを取得。
options
Object - 検索条件id
string (任意) - フォルダの idids
string[] (任意) - フォルダ id の配列isSelected
boolean (任意) - 現在選択されているフォルダisRecent
boolean (任意) - 最近利用したフォルダ
戻り値
Promise<folders: Folder[]>
- 検索結果のfolders
// 指定された id のフォルダを取得
let folders = await eagle.folder.get({
ids: ['folder_id1', 'folder_id2']
});
// 現在のアプリで選択されているフォルダを取得
let folders = await eagle.folder.get({
isSelected: true
});
getAll()
すべてのフォルダを取得します。
戻り値
Promise<folders: Folder[]>
-folders
を返します。
let folders = await eagle.folder.getAll();
getById(folderId)
対応する folderId
のフォルダーを取得します。
folderId
string - フォルダの id返り値
Promise<folder: Folder>
-folder
の検索結果
let folder = await eagle.folder.getById('folder_id');
getByIds(folderIds)
対応する folderIds
のフォルダーアレイを取得します。
folderIds
string[] - フォルダー id のアレイ返り値
Promise<folders: Folder[]>
-folders
の検索結果
let folders = await eagle.folder.getByIds(['folder_id1', 'folder_id2']);
getSelected()
現在のアプリケーションで選択されているフォルダーを取得します。
返り値
Promise<folders: Folder[]>
-folders
let folders = await eagle.folder.getSelected();
getRecents()
最近使用されたフォルダーを取得します。
返り値
Promise<folders: Folder[]>
-folders
let folders = await eagle.folder.getRecents();
open(folderId)
Eagle は対応する folderId
のフォルダーを開きます。
返り値
Promise<void>
await eagle.folder.open('folder_id');
// 以下と同等
let folder = await eagle.folder.getById('folder_id');
await folder.open();
クラス:Folder
Folder API get
から返される Object タイプで、変更および保存機能を提供します。
let folder = await eagle.folder.getById('folder_id');
console.log(folder.id);
console.log(folder.name);
folder.name = 'new name';
console.log(folder.name);
await folder.save();
🦄 ベストプラクティス: データの安全性を確保するために、Folder インスタンスが提供する save()
メソッドを使用してデータの取得および変更を行い、Eagle のリソースリポジトリの下の metadata.json
または任意のファイルを直接変更しないでください。
インスタンスメソッド
save()
すべての変更を保存します。
返り値
Promise<void>
let folder = await eagle.folder.getById('folder_id');
folder.name = 'New Fodler Name';
// 変更を保存
await folder.save();
open()
Eagle はこのフォルダーを開きます。
返り値
Promise<void>
let folder = await eagle.folder.getById('folder_id');
await folder.open();
// これと等価
await eagle.folder.open('folder_id');
インスタンス属性
Folder
インスタンスには以下の属性が含まれます:
id
string
id
string読み取り専用、フォルダー id。
name
string
name
stringフォルダー名。
description
string
description
stringフォルダーの説明、紹介。
icon
string
icon
string読み取り専用、フォルダーのアイコン。
iconColor
string
iconColor
stringフォルダーのアイコンの色。
let folder = await eagle.folder.getById('folder_id');
// フォルダーの色を赤に設定
folder.iconColor = eagle.folder.IconColor.Red;
// または文字列値を直接使用
folder.iconColor = 'red';
// 変更を保存
await folder.save();
createdAt
Integer
createdAt
Integer読み取り専用、フォルダーの作成時間(タイムスタンプ)。
let date = new Date(folder.createdAt);
parent
string
parent
string親フォルダー ID。
let folder = await eagle.folder.getById('folder_id');
// 親フォルダー ID を取得
console.log(folder.parent);
// 親フォルダーを変更(フォルダーを別の親フォルダーに移動)
folder.parent = 'parent_folder_id';
await folder.save();
// ルートディレクトリに移動(null または undefined に設定)
folder.parent = null;
await folder.save();
children
Folder[]
children
Folder[]読み取り専用、子フォルダーの配列。
let children = folder.children;
console.log(children[0]);
await children[0].open();
静的プロパティ
IconColor
Object
IconColor
Objectフォルダーの iconColor
プロパティを設定するための事前定義されたフォルダーアイコンの色定数を提供します。
// 利用可能な色定数
eagle.folder.IconColor.Red // 'red'
eagle.folder.IconColor.Orange // 'orange'
eagle.folder.IconColor.Yellow // 'yellow'
eagle.folder.IconColor.Green // 'green'
eagle.folder.IconColor.Aqua // 'aqua'
eagle.folder.IconColor.Blue // 'blue'
eagle.folder.IconColor.Purple // 'purple'
eagle.folder.IconColor.Pink // 'pink'
使用例:
let folder = await eagle.folder.getById('folder_id');
// 色定数を使用してフォルダーの色を設定
folder.iconColor = eagle.folder.IconColor.Blue;
await folder.save();
// 複数のフォルダーの色を一括設定
let folders = await eagle.folder.getAll();
for (let i = 0; i < folders.length; i++) {
if (i % 2 === 0) {
folders[i].iconColor = eagle.folder.IconColor.Green;
} else {
folders[i].iconColor = eagle.folder.IconColor.Purple;
}
await folders[i].save();
}
🦄 ベストプラクティス: より良いコードヒントと型安全性のために、文字列値を直接使用するのではなく、eagle.folder.IconColor
定数を使用することをお勧めします。
最終更新