-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconstants.ts
More file actions
295 lines (282 loc) · 11.8 KB
/
Copy pathconstants.ts
File metadata and controls
295 lines (282 loc) · 11.8 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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
import { Activity, Lightbulb, PieChart, Zap } from 'lucide-react';
export const SAMPLE_DATA = {
en: `October 2nd, 2023
I've been using this platform for about three months now. Honestly, the UI is beautiful and I love the dashboard customization, but the export feature is constantly buggy. It crashes every time I try to download a CSV larger than 50MB.
October 5, 2023
Support team was super helpful today. I spoke with Sarah and she resolved my billing issue in under 5 minutes. This is why I stick with you guys despite the higher price point.
2023-10-10
Absolute garbage update. Why did you move the search bar? It makes my workflow twice as slow. Please revert to the old layout immediately.
Oct 12 '23
I'm really impressed with the new AI integration. It saved me hours of manual data entry this week. Keep these features coming!
10/15/2023
The mobile app needs serious work. It's sluggish on my iPhone 13 and keeps logging me out.
October 18, 2023
Just renewed our enterprise license. The reliability has been 99.9% this year, which is crucial for our operations.`,
id: `2 Oktober 2023
Saya sudah menggunakan platform ini selama sekitar tiga bulan. Jujur, antarmukanya indah dan saya suka kustomisasi dashboardnya, tapi fitur ekspornya selalu bermasalah. Selalu crash setiap kali saya mencoba mengunduh CSV yang lebih besar dari 50MB.
5 Oktober 2023
Tim support sangat membantu hari ini. Saya berbicara dengan Sarah dan dia menyelesaikan masalah tagihan saya dalam waktu kurang dari 5 menit. Inilah alasan saya tetap berlangganan meskipun harganya agak mahal.
10-10-2023
Update yang sangat buruk. Kenapa kalian memindahkan kolom pencarian? Ini membuat pekerjaan saya jadi dua kali lebih lambat. Tolong kembalikan ke tampilan lama segera.
12 Okt '23
Saya sangat terkesan dengan integrasi AI yang baru. Ini menghemat berjam-jam entri data manual minggu ini. Terus kembangkan fitur-fitur seperti ini!
15/10/2023
Aplikasi selulernya butuh perbaikan serius. Terasa sangat lambat di iPhone 13 saya dan sering log out sendiri.
18 Oktober 2023
Baru saja memperbarui lisensi enterprise kami. Reliabilitasnya mencapai 99,9% tahun ini, yang sangat krusial bagi operasional kami.`
};
export const UI_TEXT = {
en: {
heroTitle: "Customer Sentiment",
heroTitleGradient: "Intelligence",
subtitle: "Turn unstructured feedback into board-ready strategic insights.",
editorTitle: "Input Console",
modes: {
text: "Raw Text",
search: "Web Search",
file: "Upload File"
},
placeholder: "Paste customer reviews, support tickets, survey responses, or social media comments here...",
slideLabel: "Slide to analyze",
clear: "Clear",
sample: "Load Sample",
tooShort: "Input too short",
minChars: "Minimum 30 characters required for deep analysis.",
analysisFocus: {
label: "Analysis Goal / Lens (Optional)",
placeholder: "e.g., 'Focus on pricing complaints', 'Ignore shipping issues', 'Analyze feature requests only'...",
iconTitle: "Target specific insights"
},
file: {
dropTitle: "Drop CSV or JSON file",
dropSub: "or click to browse",
formats: "Supports .csv, .json (Max 5MB)",
selectCol: "Select Review Column",
selectColDesc: "Which column contains the customer feedback?",
preview: "Data Preview",
rowsLoaded: "rows loaded",
changeFile: "Change File",
jsonArrayError: "JSON must be an array of objects or strings."
},
history: "History",
noHistory: "No recent analyses found.",
loadingSteps: [
"Verifying content relevance...",
"Identifying sentiment patterns...",
"Extracting key topics...",
"Drafting executive summary..."
],
capabilitiesTitle: "What you'll get",
capabilities: [
{
title: "Executive Summary",
desc: "AI-drafted strategic brief for leadership.",
icon: Zap
},
{
title: "Sentiment Trends",
desc: "Velocity tracking over time.",
icon: Activity
},
{
title: "Topic Clustering",
desc: "Semantic grouping of issues.",
icon: PieChart
},
{
title: "Key Drivers",
desc: "What impacts satisfaction most.",
icon: Lightbulb
}
],
back: "New Analysis",
title: "Intelligence Report",
generated: "Generated on",
score: "Sentiment Score",
execTitle: "Executive Summary",
prioTitle: "Strategic Priorities",
prioLabel: "Priority",
trendTitle: "Sentiment Trend",
topicTitle: "Key Topics",
driverTitle: "Strategic Driver Matrix",
matrix: {
yAxis: "Sentiment Impact",
xAxis: "Mention Volume",
q1: "Critical Issues",
coreStrength: "Core Strengths",
criticalIssues: "Critical Issues",
hiddenGems: "Hidden Gems",
nicheComplaints: "Niche Issues"
},
driverModal: {
title: "Driver Drill-Down",
evidence: "Semantic Evidence",
impact: "Impact Score",
volume: "Volume",
desc: "Specific excerpts linked to this driver by AI analysis."
},
emotionTitle: "Emotional Profile",
voiceTitle: "Voice of the Customer",
compositionTitle: "Sentiment Composition",
confidential: "AI-Generated Intelligence • Intended for strategic reference. Please verify critical findings independently.",
export: "Export PDF",
exporting: "Generating...",
topicDetail: "Topic Insights",
noMentions: "No direct text matches found in the raw snippet.",
mentionsFound: "text matches found",
semanticDisclaimer: "Note: The AI identifies topics based on meaning and context, while this list finds exact text matches. Some references may be implied.",
sentiments: {
positive: "Positive",
negative: "Negative",
neutral: "Neutral"
},
faq: {
button: "FAQ",
title: "Frequently Asked Questions",
items: [
{
q: "How does this analyze my data?",
a: "We utilize Google's Gemini 3.0 Pro model to semantically process unstructured text. It goes beyond keyword matching to understand context, sarcasm, and complex customer sentiment."
},
{
q: "Why do results vary slightly?",
a: "Generative AI is probabilistic by nature. Running the exact same text twice may result in slightly different phrasing or minor variations in the sentiment score (e.g., 78 vs 81). This is normal; while the exact numbers may fluctuate, the core strategic insights remain consistent."
},
{
q: "Is my data private?",
a: "Yes. Your text is processed securely via enterprise-grade APIs and is not used to train public models. We do not store your data on our servers—your analysis history is saved locally in your browser."
},
{
q: "What is the 'Sentiment Score'?",
a: "It is a normalized metric (0-100) derived from the density and intensity of positive vs. negative statements. A score of 50 is neutral; above 60 indicates generally satisfied customers."
}
]
}
},
id: {
heroTitle: "Customer Sentiment",
heroTitleGradient: "Intelligence",
subtitle: "Transformasi umpan balik mentah menjadi wawasan strategis tingkat eksekutif.",
editorTitle: "Konsol Input",
modes: {
text: "Input Teks",
search: "Cari Web",
file: "Unggah File"
},
placeholder: "Tempel ulasan pelanggan, tiket dukungan, respons survei, atau komentar media sosial di sini...",
slideLabel: "Geser untuk analisa",
clear: "Hapus",
sample: "Muat Contoh",
tooShort: "Input terlalu pendek",
minChars: "Minimal 30 karakter diperlukan untuk analisis mendalam.",
analysisFocus: {
label: "Fokus Analisis (Opsional)",
placeholder: "Contoh: 'Fokus pada keluhan harga', 'Abaikan masalah pengiriman'...",
iconTitle: "Targetkan wawasan spesifik"
},
file: {
dropTitle: "Lepas file CSV atau JSON",
dropSub: "atau klik untuk memilih",
formats: "Mendukung .csv, .json (Maks 5MB)",
selectCol: "Pilih Kolom Ulasan",
selectColDesc: "Kolom mana yang berisi umpan balik pelanggan?",
preview: "Pratinjau Data",
rowsLoaded: "baris dimuat",
changeFile: "Ganti File",
jsonArrayError: "JSON harus berupa array objek atau string."
},
history: "Riwayat",
noHistory: "Belum ada riwayat analisis.",
loadingSteps: [
"Memverifikasi relevansi konten...",
"Mengidentifikasi pola sentimen...",
"Mengekstrak topik utama...",
"Menyusun ringkasan eksekutif..."
],
capabilitiesTitle: "Hasil Analisis",
capabilities: [
{
title: "Ringkasan Eksekutif",
desc: "Ringkasan strategis otomatis.",
icon: Zap
},
{
title: "Tren Sentimen",
desc: "Pelacakan sentimen dari waktu ke waktu.",
icon: Activity
},
{
title: "Pengelompokan Topik",
desc: "Analisis tema berbasis makna.",
icon: PieChart
},
{
title: "Faktor Penentu",
desc: "Apa yang paling memengaruhi kepuasan.",
icon: Lightbulb
}
],
back: "Analisis Baru",
title: "Laporan Intelijen",
generated: "Dibuat pada",
score: "Skor Sentimen",
execTitle: "Ringkasan Eksekutif",
prioTitle: "Prioritas Strategis",
prioLabel: "Prioritas",
trendTitle: "Tren Sentimen",
topicTitle: "Topik Utama",
driverTitle: "Matriks Faktor Strategis",
matrix: {
yAxis: "Dampak Sentimen",
xAxis: "Volume Diskusi",
coreStrength: "Kekuatan Utama",
criticalIssues: "Isu Kritis",
hiddenGems: "Potensi Tersembunyi",
nicheComplaints: "Isu Spesifik"
},
driverModal: {
title: "Detail Faktor Pendorong",
evidence: "Bukti Semantik",
impact: "Skor Dampak",
volume: "Volume",
desc: "Kutipan spesifik yang dikaitkan dengan faktor ini oleh analisis AI."
},
emotionTitle: "Profil Emosional",
voiceTitle: "Suara Pelanggan",
compositionTitle: "Komposisi Sentimen",
confidential: "Intelijen Berbasis AI • Ditujukan sebagai referensi strategis. Harap verifikasi temuan penting secara independen.",
export: "Ekspor PDF",
exporting: "Membuat...",
topicDetail: "Wawasan Topik",
noMentions: "Tidak ada kecocokan teks langsung ditemukan dalam cuplikan mentah.",
mentionsFound: "kecocokan teks ditemukan",
semanticDisclaimer: "Catatan: AI mengidentifikasi topik berdasarkan makna dan konteks, sementara daftar ini mencari kecocokan teks persis. Beberapa referensi mungkin tersirat.",
sentiments: {
positive: "Positif",
negative: "Negatif",
neutral: "Netral"
},
faq: {
button: "FAQ",
title: "Pertanyaan Umum",
items: [
{
q: "Bagaimana cara kerja analisis ini?",
a: "Kami menggunakan model Gemini 3.0 Pro dari Google untuk memproses teks tidak terstruktur secara semantik. Ini melampaui pencocokan kata kunci untuk memahami konteks, sarkasme, dan sentimen pelanggan yang kompleks."
},
{
q: "Mengapa hasilnya sedikit berbeda?",
a: "Generative AI bersifat probabilistik. Menjalankan teks yang sama persis dua kali dapat menghasilkan frasa yang sedikit berbeda atau variasi kecil dalam skor sentimen (misalnya, 78 vs 81). Ini normal; meskipun angka pastinya mungkin berfluktuasi, wawasan strategis intinya tetap konsisten."
},
{
q: "Apakah data saya aman?",
a: "Ya. Teks Anda diproses secara aman melalui API tingkat perusahaan dan tidak digunakan untuk melatih model publik. Kami tidak menyimpan data Anda di server kami—riwayat analisis Anda disimpan secara lokal di browser Anda."
},
{
q: "Apa itu 'Skor Sentimen'?",
a: "Ini adalah metrik yang dinormalisasi (0-100) yang diturunkan dari kepadatan dan intensitas pernyataan positif vs. negatif. Skor 50 adalah netral; di atas 60 menunjukkan pelanggan yang umumnya puas."
}
]
}
}
};