(function(a,m){if(typeof module=="object"&&module.exports){module.exports=m(a);return}a.FamilyHomePages=m(a),a.document&&a.document.addEventListener("DOMContentLoaded",function(){a.FamilyHomePages.init()})})(typeof globalThis!="undefined"?globalThis:window,function(a){"use strict";var m=a.MediaDisplay||(typeof require=="function"?require("./media-display.js"):null);function c(e){return String(e==null?"":e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function v(e){var n;return typeof e=="number"&&!Number.isSafeInteger(e)||e==null?"":(n=String(e).trim(),/^[1-9][0-9]*$/.test(n)?n:"")}function g(e){return e==null?"":String(e).trim()}function P(e){var n=Number(e);return Number.isSafeInteger(n)&&n>=0?n:null}function h(e,n){var r=e||{},i=v(r.genealogyId),o=v(n),t=P(r.memberCount),b=P(r.personCount),w=m&&m.normalizeFileAccess(r.coverFile),I;return!i||i!==o||!g(r.genealogyName)||String(r.status)!=="0"||t===null||b===null||(I={genealogyId:i,genealogyNo:g(r.genealogyNo),genealogyName:g(r.genealogyName),surname:g(r.surname),ancestralHall:g(r.ancestralHall),originPlace:g(r.originPlace),regionFullName:g(r.regionFullName),memberCount:t,personCount:b,canManage:r.canManage===!0,canEditContent:r.canEditContent===!0},r.coverFile!==void 0&&r.coverFile!==null&&!w)?null:(w&&(I.coverFile=w),I)}function F(e){var n=e||{},r=[n.genealogyNo?"家谱编号 "+n.genealogyNo:"",n.surname?"姓氏 "+n.surname:"",n.ancestralHall?"堂号 "+n.ancestralHall:"",n.originPlace?"祖籍 "+n.originPlace:"",n.regionFullName?"地区 "+n.regionFullName:""].filter(Boolean).join(" · ");return(m?m.renderImage(n.coverFile,{alt:n.genealogyName+"封面",className:"family-cover-media"}):"")+"

"+c(n.genealogyName)+"

"+c(r)+"

成员 "+c(n.memberCount)+" 人 · 世系人物 "+c(n.personCount)+" 人

"}function C(e){return!!e&&e.canManage===!0}function s(e,n){var r=n&&(n.status||n.code);return!e||!e.getToken||!e.getToken()||Number(r)===401}function l(e){return Number(e&&(e.status||e.code))===403}async function H(e,n){var r=v(n),i,o;if(!r||!e||!e.genealogyOverview||!e.lineageTree)throw new Error("家谱主页接口初始化失败");if(i=await Promise.all([e.genealogyOverview(r),e.lineageTree(r)]),o=h(i[0],r),!o)throw new Error("家谱概览响应无效");return{overview:o,tree:i[1]}}function p(e){e&&e.clearToken&&e.clearToken(),a.NavigationUtil.open("login.html")}function d(e){return a.document&&a.document.querySelector(e)}function S(e){return a.document?Array.prototype.slice.call(a.document.querySelectorAll(e)):[]}function y(e,n){var r=d(e);r&&(r.textContent=n)}function u(e,n,r){var i=d(e);if(i){if(a.ProfileUI&&a.ProfileUI.setApiState){a.ProfileUI.setApiState(i,n,r);return}i.textContent=r}}function f(e,n){var r=d("[data-family-home-status]");if(r){if(r.hidden=!e,!e){r.innerHTML="";return}if(n&&a.ProfileUI&&a.ProfileUI.setApiState){a.ProfileUI.setApiState(r,n,e);return}r.textContent=e}}async function N(){var e=d("[data-family-home-page]"),n=a.GenealogyApi&&a.GenealogyApi.defaultClient,r,i,o;if(e){if(s(n)){p(n);return}if(r=a.ProfileUI&&a.ProfileUI.getGenealogyId(),!r){a.NavigationUtil.open("profile-families.html?next=profile-family-home.html");return}if(a.ProfileUI&&a.ProfileUI.syncGenealogyContextLinks&&a.ProfileUI.syncGenealogyContextLinks(),!a.LineagePages||!a.LineagePages.renderLineageTreeHtml){u("[data-family-home-overview]","error","家谱主页初始化失败,请刷新后重试。"),u("[data-lineage-home-tree]","error","世系预览初始化失败,请刷新后重试。"),f("世系预览初始化失败,请刷新后重试。","error");return}u("[data-family-home-overview]","loading","正在加载家谱概览…"),u("[data-lineage-home-tree]","loading","正在加载世系树…"),f("正在读取家谱概览…","loading");try{if(i=h(await n.genealogyOverview(r),r),!i)throw new Error("家谱概览响应无效");a.ProfileUI&&a.ProfileUI.setCurrentGenealogyContext&&a.ProfileUI.setCurrentGenealogyContext(i.genealogyId,i.genealogyName),y("[data-family-home-title]",i.genealogyName),y("[data-family-home-context]",i.genealogyName),d("[data-family-home-overview]").innerHTML=F(i),y("[data-family-home-member-count]",String(i.memberCount)),y("[data-family-home-person-count]",String(i.personCount)),S("[data-family-home-management]").forEach(function(t){t.hidden=!C(i)})}catch(t){if(s(n,t)){p(n);return}u("[data-family-home-overview]",l(t)?"forbidden":"error",l(t)?"当前账号无权查看该家谱。":"家谱概览读取失败,请稍后重试。"),u("[data-lineage-home-tree]",l(t)?"forbidden":"error",l(t)?"当前账号无权查看该家谱。":"世系树读取失败,请稍后重试。"),f(l(t)?"当前账号无权查看该家谱。":t.message||"家谱主页读取失败,请稍后重试。",l(t)?"forbidden":"error");return}try{i=await n.lineageTree(r),o=Array.isArray(i)?a.LineagePages.renderLineageTreeHtml(i):"",o?d("[data-lineage-home-tree]").innerHTML=o:u("[data-lineage-home-tree]","empty","暂无世系树"),f("")}catch(t){if(s(n,t)){p(n);return}u("[data-lineage-home-tree]",l(t)?"forbidden":"error",l(t)?"当前账号无权查看该家谱世系树。":"世系树读取失败,请稍后重试。"),f(l(t)?"当前账号无权查看该家谱世系树。":t.message||"世系树读取失败,请稍后重试。",l(t)?"forbidden":"error")}}}function T(){return N()}return{normalizeFamilyOverview:h,renderFamilyOverview:F,shouldShowFamilyManagement:C,shouldRedirectToLogin:s,isForbidden:l,loadFamilyHome:H,initFamilyHomePage:N,init:T}});