1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Cj_n1tWh.js","./Cqga2mdz.js","./CZw8qzHT.js","./CAFIxbXv.js","./Bh4YzkF1.js","./entry.BxPskZXL.css","./DIpSCz-v.js","./DJwvPUyS.js","./DwH2E4Yy.js","./CdasQrlT.js","./NBAthv48.js","./35TM4mrt.js","./SayMessage._CuDTw3H.css"])))=>i.map(i=>d[i]); 2import{e as B,b as g,g as H}from"#entry";import{A as j,r as c,c as q,w as J,o as W,aa as C,ab as v,aj as h,a9 as Z,ah as K,ai as i,u as e,ag as Q,as as X,am as aa,aw as ea,G as ta}from"./Cqga2mdz.js";import{u as oa,t as ra}from"./Cq7OX2to.js";import{M as u}from"./CZw8qzHT.js";import{u as sa,B as la,C as ia,D as na,O as da,R as ma,M as ca,J as ua,a as ha}from"./BdVtMBx9.js";import{A as pa}from"./D-WKdy0Y.js";import{u as fa}from"./DuiFmdnP.js";import"./Bh4YzkF1.js";import"./ByjTMUYX.js";import"./DJwvPUyS.js";import"./DwH2E4Yy.js";import"./B7m_592B.js";import"./DIpSCz-v.js";import"./CdasQrlT.js";import"./D_yAoySS.js";import"./LpSErJP7.js";import"./35TM4mrt.js";import"./BI8w7J0G.js";import"./-COHRjvS.js";const ga={class:"py-8"},va={class:"container mx-auto max-w-4xl px-4"},ya={class:"flex justify-end gap-4"},_a=["disabled"],Sa={key:0},ba={key:1},Ya=j({__name:"create-village",setup(Ca){const T=ta(()=>H(()=>import("./Cj_n1tWh.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));fa({title:"æä½æ"});const N=B(),y=c(!1),l=c(null),_=c(!1),p=c(!1),w=c(""),f=c(null),{validationSchema:k,loadSkills:I}=sa(),L=c(new Set),A=c(!1),{values:a,errors:U,meta:E,handleSubmit:O,setFieldValue:s,setFieldTouched:M}=oa({validationSchema:ra(k),initialValues:{villageName:"",startDatetime:(()=>{const t=new Date(Date.now()+6048e5);return t.setHours(0,0,0,0),t})(),silentHoursDay1:0,silentHoursDay2:0,charachipIds:[1],dummyCharaId:0,dummyCharaName:"",dummyCharaShortName:"",day0Message:"",day1Message:"",capacityMin:10,capacityMax:16,organization:"",availableDummySkill:!1,openVote:!1,availableSkillRequest:!0,availableSpectate:!1,openSkillInGrave:!1,visibleGraveMessage:!1,availableSuddenlyDeath:!0,availableCommit:!1,availableAction:!1,availableSecretSay:!1,availableGuardSameTarget:!0,normalCount:20,normalLength:200,whisperCount:40,whisperLength:200,sympathizeCount:40,sympathizeLength:200,loversCount:40,loversLength:200,graveCount:40,graveLength:200,monologueCount:100,monologueLength:200,spectateCount:40,spectateLength:200,actionCount:40,actionLength:200,joinPassword:"",ageLimit:"ALL"}}),F=t=>{const o=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0"),m=String(t.getDate()).padStart(2,"0"),b=String(t.getHours()).padStart(2,"0"),Y=String(t.getMinutes()).padStart(2,"0"),$=String(t.getSeconds()).padStart(2,"0");return`${o}-${r}-${m}T${b}:${Y}:${$}`},V=()=>{const t=F(a.startDatetime),o=[{type:u.NORMAL_SAY,count:a.normalCount,length:a.normalLength},{type:u.WEREWOLF_SAY,count:a.whisperCount,length:a.whisperLength},{type:u.SYMPATHIZE_SAY,count:a.sympathizeCount,length:a.sympathizeLength},{type:u.LOVERS_SAY,count:a.loversCount,length:a.loversLength},{type:u.GRAVE_SAY,count:a.graveCount,length:a.graveLength},{type:u.MONOLOGUE_SAY,count:a.monologueCount,length:a.monologueLength},{type:u.SPECTATE_SAY,count:a.spectateCount,length:a.spectateLength},{type:u.ACTION,count:a.actionCount,length:a.actionLength}],r=m=>m.split(` 3`).map(b=>b.replace(/^\d+人[ï¼:]\s*/,"")).join(` 4`);return{village_name:a.villageName,setting:{time:{start_datetime:t,silent_hours_day1:a.silentHoursDay1,silent_hours_day2:a.silentHoursDay2},organization:{organization:r(a.organization)},charachip:{charachip_ids:a.charachipIds,dummy_chara_id:a.dummyCharaId,dummy_chara_name:a.dummyCharaName,dummy_chara_short_name:a.dummyCharaShortName,dummy_chara_day0_message:a.day0Message,dummy_chara_day1_message:a.day1Message.length>0?a.day1Message:void 0},rule:{open_vote:a.openVote,available_skill_request:a.availableSkillRequest,available_spectate:a.availableSpectate,open_skill_in_grave:a.openSkillInGrave,visible_grave_message:a.visibleGraveMessage,available_suddenly_death:a.availableSuddenlyDeath,available_commit:a.availableCommit,available_dummy_skill:a.availableDummySkill,available_action:a.availableAction,available_secret_say:a.availableSecretSay,available_guard_same_target:a.availableGuardSameTarget,restrict_list:o,join_password:a.joinPassword||void 0},tags:{list:a.ageLimit!=="ALL"?[a.ageLimit]:[]}}}},S=O(async t=>{y.value=!0,l.value=null;try{const o=V(),{apiCall:r}=g(),m=await r("/village",{method:"POST",body:o});await N.push(`/village?id=${m?.village_id}`)}catch(o){console.error("Failed to create village:",o),l.value=o instanceof Error?o.message:"æã®ä½æã«å¤±æãã¾ãã"}finally{y.value=!1}}),n=t=>{L.value.add(t),M(t,!0)},x=()=>
4{Object.keys(a).forEach(o=>{M(o,!0)}),A.value=!0},P=t=>A.value||L.value.has(t),d=q(()=>{const t={};return Object.entries(U.value).forEach(([r,m])=>{P(r)&&m&&(t[r]=m)}),t}),R=async()=>{p.value=!0,l.value=null,x();try{if(!await E.value.valid){l.value="å
¥åå
容ã«èª¤ããããã¾ããåé
ç®ã確èªãã¦ãã ããã",window.scrollTo({top:0,behavior:"smooth"});return}const o=V(),{apiCall:r}=g();await r("/village/confirm",{method:"POST",body:o}),await G(),await D(),_.value=!0}catch(t){console.error("Failed to confirm village settings:",t);const o=t;o.data?.status===499&&o.data?.message?l.value=o.data.message:l.value=t instanceof Error?t.message:"å
¥åå
容ã®ç¢ºèªã«å¤±æãã¾ãããå
¥åå
容ã確èªãã¦ãã ããã",window.scrollTo({top:0,behavior:"smooth"})}finally{p.value=!1}},G=async()=>{try{const{apiCall:t}=g();if(a.charachipIds&&a.charachipIds.length>0){const o=a.charachipIds[0],r=await t(`/charachips/${o}`,{method:"GET"});w.value=r?.name||""}}catch(t){console.error("Failed to load charachip name:",t)}},D=async()=>{try{const{apiCall:t}=g();if(a.dummyCharaId){const o=await t(`/chara/${a.dummyCharaId}`,{method:"GET"});o&&(f.value=o,a.dummyCharaName||s("dummyCharaName",o.chara_name.name),a.dummyCharaShortName||s("dummyCharaShortName",o.chara_name.short_name))}}catch(t){console.error("Failed to load dummy chara info:",t)}},z=()=>{_.value=!1};return J(()=>a.dummyCharaId,async t=>{t?await D():f.value=null}),W(()=>{I()}),(t,o)=>(v(),C("section",ga,[h("div",va,[o[2]||(o[2]=h("h1",{class:"mb-8 text-2xl font-bold"},"æã使",-1)),e(l)?(v(),Z(pa,{key:0,type:"error",class:"mb-6",onClose:o[0]||(o[0]=r=>l.value=null)},{default:Q(()=>[X(aa(e(l)),1)]),_:1})):K("",!0),h("form",{class:"space-y-8",onSubmit:o[1]||(o[1]=ea((...r)=>e(S)&&e(S)(...r),["prevent"]))},[i(la,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),i(ia,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),i(na,{"form-data":e(a),"selected-chara":e(f),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","selected-chara","errors","onUpdate:field"]),i(da,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),i(ma,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),i(ca,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),i(ua,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),i(ha,{"form-data":e(a),errors:e(d),"onUpdate:field":e(s),"onValidate:field":n},null,8,["form-data","errors","onUpdate:field"]),h("div",ya,[h("button",{type:"button",disabled:e(p)||!e(E).valid,class:"rounded-md bg-blue-600 px-6 py-2 text-white hover:bg-blue-700 focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:bg-gray-400",onClick:R},[e(p)?(v(),C("span",Sa,"確èªä¸...")):(v(),C("span",ba,"確èªç»é¢ã¸"))],8,_a)])],32),i(e(T),{"is-open":e(_),"form-data":e(a),"charachip-name":e(w),"dummy-ch
4ara":e(f),"is-submitting":e(y),onClose:z,onCreate:e(S)},null,8,["is-open","form-data","charachip-name","dummy-chara","is-submitting","onCreate"])])]))}});export{Ya as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.