From ef94ef462e25995f30640e67b79809eb36376521 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B0=E6=9C=94?= <565183519@qq.com> Date: Tue, 18 Aug 2026 18:01:38 +0800 Subject: [PATCH] fix: hide education sensitive fields by default --- .../scripts/education-workspace.test.mjs | 5 +++-- product-source/hololake-native-desktop/src/main.tsx | 10 +++++----- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/product-source/hololake-native-desktop/scripts/education-workspace.test.mjs b/product-source/hololake-native-desktop/scripts/education-workspace.test.mjs index 319bb2eee..87c652a53 100644 --- a/product-source/hololake-native-desktop/scripts/education-workspace.test.mjs +++ b/product-source/hololake-native-desktop/scripts/education-workspace.test.mjs @@ -164,10 +164,11 @@ test('education table has four engine-backed views, filtering, sorting and bound assert.match(ui, /isSensitiveEducationColumn/) assert.match(ui, /账号\|账户\|手机号/) assert.match(ui, /联系qq\|qq号/) - assert.match(ui, /useState\(true\).*educationSensitiveVisible|educationSensitiveVisible, setEducationSensitiveVisible\] = useState\(true\)/) + assert.match(ui, /educationSensitiveVisible, setEducationSensitiveVisible\] = useState\(false\)/) assert.match(ui, /隐藏敏感字段/) assert.match(ui, /显示敏感字段/) - assert.doesNotMatch(ui, /setEducationSensitiveVisible\(false\)/) + assert.ok((ui.match(/setEducationSensitiveVisible\(false\)/g) || []).length >= 4) + assert.match(ui, /onClick=\{\(\) => setEducationSensitiveVisible\(true\)\}>在本机显示并打开工作表/) assert.match(ui, /type=\{sensitive && !educationSensitiveVisible \? 'password' : 'text'\}/) }) diff --git a/product-source/hololake-native-desktop/src/main.tsx b/product-source/hololake-native-desktop/src/main.tsx index 4dd36c62e..3a4680278 100644 --- a/product-source/hololake-native-desktop/src/main.tsx +++ b/product-source/hololake-native-desktop/src/main.tsx @@ -730,7 +730,7 @@ function HoloLakeApp() { const [educationTableSettingsOpen, setEducationTableSettingsOpen] = useState(false) const educationTableTitleRef = useRef(null) const [educationTableView, setEducationTableView] = useState('workbook') - const [educationSensitiveVisible, setEducationSensitiveVisible] = useState(true) + const [educationSensitiveVisible, setEducationSensitiveVisible] = useState(false) const [educationTableSortColumn, setEducationTableSortColumn] = useState(0) const [educationTableSortDirection, setEducationTableSortDirection] = useState('none') const [educationTablePageIndex, setEducationTablePageIndex] = useState(0) @@ -1249,7 +1249,7 @@ function HoloLakeApp() { setEducationTableGroupColumn(suggestEducationGroupColumn(table)) setEducationTableMeasureColumn(suggestEducationMeasureColumn(table)) setEducationTableSettingsOpen(false) - setEducationSensitiveVisible(true) + setEducationSensitiveVisible(false) } catch (error) { setEducationMessage(humanError(error, 'education')) } finally { setEducationBusy(false) } } @@ -1288,7 +1288,7 @@ function HoloLakeApp() { setActiveEducationTable(table) setEducationTableGroupColumn(suggestEducationGroupColumn(table)) setEducationTableMeasureColumn(suggestEducationMeasureColumn(table)) - setEducationSensitiveVisible(true) + setEducationSensitiveVisible(false) if (stage === 'educationAutomation') { setActiveEducationAutomationRule(snapshot.automationRules[0] || newEducationAutomationDraft(table)) setEducationAutomationPreview(null) @@ -1397,7 +1397,7 @@ function HoloLakeApp() { try { const table = await invoke('create_education_table', { input: { title: '未命名教育表格' } }) setActiveEducationTable(table) - setEducationSensitiveVisible(true) + setEducationSensitiveVisible(false) setEducationTableGroupColumn(0) setEducationTableMeasureColumn(0) await refreshEducationWorkspace() @@ -1422,7 +1422,7 @@ function HoloLakeApp() { if (firstTable) { const table = await invoke('read_education_table', { input: { tableId: firstTable.tableId } }) setActiveEducationTable(table) - setEducationSensitiveVisible(true) + setEducationSensitiveVisible(false) setEducationTableGroupColumn(suggestEducationGroupColumn(table)) setEducationTableMeasureColumn(suggestEducationMeasureColumn(table)) }