From d71bda5e0b222feb8ac461deb59aeef2305438ed Mon Sep 17 00:00:00 2001 From: duanshuwen Date: Thu, 23 Jul 2026 20:45:30 +0800 Subject: [PATCH] feat(aigc): add user agreement page and update consent dialog Add new AIGC user agreement page with scrollable markdown rendering, loading and retry states. Register the new route in pages.json. Restructure AigcConsentDialog's content into styled sections, and update its rule click handler to navigate directly to the new agreement page. --- src/pages-aigc/agreement/agreement.vue | 53 +++++++++ src/pages-aigc/agreement/styles/index.scss | 54 +++++++++ .../components/AigcConsentDialog/index.vue | 69 +++++++----- .../AigcConsentDialog/styles/index.scss | 22 ++++ src/pages.json | 106 +++++++++--------- 5 files changed, 223 insertions(+), 81 deletions(-) create mode 100644 src/pages-aigc/agreement/agreement.vue create mode 100644 src/pages-aigc/agreement/styles/index.scss diff --git a/src/pages-aigc/agreement/agreement.vue b/src/pages-aigc/agreement/agreement.vue new file mode 100644 index 0000000..a131d4a --- /dev/null +++ b/src/pages-aigc/agreement/agreement.vue @@ -0,0 +1,53 @@ + + + + + diff --git a/src/pages-aigc/agreement/styles/index.scss b/src/pages-aigc/agreement/styles/index.scss new file mode 100644 index 0000000..ac4f7d0 --- /dev/null +++ b/src/pages-aigc/agreement/styles/index.scss @@ -0,0 +1,54 @@ +.aigc-agreement-page { + width: 100%; + height: 100vh; + display: flex; + flex-direction: column; + overflow: hidden; + background: #ffffff; +} + +.aigc-agreement-scroll { + height: 0; + flex: 1 1 auto; + min-height: 0; + background: #ffffff; +} + +.aigc-agreement-document { + min-height: 100%; + padding: 20px 16px calc(24px + env(safe-area-inset-bottom)); + box-sizing: border-box; +} + +.aigc-agreement-state { + min-height: 240px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + padding: 24px; + color: #7b8798; + font-size: 14px; + line-height: 22px; + box-sizing: border-box; +} + +.aigc-agreement-retry { + width: 120px; + height: 42px; + display: flex; + align-items: center; + justify-content: center; + margin: 16px 0 0; + padding: 0; + border-radius: 999px; + background: #102942; + color: #ffffff; + font-size: 14px; + line-height: 20px; + font-weight: 800; +} + +.aigc-agreement-retry::after { + border: 0; +} diff --git a/src/pages-aigc/home/components/AigcConsentDialog/index.vue b/src/pages-aigc/home/components/AigcConsentDialog/index.vue index 3331d68..2e479b0 100644 --- a/src/pages-aigc/home/components/AigcConsentDialog/index.vue +++ b/src/pages-aigc/home/components/AigcConsentDialog/index.vue @@ -1,41 +1,37 @@