feat: 完善淘宝小程序拍照、报告与登录流程

接入本地实时识别和自动三连拍,调整报告裁切、商品跳转、分享标题及居中页眉;完善游客会话、后台渠道隔离、部署脚本与回归测试。
This commit is contained in:
xsl
2026-11-04 15:07:51 +08:00
parent 381da60ae4
commit 774376fa16
147 changed files with 17420 additions and 597 deletions
+21 -9
View File
@@ -17,6 +17,7 @@
(<image> 会额外解码约 32MB,并把页面滚动高度撑到 2608px)。
.report-body { padding: calc(28u) calc(17u) calc(42u) } */
.report { position: relative; }
/* 原生不透明页眉已预留系统顶部区域,正文恢复 H5 原有的 28u 上间距。 */
.report-body { position: relative; z-index: 1; padding: 56rpx 34rpx 84rpx; }
/* .report-title { font-size:23px; font-weight:600(覆盖 700); letter-spacing:calc(.5u);
@@ -318,14 +319,23 @@
background: #F5F078;
}
/* .detail-viewport { display:block; overflow:hidden } / .detail-panels { display:flex } →
acss 只渲染当前 Tab 的面板,视觉效果等价(H5 用 transform 横滑切换) */
.detail-viewport { overflow: hidden; }
.detail-panels { display: block; }
/* H5: follow the finger horizontally, leave vertical gestures to the report. */
.detail-viewport { overflow: hidden; touch-action: pan-y; transition: height .32s ease; }
.detail-viewport.dragging { transition: none; }
.detail-panels { display: flex; align-items: flex-start; transition: transform .32s cubic-bezier(.22,.61,.36,1); }
.detail-panels.dragging { transition: none; }
/* .detail-panels .dpanel { display:block; flex:0 0 100%; padding-top:calc(10u) } */
.dpanel { display: block; padding-top: 20rpx; }
.dpanel { display: block; flex: 0 0 100%; min-width: 0; padding-top: 20rpx; box-sizing: border-box; pointer-events: none; }
.dpanel.active { pointer-events: auto; }
/* .ditem { display:block(覆盖 flex) } */
.ditem { display: block; }
.report-zoom { position: fixed; inset: 0; z-index: 80; background: rgba(0,0,0,.92); display: flex; align-items: center; justify-content: center; }
.report-zoom-enter { animation: report-zoom-in .22s ease both; }
.report-zoom-frame { position: relative; overflow: hidden; background: #F6F6F6; transform-origin: center; }
.report-zoom-side { position: absolute; }
.report-zoom-bitmap { left:0; top:0; width:100%; height:100%; }
.report-zoom-canvas { position:fixed; left:-10000px; top:0; width:835px; height:738px; pointer-events:none; }
@keyframes report-zoom-in { from { opacity: 0; transform: scale(.88); } to { opacity: 1; transform: none; } }
/* ─── 检测图框(.viz-frame + .contour-front-frame 的 90% 高裁切)
.viz-frame { position:relative; width:calc(215u); height:calc(278u); margin:0 auto calc(12u);
@@ -429,11 +439,14 @@
}
/* H5 grid: figure[data-view="right"] { grid-column:2 } → 只剩右脸时仍占第二列 */
.contour-side.right { margin-left: auto; }
/* 轮廓和皱纹统一交换两张侧脸的位置,照片、标注及点击预览仍绑定原侧。 */
.contour-sides-reversed { flex-direction: row-reverse; }
.contour-sides-reversed .contour-side.right { margin-left: 0; margin-right: auto; }
.side-img {
position: absolute;
left: 0; top: 0;
width: 100%; height: 100%;
transform: translateY(-25%) scale(2.8);
transform: translateY(-25%) scale(2.52);
transform-origin: center;
}
.side-dim {
@@ -628,6 +641,5 @@
}
.report-disclaimer-line { display: block; }
/* ─── 小程序独有:历史报告入口(H5 报告页无此按钮)
沿用 H5 style.css 里已有的 .btn-more { margin: calc(26u) auto 0 },保持既有跳转不丢失 ─── */
.btn-more { margin: 52rpx auto 0; }
.session-guard { padding: 120rpx 40rpx; text-align: center; font-size: 13px; line-height: 1.8; color: #707070; }
.session-guard .btn-primary { margin: 32rpx auto 0; }