diff --git a/.ua/backlog.json b/.ua/backlog.json index a866e97..e384a8e 100644 --- a/.ua/backlog.json +++ b/.ua/backlog.json @@ -1068,6 +1068,14 @@ "acceptance": "内核 getVisibleRows(paged=false) 跳过 pagination 阶段并新增 getAllRows(),派生上下文带 paged 标记(缺省分页),分页快照不受影响;dataTable 新增 exportable / exportName,工具栏按钮导出筛选+排序后的全量行、单元格走 format;CSV 带 BOM + CRLF、逗号引号换行正确转义;冒烟补 4 条不变量;npm run check 全绿", "notes": "自补:功能缺口;核心只加可选参数与一个实例方法,不动既有签名", "status": "done" + }, + { + "id": "g89", + "title": "演示产物启用保守压缩", + "motivation": "demo.html 单文件 278 KB,其中 JS 近 190 KB 全是未压缩的空白与冗余括号;演示页是给别人点开看的产物,体积直接影响加载体验,而全量 minify 会把标识符改短、不利于现场排查", + "acceptance": "esbuild 开启 minifyWhitespace + minifySyntax(保留标识符),产物仍可读;demo.html 由 278 KB 降到 205 KB(JS 190 KB → 120 KB);产物语法可被 node --check 通过,sec-space / ua-col-grip 等新增内容仍在;npm run check 全绿", + "notes": "自补:构建改进;刻意不用全量 minify,平衡体积与可读性", + "status": "open" } ] } diff --git a/apps/demo/build.mjs b/apps/demo/build.mjs index 7c89c68..5610b97 100644 --- a/apps/demo/build.mjs +++ b/apps/demo/build.mjs @@ -21,6 +21,8 @@ const result = await esbuild.build({ format: 'iife', target: 'es2020', charset: 'utf8', // 中文保留原文,不转义为 \uXXXX + minifyWhitespace: true, // 保守压缩:去空白与多余括号,保留标识符,产物仍可读可调 + minifySyntax: true, write: false, legalComments: 'none', alias: {