(function(i,T){if(typeof module=="object"&&module.exports){module.exports=T(i);return}i.FeedPages=T(i),i.document&&i.document.addEventListener("DOMContentLoaded",function(){i.FeedPages.init()})})(typeof globalThis!="undefined"?globalThis:window,function(i){"use strict";function T(e){return i.ProfileUI&&typeof i.ProfileUI.confirmAction=="function"?i.ProfileUI.confirmAction(e):Promise.resolve(!i.confirm||i.confirm(e))}var E=i.MediaDisplay||(typeof require=="function"?require("./media-display.js"):null),F=i.document,H=20,I=1,U={},L={},M={},c={userId:"",canEditContent:!1,canManage:!1};function w(){return i.GenealogyApi&&i.GenealogyApi.defaultClient}function ee(e,t){var a=t&&(t.status||t.code);return!e||!e.getToken||!e.getToken()||Number(a)===401}function u(e,t){return ee(e,t)?(e&&e.clearToken&&e.clearToken(),i.NavigationUtil.open("login.html"),!0):!1}function o(e,t){return F?(t||F).querySelector(e):null}function y(e,t){return F?Array.prototype.slice.call((t||F).querySelectorAll(e)):[]}function m(e){if(i.layui&&i.layui.layer){i.layui.layer.msg(e);return}i.alert&&i.alert(e)}function s(e){return Number(e&&(e.status||e.code))===403?"forbidden":"error"}function C(e,t){var a=o("[data-feed-form-status]");if(a){if(!e){a.innerHTML="";return}if(i.ProfileUI&&i.ProfileUI.setApiState){i.ProfileUI.setApiState(a,t||"error",e);return}a.textContent=e}}function g(e,t,a){var n=o(e);if(n){if(i.ProfileUI&&i.ProfileUI.setApiState){i.ProfileUI.setApiState(n,t,a);return}n.innerHTML='
'+l(a)+"
"}}function q(e){var t=o("[data-feed-form]");t&&y("input, textarea, select, button",t).forEach(function(a){a.disabled=!e}),y("[data-feed-editor-action]").forEach(function(a){a.hidden=!e,a.disabled=!e})}function te(e){var t='[data-feed-form] [type="submit"], [type="submit"][form="feed-edit-form"]';y(t).forEach(function(a){a.dataset.defaultLabel||(a.dataset.defaultLabel=a.textContent),a.disabled=!!e,a.textContent=e?"正在保存…":a.dataset.defaultLabel,a.setAttribute("aria-busy",e?"true":"false")})}function v(e,t){var a=o("[data-feed-comment-form-status]");if(a){if(!e){a.innerHTML="";return}if(i.ProfileUI&&i.ProfileUI.setApiState){i.ProfileUI.setApiState(a,t||"error",e);return}a.textContent=e}}function O(e){var t=o("[data-feed-comment-form]");t&&y("input, textarea, button",t).forEach(function(a){a.disabled=!e})}function ae(e){y('[data-feed-comment-form] [type="submit"]').forEach(function(t){t.dataset.defaultLabel||(t.dataset.defaultLabel=t.textContent),t.textContent=e?"正在发布…":t.dataset.defaultLabel,t.setAttribute("aria-busy",e?"true":"false")})}function V(e){var t=o("[data-feed-comment-form]"),a=o("[data-feed-comment-form-target]"),n=e?p(e):"";t&&(o('[name="parentCommentId"]',t)&&(o('[name="parentCommentId"]',t).value=n),a&&(a.textContent=n?"正在回复这条评论":"发表公开评论"))}function ne(e,t){var a=Z(),n,r;if(!(!e||!a)){if(!o("[data-feed-detail-page]")){i.NavigationUtil.open(h("detail",a,e));return}N()===p(e)&&(n=o("[data-feed-comment-form]"),r=n&&o('[type="submit"]',n),!(!n||!r||r.disabled)&&(V(t),v(""),o('[name="commentContent"]',n)&&o('[name="commentContent"]',n).focus&&o('[name="commentContent"]',n).focus()))}}function Q(e,t){var a=new URLSearchParams(String(e||"").replace(/^\?/,""));return a.get(t)||""}function Z(e){var t=o("[data-feed-page], [data-feed-edit-page], [data-feed-detail-page]"),a=e===void 0&&i.location?i.location.search:e,n;return e===void 0&&i.ProfileUI&&i.ProfileUI.getGenealogyId&&(n=i.ProfileUI.getGenealogyId(),n)?n:Q(a,"genealogyId")||t&&t.getAttribute("data-genealogy-id")||""}function N(e){var t=e===void 0&&i.location?i.location.search:e;return Q(t,"feedId")}function P(e){var t=String(e==null?"":e).trim();return t||void 0}function ye(e){var t=P(e),a;if(t)return a=Number(t),Number.isSafeInteger(a)&&a>=0?a:void 0}function p(e){var t;return e==null||e===""?"":(t=String(e),/^\d+$/.test(t)?t:"")}function re(e,t,a){return a.forEach(function(n){t[n]!==void 0&&t[n]!==null&&(e[n]=t[n])}),e}function S(e){var t=Number(e);return(!Number.isSafeInteger(t)||t<1)&&(t=1),{pageNum:t,pageSize:H}}function h(e,t,a){var n=new URLSearchParams,r="profile-feed.html";return n.set("genealogyId",p(t)),(e==="detail"||e==="edit")&&(n.set("feedId",p(a)),r=e==="detail"?"profile-feed-detail.html":"profile-feed-edit.html"),r+"?"+n.toString()}function ie(e,t,a){return String(a||"0")==="1"?h("list",e):h("detail",e,t)}function D(e,t){var a;if(M[e])return M[e];try{a=Promise.resolve(t())}catch(n){a=Promise.reject(n)}return M[e]=a.finally(function(){delete M[e]}),M[e]}function de(e){var t=e||{},a=P(t.mediaOssIds),n=P(t.status),r={feedType:P(t.feedType)||"text",feedContent:String(t.feedContent||"").trim()},d=ye(t.sortOrder);if(n!==void 0&&n!=="0"&&n!=="1")throw new Error("动态状态只能是 0 或 1");if(P(t.sortOrder)!==void 0&&d===void 0)throw new Error("排序值必须是非负整数");return a!==void 0&&(r.mediaOssIds=a),n!==void 0&&(r.status=n),d!==void 0&&(r.sortOrder=d),r}function oe(e){var t=e||{},a={commentContent:String(t.commentContent||"").trim()},n=P(t.parentCommentId);return n!==void 0&&(a.parentCommentId=n),a}function le(e){return p(e&&e.feedId)}function Ce(e){return p(e&&e.commentId)}function x(e){var t=le(e),a=e&&e.feedContent,n;if(!t||a===void 0||a===null)return null;n=re({feedId:t,feedContent:String(a)},e,["genealogyNo","genealogyName","publisherNickName","publisherStatus","feedType","likedByMe","likeCount","commentCount","pinned","pinnedTime","sortOrder","status","remark","createTime","updateTime"]);var r=E?E.normalizeFileList(e&&e.mediaFiles):[];return r.length&&(n.mediaFiles=r),p(e.genealogyId)&&(n.genealogyId=p(e.genealogyId)),p(e.publisherUserId)&&(n.publisherUserId=p(e.publisherUserId)),n}function fe(e){var t=Ce(e),a=e&&e.commentContent,n;if(!t||a===void 0)return null;n=String(e&&e.userDeleted||"")==="1";var r={commentId:t,commentContent:a===null?"该评论已删除":String(a),appUserNickName:P(e&&e.appUserNickName),replyCount:e&&e.replyCount,userDeleted:n||a===null};return re(r,e,["appUserAvatar","parentAppUserNickName","commentLevel","status","createTime"]),["genealogyId","feedId","parentCommentId","appUserId","parentAppUserId"].forEach(function(d){p(e&&e[d])&&(r[d]=p(e[d]))}),r}function _(e){return Array.isArray(e)?e:e&&Array.isArray(e.rows)?e.rows:[]}function l(e){return String(e==null?"":e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function R(e,t){return i.ProfileUI&&i.ProfileUI.renderApiState?i.ProfileUI.renderApiState(e,t):'
'+l(t)+"
"}function B(e,t){var a=o('[data-feed-id="'+e+'"]'),n=a&&a.nextElementSibling;a&&(n&&n.getAttribute("data-feed-comment-list")===e&&n.remove(),a.insertAdjacentHTML("afterend",'
'+t+"
"))}function ue(e,t){var a=o('[data-feed-comment-node="'+e+'"]'),n=a&&a.nextElementSibling;a&&(n&&n.getAttribute("data-feed-reply-list")===e&&n.remove(),a.insertAdjacentHTML("afterend",t))}function z(e,t,a){ue(e,'
'+R(t,a)+"
")}function Me(e,t){return h(t?"edit":"list",e,t)}function he(e,t){var a=c.userId&&c.userId===e.publisherUserId,n=Array.isArray(e.mediaFiles)?e.mediaFiles.length:0,r=e.publisherNickName||e.genealogyName||"家族动态",d=[],f="";return(e.pinned===!0||String(e.pinned)==="1")&&d.push("置顶"),e.createTime&&d.push(e.createTime),n&&d.push("附件 "+n),d.push("点赞 "+Number(e.likeCount||0)),d.push("评论 "+Number(e.commentCount||0)),f+=e.likedByMe?'':'',f+='查看详情',f+='',f+='',c.canEditContent&&(f+='编辑'),a&&(f+=''),'

'+l(r)+"

"+l(e.feedContent)+"

"+(E?E.renderGallery(e.mediaFiles,{label:"动态附件",className:"feed-media-gallery"}):"")+'

'+l(d.join(" · "))+'

'+f+"
"}function Ie(e,t){var a=o("[data-feed-list]"),n=_(e).map(x),r=n.filter(function(f){return!f}).length,d=n.filter(Boolean);if(a){if(r){g("[data-feed-list]","error","动态响应缺少 feedId 或 feedContent,请联系后端补充 DTO。");return}if(!d.length){g("[data-feed-list]","empty","暂无家族动态");return}a.innerHTML=d.map(function(f){return he(f,t)}).join("")}}function $(e){var t=Number(e&&e.total);return Number.isFinite(t)&&t>=0?t:0}function we(e){var t=$(e),a=Math.max(1,Math.ceil(t/H)),n=o("[data-feed-page-prev]"),r=o("[data-feed-page-next]"),d=o("[data-feed-page-label]");n&&(n.disabled=I<=1),r&&(r.disabled=I>=a),d&&(d.textContent="第 "+I+" / "+a+" 页,共 "+t+" 条")}function Ae(e){var t=e&&e.replyCount;return t!=null&&String(t)!==""&&String(t)!=="0"}function se(e,t){var a=t.appUserNickName?""+l(t.appUserNickName)+" ":"",n="",r=c.userId&&c.userId===t.appUserId;return t.userDeleted||(n+='',r&&(n+='')),Ae(t)&&(n+=''),'

'+a+l(t.commentContent)+"

"+(t.createTime?'

'+l(t.createTime)+"

":"")+n+"
"}function J(e){var t=_(e).map(fe);return{invalidCount:t.filter(function(a){return!a}).length,comments:t.filter(Boolean)}}function Fe(e,t){var a=o("[data-feed-detail-comments]"),n=o('[data-feed-id="'+e+'"]'),r=J(t),d=r.comments,f;if(!(!n&&!a)){if(r.invalidCount){f=R("error","评论响应缺少 commentId 或 commentContent,请联系后端补充 DTO。"),a?g("[data-feed-detail-comments]","error","评论响应缺少 commentId 或 commentContent,请联系后端补充 DTO。"):B(e,f);return}if(!d.length){f=R("empty","暂无评论"),a?g("[data-feed-detail-comments]","empty","暂无评论"):B(e,f);return}f='
'+d.map(function(b){return se(e,b)}).join("")+"
"+ce("comments",e,"",U[e]||1,$(t)),a?a.innerHTML=f:B(e,f)}}function Ue(e,t,a){var n=o('[data-feed-comment-node="'+t+'"]'),r=J(a);if(n){if(r.invalidCount){z(t,"error","回复响应缺少 commentId 或 commentContent,请联系后端补充 DTO。");return}if(!r.comments.length){z(t,"empty","暂无直接回复");return}ue(t,'
'+r.comments.map(function(d){return se(e,d)}).join("")+ce("replies",e,t,L[t]||1,$(a))+"
")}}function ce(e,t,a,n,r){var d=Math.max(1,Math.ceil(r/H)),f=e==="comments"?"data-feed-comments-":"data-feed-replies-",b=' data-feed-id="'+l(t)+'"'+(a?' data-comment-id="'+l(a)+'"':"");return'
第 "+n+" / "+d+' 页
"}function me(e){var t={};return y("[name]",e).forEach(function(a){a.disabled||(t[a.name]=a.value)}),t}function Pe(e){var t=x(e);if(!t)throw new Error("动态响应缺少 feedId 或 feedContent,请联系后端补充 DTO。");y("[data-feed-form] [name]").forEach(function(a){t[a.name]!==void 0&&t[a.name]!==null&&(a.value=t[a.name])})}function pe(e){return!!(e&&(e.canEditContent===!0||e.canManage===!0))}function Se(e){y("[data-feed-create-link]").forEach(function(t){t.hidden=!e})}function ge(e,t){return{userId:p(t&&t.userId),canEditContent:pe(e),canManage:!!(e&&e.canManage===!0)}}async function K(e,t){var a,n;try{a=await e.genealogyDetail(t)}catch(r){a=null}try{n=await e.currentProfile()}catch(r){n=null}return c=ge(a,n),Se(c.canEditContent),c}function W(e,t){var a=o("[data-feed-detail]"),n=c.userId&&c.userId===e.publisherUserId,r="";a&&(r+=e.likedByMe?'':'',r+='',r+='',c.canEditContent&&(r+='编辑'),n&&(r+=''),a.setAttribute("data-feed-id",e.feedId),a.innerHTML="

"+l(e.publisherNickName||e.genealogyName||"家族动态")+"

"+l(e.feedContent)+"

"+(E?E.renderGallery(e.mediaFiles,{label:"动态附件",className:"feed-media-gallery"}):"")+'

'+l([e.createTime||"","点赞 "+Number(e.likeCount||0),"评论 "+Number(e.commentCount||0),String(e.status)==="1"?"已停用":"正常"].filter(Boolean).join(" · "))+'

'+r+"
")}function X(e){i.ProfileUI&&i.ProfileUI.syncGenealogyContextLinks&&i.ProfileUI.syncGenealogyContextLinks(),y("[data-feed-create-link], [data-feed-list-link]").forEach(function(t){t.href=t.hasAttribute("data-feed-create-link")?h("edit",e):h("list",e)})}function A(){var e=Z(),t;return e||(t=o("[data-feed-list]"),t&&g("[data-feed-list]","forbidden","请从具体家谱进入家族圈动态。"),q(!1),C("请从具体家谱进入动态发布。","forbidden"),O(!1),v("请从具体家谱进入动态详情后发表评论。","forbidden"),m("请从具体家谱进入家族圈动态")),e}async function k(e){var t=w(),a,n;if(!u(t)&&(a=A(),!!a)){X(a),I=S(e||Q(i.location&&i.location.search,"pageNum")).pageNum,g("[data-feed-list]","loading","正在加载家族动态…");try{await K(t,a),n=await t.feedsPage(a,S(I)),Ie(n,a),we(n)}catch(r){if(u(t,r))return;g("[data-feed-list]",s(r),s(r)==="forbidden"?"当前账号无权查看该家谱的动态。":"家族动态加载失败,请稍后重试。"),m(r.message||"家族动态加载失败")}}}async function Ee(){var e=w(),t,a=N(),n=!!a,r=n?"编辑动态":"发布动态";if(i.document&&(i.document.title=r+" - 个人中心 - 代代相传"),o("[data-feed-editor-kicker]")&&(o("[data-feed-editor-kicker]").textContent=r),o("[data-feed-editor-title]")&&(o("[data-feed-editor-title]").textContent=r),y("[data-feed-editor-action]").forEach(function(d){d.textContent=n?"保存修改":"发布动态"}),!u(e)&&(t=A(),!!t)){X(t),q(!1),C("正在读取家谱权限…","loading");try{if(await K(e,t),!c.canEditContent){C("当前账号无权发布或编辑该家谱的动态。","forbidden");return}if(q(!0),o("[data-feed-advanced]")&&(o("[data-feed-advanced]").hidden=!c.canManage,y("[name]",o("[data-feed-advanced]")).forEach(function(d){d.disabled=!c.canManage})),!a){C("");return}Pe(await e.feedDetail(t,a)),C("")}catch(d){if(u(e,d))return;C(s(d)==="forbidden"?"当前账号无权维护该家谱的动态。":d.message||"动态详情加载失败",s(d))}}}async function ve(){var e=w(),t,a=N(),n;if(!u(e)){if(O(!1),v("正在读取动态评论权限…","loading"),t=A(),!t||!a){g("[data-feed-detail]","error","动态链接缺少有效编号。"),v("动态链接缺少有效编号。","error");return}X(t),g("[data-feed-detail]","loading","正在加载动态详情…");try{if(await K(e,t),n=x(await e.feedDetail(t,a)),!n)throw new Error("动态响应缺少 feedId 或 feedContent,请联系后端补充 DTO。");W(n,t),O(!0),v(""),await G(a,U[a]||1)}catch(r){if(u(e,r))return;g("[data-feed-detail]",s(r),s(r)==="forbidden"?"当前账号无权查看该动态。":"动态详情加载失败,请返回列表重试。"),v(s(r)==="forbidden"?"当前账号无权评论该动态。":"动态详情加载失败,暂不能发表评论。",s(r)),m(r.message||"动态详情加载失败")}}}async function Ne(e){var t=w(),a,n=N(),r;if(!u(t)&&(a=A(),!!a)){if(!c.canEditContent){C("当前账号无权发布或编辑该家谱的动态。","forbidden");return}i.AppRichEditor&&i.AppRichEditor.syncAll&&i.AppRichEditor.syncAll();try{r=de(me(e))}catch(d){C(d.message||"动态表单校验失败","error");return}if(!r.feedContent){C("请填写动态内容","error");return}return D("save:"+(n||"new"),async function(){var d,f;te(!0),C("正在保存动态…","loading");try{if(n?d=await t.updateFeed(a,n,r):d=await t.createFeed(a,r),f=le(d)||n,!f)throw new Error("动态保存响应缺少 feedId");String(r.status||"0")==="0"&&await t.feedDetail(a,f),m("动态已保存"),i.NavigationUtil.open(ie(a,f,r.status))}catch(b){if(u(t,b))return;C(s(b)==="forbidden"?"当前账号无权保存该家谱的动态。":b.message||"动态保存失败",s(b))}finally{te(!1)}})}}async function be(e,t){var a=w(),n;if(!u(a)&&(n=A(),!(!n||!e)))return D((t?"like:":"unlike:")+e,async function(){try{t?await a.likeFeed(n,e):await a.unlikeFeed(n,e),o("[data-feed-detail-page]")?await ve():await k(I)}catch(r){if(u(a,r))return;m(r.message||(t?"点赞失败":"取消点赞失败"))}})}async function De(e){var t=w(),a;if(!u(t)&&(a=A(),!(!a||!e)&&await T("确认删除这条动态吗?")))return D("delete:"+e,async function(){try{await t.deleteFeed(a,e),o("[data-feed-detail-page]")?i.NavigationUtil.open(h("list",a)):await k(I)}catch(n){if(u(t,n))return;m(n.message||"删除动态失败")}})}async function G(e,t){var a=w(),n;if(!u(a)&&(n=A(),!(!n||!e))){U[e]=S(t).pageNum,o("[data-feed-detail-comments]")?g("[data-feed-detail-comments]","loading","正在加载评论…"):B(e,R("loading","正在加载评论…"));try{Fe(e,await a.feedCommentsPage(n,e,S(U[e])))}catch(r){if(u(a,r))return;o("[data-feed-detail-comments]")?g("[data-feed-detail-comments]",s(r),s(r)==="forbidden"?"当前账号无权查看评论。":"评论加载失败,请稍后重试。"):B(e,R(s(r),s(r)==="forbidden"?"当前账号无权查看评论。":"评论加载失败,请稍后重试。")),m(r.message||"评论加载失败")}}}async function Y(e,t,a){var n=w(),r;if(!u(n)&&(r=A(),!(!r||!e||!t))){L[t]=S(a).pageNum,z(t,"loading","正在加载回复…");try{Ue(e,t,await n.feedCommentRepliesPage(r,e,t,S(L[t])))}catch(d){if(u(n,d))return;z(t,s(d),s(d)==="forbidden"?"当前账号无权查看回复。":"回复加载失败,请稍后重试。"),m(d.message||"回复加载失败")}}}async function xe(e){var t=w(),a,n=N(),r,d,f=!1;if(!(u(t)||!e)&&(a=A(),!(!a||!n))){if(d=me(e),r=oe(d),!r.commentContent){v("请填写评论内容。","error");return}if(r.commentContent.length>1e3){v("评论不能超过 1000 字。","error");return}return D("comment:"+n+":"+(r.parentCommentId||"root"),async function(){O(!1),ae(!0),v("正在发布评论…","loading");try{await t.createFeedComment(a,n,r),await G(n,U[n]||1),r.parentCommentId&&await Y(n,r.parentCommentId,L[r.parentCommentId]||1),e.reset(),V(""),v("");var b=x(await t.feedDetail(a,n));b&&W(b,a),m("评论已发布")}catch(j){if(u(t,j))return;f=s(j)==="forbidden",v(f?"当前账号无权评论该动态。":j.message||"评论发布失败,请稍后重试。",s(j))}finally{ae(!1),f||O(!0)}})}}async function ke(e,t){var a=w(),n;if(!u(a)&&(n=A(),!(!n||!e||!t)&&await T("确认删除这条评论吗?")))return D("delete-comment:"+t,async function(){try{if(await a.deleteFeedComment(n,e,t),await G(e,U[e]||1),o("[data-feed-detail-page]")){var r=x(await a.feedDetail(n,e));r&&W(r,n)}else await k(I)}catch(d){if(u(a,d))return;m(d.message||"删除评论失败")}})}function Te(){F&&(F.addEventListener("submit",function(e){var t=e.target.closest("[data-feed-form]");if(t){e.preventDefault(),Ne(t);return}t=e.target.closest("[data-feed-comment-form]"),t&&(e.preventDefault(),xe(t))}),F.addEventListener("click",function(e){var t=e.target,a,n,r;t.closest("[data-feed-like]")&&(e.preventDefault(),be(t.closest("[data-feed-like]").getAttribute("data-feed-like"),!0)),t.closest("[data-feed-unlike]")&&(e.preventDefault(),be(t.closest("[data-feed-unlike]").getAttribute("data-feed-unlike"),!1)),t.closest("[data-feed-comments]")&&(e.preventDefault(),a=t.closest("[data-feed-comments]").getAttribute("data-feed-comments"),G(a,1)),t.closest("[data-feed-comment]")&&(e.preventDefault(),a=t.closest("[data-feed-comment]").getAttribute("data-feed-comment"),ne(a)),t.closest("[data-feed-comment-reply]")&&(e.preventDefault(),n=t.closest("[data-feed-comment-reply]").getAttribute("data-feed-comment-reply"),a=t.closest("[data-feed-comment-reply]").getAttribute("data-feed-id"),ne(a,n)),t.closest("[data-feed-comment-cancel]")&&(e.preventDefault(),V(""),v("")),t.closest("[data-feed-comment-replies]")&&(e.preventDefault(),n=t.closest("[data-feed-comment-replies]").getAttribute("data-feed-comment-replies"),a=t.closest("[data-feed-comment-replies]").getAttribute("data-feed-id"),Y(a,n,1)),t.closest("[data-feed-delete]")&&(e.preventDefault(),De(t.closest("[data-feed-delete]").getAttribute("data-feed-delete"))),t.closest("[data-feed-comment-delete]")&&(e.preventDefault(),n=t.closest("[data-feed-comment-delete]").getAttribute("data-feed-comment-delete"),a=t.closest("[data-feed-comment-delete]").getAttribute("data-feed-id"),ke(a,n)),t.closest("[data-feed-page-prev]")&&(e.preventDefault(),k(Math.max(1,I-1))),t.closest("[data-feed-page-next]")&&(e.preventDefault(),k(I+1)),t.closest("[data-feed-comments-prev], [data-feed-comments-next]")&&(e.preventDefault(),a=t.closest("[data-feed-id]").getAttribute("data-feed-id"),r=U[a]||1,G(a,t.closest("[data-feed-comments-prev]")?Math.max(1,r-1):r+1)),t.closest("[data-feed-replies-prev], [data-feed-replies-next]")&&(e.preventDefault(),a=t.closest("[data-feed-id]").getAttribute("data-feed-id"),n=t.closest("[data-comment-id]").getAttribute("data-comment-id"),r=L[n]||1,Y(a,n,t.closest("[data-feed-replies-prev]")?Math.max(1,r-1):r+1)),t.closest("[data-feed-share]")&&(e.preventDefault(),i.navigator&&i.navigator.clipboard&&i.location?i.navigator.clipboard.writeText(i.location.href).then(function(){m("分享链接已复制")}).catch(function(){m("复制失败,请从浏览器地址栏复制")}):m("请从浏览器地址栏复制分享链接"))}))}function Le(){F&&(Te(),o("[data-feed-page]")&&k(),o("[data-feed-edit-page]")&&Ee(),o("[data-feed-detail-page]")&&ve())}return{getCurrentGenealogyId:Z,getCurrentFeedId:N,buildFeedBody:de,buildCommentBody:oe,buildPageQuery:S,buildFeedUrl:h,buildPostSaveUrl:ie,withActionLock:D,normalizeFeed:x,normalizeComment:fe,canEditFeeds:pe,normalizeViewerContext:ge,normalizeComments:J,normalizeList:_,shouldRedirectToLogin:ee,init:Le}});