mirror of
https://github.com/hpware/news-analyze.git
synced 2025-06-23 07:41:02 +08:00
Compare commits
5 Commits
99a42a87f1
...
bd3a81dfbc
Author | SHA1 | Date | |
---|---|---|---|
bd3a81dfbc | |||
629d033702 | |||
6f759cb612 | |||
cd79f7ad8c | |||
d2f73e620a |
@ -14,9 +14,15 @@ Deploy: [via docker compose](/deploy.md)
|
|||||||
|
|
||||||
Goals before the next devlog: [Markdown file](/GOALS_BEFORE_NEXT_DEVLOG.md)
|
Goals before the next devlog: [Markdown file](/GOALS_BEFORE_NEXT_DEVLOG.md)
|
||||||
|
|
||||||
|
Video Guide: [YouTube](https://youtu.be/8P3qgVm6m6g)
|
||||||
|
|
||||||
## Demo:
|
## Demo:
|
||||||
https://yhw.tw/news
|
https://yhw.tw/news
|
||||||
|
|
||||||
|
## Video Guide
|
||||||
|
|
||||||
|
https://github.com/user-attachments/assets/29414c5d-3b2f-420d-93c0-95c14a15bbb7
|
||||||
|
|
||||||
## Issues:
|
## Issues:
|
||||||
### Onboarding:
|
### Onboarding:
|
||||||
Onboarding is a must for most people that are using the app for the first time, but I want to do to via a non-video like system, however implementing the function in a already large repo is kinda hard. So later this week, I will just add a basic video onboarding system.
|
Onboarding is a must for most people that are using the app for the first time, but I want to do to via a non-video like system, however implementing the function in a already large repo is kinda hard. So later this week, I will just add a basic video onboarding system.
|
||||||
|
@ -182,7 +182,7 @@ const useArgFindRel = (title, newsOrg) => {
|
|||||||
if (
|
if (
|
||||||
item.title !== title &&
|
item.title !== title &&
|
||||||
item.contentType === "GENERAL" &&
|
item.contentType === "GENERAL" &&
|
||||||
item.publisher === newsOrg
|
item.publisher !== newsOrg
|
||||||
) {
|
) {
|
||||||
const itemVector = tf(item.title);
|
const itemVector = tf(item.title);
|
||||||
const similarity = jaccardSimilarity(targetVector, itemVector);
|
const similarity = jaccardSimilarity(targetVector, itemVector);
|
||||||
|
@ -38,9 +38,6 @@ onMounted(async () => {
|
|||||||
useremail.value = res.email;
|
useremail.value = res.email;
|
||||||
isLoggedIn.value = true;
|
isLoggedIn.value = true;
|
||||||
});
|
});
|
||||||
const setFirstName = async () => {
|
|
||||||
const staticFirstName = "";
|
|
||||||
};
|
|
||||||
|
|
||||||
const emit = defineEmits(["windowopener"]);
|
const emit = defineEmits(["windowopener"]);
|
||||||
|
|
||||||
@ -69,7 +66,7 @@ const submitCustomApiKey = async () => {
|
|||||||
"Content-Type": "application/json",
|
"Content-Type": "application/json",
|
||||||
},
|
},
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
value: customApiKey,
|
value: customApiKey.value,
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -98,23 +95,12 @@ const confirmDelete = async () => {
|
|||||||
showDeleteDialog.value = false;
|
showDeleteDialog.value = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
const apiKey = customApiKey.value;
|
const deleteAccount = async () => {
|
||||||
try {
|
const req = await fetch("/api/user/sendUserChanges", {
|
||||||
const sendApi = await fetch("/api/ai/loadCustomGroqApi", {
|
method: "DELETE",
|
||||||
method: "POST",
|
|
||||||
headers: {
|
|
||||||
"Content-Type": "application/json",
|
|
||||||
},
|
|
||||||
body: JSON.stringify({
|
|
||||||
apiKey: apiKey,
|
|
||||||
}),
|
|
||||||
});
|
});
|
||||||
const data = await sendApi.json();
|
};
|
||||||
if (data.error) {
|
|
||||||
}
|
|
||||||
} catch (e) {
|
|
||||||
console.log(e);
|
|
||||||
}
|
|
||||||
const submitChangeAction = async (action: string) => {
|
const submitChangeAction = async (action: string) => {
|
||||||
const actions = [
|
const actions = [
|
||||||
{ name: "NAME", sendValue: enterFirstName.value },
|
{ name: "NAME", sendValue: enterFirstName.value },
|
||||||
|
@ -591,6 +591,7 @@ const toggleTranslate = (windowId: string) => {
|
|||||||
const translateAvailable = () => {};
|
const translateAvailable = () => {};
|
||||||
|
|
||||||
// Load user config via HTTP requests to the server.
|
// Load user config via HTTP requests to the server.
|
||||||
|
/*
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
const loadUserInfoData = await loadUserInfo();
|
const loadUserInfoData = await loadUserInfo();
|
||||||
if (!loadUserInfoData.user) {
|
if (!loadUserInfoData.user) {
|
||||||
@ -608,7 +609,7 @@ onMounted(async () => {
|
|||||||
// Use Google as the default translate provider
|
// Use Google as the default translate provider
|
||||||
translateProvider.value = loadUserInfoData.translate.provider || "google";
|
translateProvider.value = loadUserInfoData.translate.provider || "google";
|
||||||
console.log(langPrefDifferent);
|
console.log(langPrefDifferent);
|
||||||
});
|
});*/
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<div v-if="changeLangAnimation">
|
<div v-if="changeLangAnimation">
|
||||||
|
6
server/api/user/sendUserChanges.delete.ts
Normal file
6
server/api/user/sendUserChanges.delete.ts
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
export default defineEventHandler(async (event) => {
|
||||||
|
const userToken = getCookie(event, "token");
|
||||||
|
return {
|
||||||
|
token: userToken,
|
||||||
|
};
|
||||||
|
});
|
@ -21,6 +21,8 @@
|
|||||||
"色誘",
|
"色誘",
|
||||||
"死亡",
|
"死亡",
|
||||||
"撩妹",
|
"撩妹",
|
||||||
"裸上身"
|
"裸上身",
|
||||||
|
"曬辣",
|
||||||
|
"辣媽"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user