-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdata.js
More file actions
99 lines (86 loc) · 2.15 KB
/
Copy pathdata.js
File metadata and controls
99 lines (86 loc) · 2.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
// 全局数据存储
let tasks = [];
let knowledgeBase = [];
// 从存储中加载数据
export function loadData() {
return new Promise((resolve) => {
chrome.storage.local.get(['tasks', 'knowledgeBase', 'lastSync'], function(result) {
tasks = result.tasks || [];
knowledgeBase = result.knowledgeBase || [];
resolve({
tasks,
knowledgeBase,
lastSync: result.lastSync
});
});
});
}
// 保存数据到存储
export function saveData() {
return new Promise((resolve) => {
chrome.storage.local.set({
tasks: tasks,
knowledgeBase: knowledgeBase
}, resolve);
});
}
// 获取任务列表
export function getTasks() {
return tasks;
}
// 设置任务列表
export function setTasks(newTasks) {
tasks = newTasks;
}
// 获取知识库列表
export function getKnowledgeBase() {
return knowledgeBase;
}
// 设置知识库列表
export function setKnowledgeBase(newKnowledgeBase) {
knowledgeBase = newKnowledgeBase;
}
// 添加任务
export function addTask(task) {
tasks.unshift(task);
return saveData();
}
// 更新任务
export function updateTask(taskId, updates) {
const index = tasks.findIndex(task => task.id === taskId);
if (index !== -1) {
tasks[index] = { ...tasks[index], ...updates };
return saveData();
}
return Promise.resolve();
}
// 删除任务
export function deleteTask(taskId) {
tasks = tasks.filter(task => task.id !== taskId);
return saveData();
}
// 添加到知识库
export function addToKnowledgeBase(item) {
const existingIndex = knowledgeBase.findIndex(existing => existing.url === item.url);
if (existingIndex !== -1) {
knowledgeBase[existingIndex] = {
...item,
savedDate: new Date().toISOString()
};
} else {
knowledgeBase.unshift({
...item,
savedDate: new Date().toISOString()
});
}
return saveData();
}
// 更新知识库项目
export function updateKnowledgeItem(itemId, updates) {
const index = knowledgeBase.findIndex(item => item.id === itemId);
if (index !== -1) {
knowledgeBase[index] = { ...knowledgeBase[index], ...updates };
return saveData();
}
return Promise.resolve();
}