Skip to content

Commit e8d23ca

Browse files
committed
update
1 parent 8006831 commit e8d23ca

File tree

14 files changed

+656
-490
lines changed

14 files changed

+656
-490
lines changed

.tool-versions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
bun 1.2.14
1+
bun 1.2.22

.vscode/extensions.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"tauri-apps.tauri-vscode",
66
"dbaeumer.vscode-eslint",
77
"antfu.unocss",
8-
"huacnlee.autocorrect"
8+
"huacnlee.autocorrect",
9+
"lokalise.i18n-ally"
910
]
1011
}

.vscode/settings.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"i18n-ally.localesPaths": [
3+
"src/locales"
4+
]
5+
}

bun.lock

Lines changed: 206 additions & 70 deletions
Large diffs are not rendered by default.

package.json

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,8 @@
3232
"@typed-sigterm/eslint-config": "^1.6.0",
3333
"@types/bun": "^1.2.22",
3434
"@types/markdown-it": "^14.1.2",
35-
"@types/mixpanel-browser": "^2.66.0",
3635
"@types/semver": "^7.7.1",
37-
"@vitejs/plugin-vue": "^7.0.0",
36+
"@vitejs/plugin-vue": "^6.0.1",
3837
"@vitejs/plugin-vue-jsx": "^5.1.1",
3938
"@vue/tsconfig": "^0.8.1",
4039
"@vueuse/core": "^13.9.0",
@@ -44,7 +43,7 @@
4443
"js-confetti": "^0.13.1",
4544
"markdown-it-for-inline": "^2.0.1",
4645
"mitt": "^3.0.1",
47-
"mixpanel-browser": "^2.70.0",
46+
"mixpanel-browser": "^2.71.0",
4847
"mock-local-storage": "^1.1.24",
4948
"naive-ui": "^2.43.1",
5049
"pinia": "^3.0.3",
@@ -54,11 +53,11 @@
5453
"unplugin-icons": "^22.3.0",
5554
"unplugin-vue-components": "^29.0.0",
5655
"unplugin-vue-markdown": "^29.1.0",
57-
"vite": "^7.0.5",
56+
"vite": "^7.1.9",
5857
"vitest": "^3.2.4",
5958
"vue": "^3.5.21",
6059
"vue-i18n": "^11.1.12",
61-
"vue-tsc": "3.0.7",
60+
"vue-tsc": "^3.1.0",
6261
"xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz",
6362
"zod": "^4.1.8"
6463
},
@@ -67,8 +66,5 @@
6766
"core-js",
6867
"esbuild",
6968
"vue-demi"
70-
],
71-
"patchedDependencies": {
72-
"@tauri-apps/[email protected]": "patches/@tauri-apps%[email protected]"
73-
}
69+
]
7470
}

patches/@tauri-apps%[email protected]

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/app.vue

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
<script lang="tsx" setup>
22
import { promiseTimeout, useScreenOrientation, watchImmediate } from '@vueuse/core';
3-
import mp from 'mixpanel-browser';
43
import { enUS, zhCN } from 'naive-ui';
54
import { computed, markRaw, onMounted, ref, watch } from 'vue';
65
import { useI18n } from 'vue-i18n';
76
import { useThemeStore } from '@/stores/theme';
8-
import { __APP__, __GA__, isPortable } from '@/utils/app';
7+
import { __APP__, isPortable } from '@/utils/app';
98
import { bus } from '@/utils/event';
109
import { initPortable } from '@/utils/fs';
1110
import { triggerWelcomeGuide } from '@/utils/guide';
1211
import { setupI18nHooks, ui } from '@/utils/ui';
12+
import { initAnalytics } from './utils/analytics';
1313
1414
setupI18nHooks();
1515
@@ -77,14 +77,6 @@ watch(orientation, () => {
7777
alertOrientation();
7878
});
7979
80-
const token = import.meta.env.EXC_MIXPANEL_TOKEN;
81-
mp.init(token, {
82-
persistence: 'localStorage',
83-
track_pageview: __GA__,
84-
});
85-
if (!__GA__)
86-
mp.disable();
87-
8880
// portable 下 localStorage 与文件同步
8981
onMounted(async () => {
9082
if (__APP__ && await isPortable()) // tree-shake
@@ -94,6 +86,8 @@ onMounted(async () => {
9486
function hideSpin() {
9587
document.getElementById('app')!.removeAttribute('data-loading');
9688
}
89+
90+
onMounted(initAnalytics);
9791
</script>
9892

9993
<template>
@@ -120,4 +114,3 @@ function hideSpin() {
120114
transition: opacity 0.3s;
121115
}
122116
</style>
123-

src/locales/en.json

Lines changed: 208 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,208 @@
1+
{
2+
"cancel": "Cancel",
3+
"confirm": "Confirm",
4+
"copied": "Copied",
5+
"copy": "Copy",
6+
"error": "Error",
7+
"done": "Done",
8+
"guide": {
9+
"welcome": [
10+
{
11+
"title": "Welcome to ExCaller",
12+
"description": "This is a simple random call tool."
13+
},
14+
{
15+
"title": "Start calling",
16+
"description": "Click the green button to start calling."
17+
},
18+
{
19+
"title": "Settings",
20+
"description": "Click the blue button to open the settings page."
21+
},
22+
{
23+
"title": "That's it",
24+
"description": "Is it simple enough? (lol)"
25+
}
26+
],
27+
"stopRolling": [
28+
{
29+
"title": "Stop rolling",
30+
"description": "Click the red button to stop rolling."
31+
}
32+
],
33+
"namelist": [
34+
{
35+
"title": "Namelist feature",
36+
"description": "It is what you think it is."
37+
},
38+
{
39+
"title": "Batch import/export",
40+
"description": "You can batch add names, or import names from Excel. Of course, you can also export the list to a text file."
41+
},
42+
{
43+
"title": "Multiple lists",
44+
"description": "You can create multiple lists, and different lists do not interfere with each other. Click the dropdown box to switch the currently effective list."
45+
}
46+
],
47+
"group": [
48+
{
49+
"title": "Group feature",
50+
"description": "You can group names, and narrow down the range of names to be called."
51+
},
52+
{
53+
"title": "Enable group calling",
54+
"description": "Limiting the range of names to be called within the group."
55+
}
56+
],
57+
"plan": [
58+
{
59+
"title": "Plan feature",
60+
"description": "You can enable Plan to control the next draws."
61+
},
62+
{
63+
"title": "But to prevent abuse",
64+
"description": "After enabling the plan feature, the settings button will turn red."
65+
}
66+
]
67+
},
68+
"next-step": "Next",
69+
"prev-step": "Prev",
70+
"progress-template": "Step {0} / {1}",
71+
"namelist-n": "Namelist {0}",
72+
"group-n": "Group {0}",
73+
"app": {
74+
"orientation": {
75+
"title": "Prefer Landscape Mode",
76+
"content-1": "ExCaller is designed to be used in landscape mode, and may have UI issues in portrait mode.",
77+
"content-2": "You can open the notification bar and enable \"Auto-rotate\", then rotate your device to landscape mode."
78+
}
79+
},
80+
"changelog": {
81+
"canary-tip": "For the latest changes in the canary version, please visit {0}.",
82+
"build-time": "Build time:"
83+
},
84+
"checksum": {
85+
"label": "Checksum:",
86+
"notes": "Used to verify the integrity of {0}. If {0} is modified, the entire checksum will change",
87+
"expand": "Expand",
88+
"collapse": "Collapse"
89+
},
90+
"data-operations": {
91+
"export": "Export"
92+
},
93+
"import-from": {
94+
"excel": {
95+
"title": "Import Excel",
96+
"click-or-drag": "Click or drag file here",
97+
"supported-files": "Supported .xls .xlsx .csv files",
98+
"not-detected": "No names detected"
99+
},
100+
"text": {
101+
"title": "Batch Input",
102+
"tip": "One name per line, automatically remove leading and trailing spaces and empty lines.",
103+
"confirm": "Confirm",
104+
"empty-input": "Please input names",
105+
"cancel": "Cancel"
106+
}
107+
},
108+
"namelist": {
109+
"group-selector": {
110+
"create-group": "Create new group"
111+
},
112+
"name": {
113+
"rename": "Rename",
114+
"confirm-deletion-title": "Delete",
115+
"confirm-deletion": "Confirm deleting namelist {0}? This action cannot be undone!",
116+
"name-duplicated": "Duplicated with existing name",
117+
"namelist-renamed": "Namelist {0} is renamed to {1}"
118+
},
119+
"selector": {
120+
"create-namelist": "Create new namelist"
121+
}
122+
},
123+
"popover-rename": {
124+
"rename": "Rename"
125+
},
126+
"result-board": {
127+
"continue-rolling": "Continue"
128+
},
129+
"settings": {
130+
"title": "Settings",
131+
"entry": {
132+
"namelist": "Namelists",
133+
"group": "Groups",
134+
"theme": "Theme",
135+
"plan": "Plans",
136+
"unsupported": "Due to technical limitations, please download the App to experience this feature"
137+
},
138+
"feedback": "submit feedback",
139+
"canary": "You are using the Canary version, which is considered as unstable. If you encounter any problems, please {1}.",
140+
"portable": "The portable version may have some bugs, desktop version is recommended. If you encounter any problems, please {1}.",
141+
"footer": {
142+
"changelog": "Changelog",
143+
"changelog-title": "ExCaller Changelog",
144+
"check-update": "Check Update",
145+
"download-app": "Download App",
146+
"no-update": "Already up to date",
147+
"feedback": {
148+
"title": "Send Feedback",
149+
"desc": "If you have any problems or suggestions while using ExCaller, feel free to send feedback to us.",
150+
"methods": "You can send feedback through either of the following ways:",
151+
"recommended": "Recommended",
152+
"github": {
153+
"message": "{0} on GitHub",
154+
"link": "Create an issue"
155+
},
156+
"gitee": {
157+
"message": "If you cannot access GitHub, you can {0} on Gitee",
158+
"link": "create an issue"
159+
},
160+
"email": {
161+
"message": "{0} to {1}",
162+
"link": "Send an email"
163+
},
164+
"canary": "If the problem only occurs in the Canary version, please indicate in the feedback.",
165+
"thanks": "After receiving the feedback, we will process it as soon as possible. Thank you for your support.",
166+
"contributing": "Anyone can view the source code of ExCaller. If you know how to program, you are welcome to contribute on GitHub."
167+
}
168+
},
169+
"group": {
170+
"add-name": "Add Name",
171+
"current-namelist": "Current Namelist",
172+
"edit-title": "Edit Group: {0}",
173+
"name-duplicated": "Duplicated with existing name",
174+
"add-group": "Add Group",
175+
"enable": "Enable",
176+
"pre-import": "Import {0} names to group:"
177+
},
178+
"namelist": {
179+
"namelist": "the namelist",
180+
"current": "Current Namelist",
181+
"create-namelist": "New",
182+
"namelist-created": "New namelist {0} is created",
183+
"namelist-deleted": "Namelist {0} is deleted",
184+
"detected-names": "Detected {0} names, click \"Next\" to import.",
185+
"pre-import": "Import {0} names to namelist:"
186+
},
187+
"plan": {
188+
"enable-plan": "Enable Plan",
189+
"planned-next": "Next to be called",
190+
"create-list": "Add"
191+
},
192+
"theme": {
193+
"default-background": "Default Background",
194+
"background-rolling": "Background When Rolling"
195+
},
196+
"ui": {
197+
"interval": "Interval",
198+
"confetti": "Confetti Effect",
199+
"second": "s"
200+
}
201+
},
202+
"updater": {
203+
"title": "New Version {0} Available",
204+
"go": "Read More",
205+
"skip": "Skip",
206+
"view-changelog": "View Changelog"
207+
}
208+
}

0 commit comments

Comments
 (0)