PageSourceSearch

https://myfans.jp/_next/static/chunks/pages/messages/bulk_message_sales-026ea5602b076c71.js

js myfans.jp collected 2026-09-26 00:04:13 UTC 9,310 bytes, 1 lines download raw bytes

1!function(){try{var e="u">typeof window?window:"u">typeof global?global:"u">typeof globalThis?globalThis:"u">typeof self?self:{};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[(new e.Error).stack]=function(e){for(var s=1;s<arguments.length;s++){var a=arguments[s];if(null!=a)for(var l in a)a.hasOwnProperty(l)&&(e[l]=a[l])}return e}({},e._sentryModuleMetadata[(new e.Error).stack],{"_sentryBundlerPluginAppKey:myfans-web":!0});var s=(new e.Error).stack;s&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[s]="067db775-6366-40e6-a06e-5a79e2f27159",e._sentryDebugIdIdentifier="sentry-dbid-067db775-6366-40e6-a06e-5a79e2f27159")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[810],{20422:(e,s,a)=>{"use strict";a.d(s,{J:()=>l});let l=e=>e?"plan_subscribers":void 0},82502:(e,s,a)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/messages/bulk_message_sales",function(){return a(84083)}])},84083:(e,s,a)=>{"use strict";a.r(s),a.d(s,{__N_SSG:()=>E,default:()=>A});var l=a(15383),r=a(51689),t=a(68862),n=a(31046),i=a(98462),d=a(77426),c=a(90540),o=a(99689),u=a.n(o),p=a(23245),h=a(71042),x=a(14343),m=a(72705),_=a(84611),g=a(23244),b=a(72009),f=a(84948),v=a(45111),j=a(17506),N=a(38327),y=a(33973),S=a(20422),w=a(34251),M=a(35528),E=!0;let A=(0,b.rN)(()=>{let{t:e}=(0,M.Bd)(),{enqueueSnackbar:s}=(0,p.dh)(),{user:a,isActiveCreator:o}=(0,b.As)(),E=(0,h.sf)(),{valueAsStr:A}=(0,v.A)("plan_id"),[I,k]=(0,x.useState)(),[C,P]=(0,x.useState)(),[$,D]=(0,x.useState)(),[L,R]=(0,x.useState)(null),[T,B]=(0,x.useState)(!1),[O,U]=(0,x.useState)(!1),[q,K]=(0,x.useState)(!0),{loading:W,requestBackgroundTask:z}=(0,f.n)();(0,x.useEffect)(()=>{a&&(o&&a.can_use_message_sale||u().replace(N.y.messages.$url()))},[a,o]);let{control:G,formState:{isValid:H},handleSubmit:V,setValue:J}=(0,m.mN)({mode:"onChange",defaultValues:{selectedRecipients:j.R11,minSubscribedMonths:"",price:void 0,purchasableUntil:void 0,salesLimit:void 0,body:""}}),X=(0,m.FH)({control:G,name:"selectedRecipients"}).plans.length>0;(0,x.useEffect)(()=>{A&&J("selectedRecipients",{...j.R11,plans:[A]},{shouldValidate:!0})},[A,J]),(0,x.useEffect)(()=>{o&&a?.can_use_message_sale&&(async()=>{let[e,a,l]=await Promise.all([_.z4j(),_.Nl0("gacha_complete"),_.Nl0("gacha_purchase")]);e.error?s((0,y.u1)(e.error),{variant:"error"}):k(e.data),a.error?s((0,y.u1)(a.error),{variant:"error"}):P(a.data),l.error?s((0,y.u1)(l.error),{variant:"error"}):D(l.data),K(!1)})()},[a,o,s]);let Z=async l=>{if(!L)return;let{plans:r,cancellation_requested:t,gacha_complete:n,gacha_purchase:i}=l.selectedRecipients,d=n.length>0?n:i.length>0?i:void 0,c=(0,j.xyY)(l.selectedRecipients),o=l.body.trim(),p=!!A&&r.includes(A),{error:h}=await _.Pwv({post_id:L.postId,message_sale_price:Number(l.price),sales_limit:l.salesLimit?Number(l.salesLimit):void 0,body:o,kinds:c,plan_target_plan_ids:r.length>0?r:void 0,cancellation_requested_target_plan_ids:t.length>0?t:void 0,target_plan_min_subscribed_months:r.length>0&&""!==l.minSubscribedMonths?l.minSubscribedMonths:void 0,target_gacha_ids:d,exclude_purchased_users:a?.can_exclude_purchased_message_sale_users?T:void 0,include_already_sent_users:O,entry_point:(0,S.J)(p),purchasable_until:l.purchasableUntil?.toISOString()});h?s((0,y.u1)(h),{variant:"error"}):(E?.capture(w.i.BULK_MESSAGE_SALE_SEND,{entry_point:p?"plan_subscribers":"messages_top"}),s(e("送信を開始しました。"),{variant:"success"}),u().replace(N.y.messages.$url()))},F=H&&null!==L;return(0,l.jsx)(g.Ay,{headerTitle:e("DM限定販売一斉送信"),loading:q,children:(0,l.jsxs)("div",{className:"flex flex-col gap-6 px-4 py-6",children:[(0,l.jsxs)("div",{className:"text-[10px]/4",children:[(0,l.jsx)("p",{className:"text-[12px]/4 font-semibold",children:`${e("DM限定販売の効果的な活用方法")}📝`}),(0,l.jsx)("br",{}),(0,l.jsx)("p",{className:"font-semibold",children:`${e("送信先の選び方")}・・・`}),(0,l.jsx)("p",{className:"font-light",children:`・${e("プラン加入済ユーザーやガチャコンプリートユーザーなど、関係性のあるユーザーに対して送ると効果的!")}`}),(0,l.jsx)("br",{}),(0,l.jsx)("p",{className:"font-semibold",children:`${e("購入につながるポイントは")}・・・`}),(0,l.jsx)("p",{className:"font-light",children:`・${e("限定販売を受け取ったユーザーが特別感や限定感を感じられると購入率アップ!")}`}),(0,l.jsx)("p",{className:"font-light",children:`・${e("なぜ送信先のユーザーに限å
1®šè²©å£²ã‚’送ったのか、作品の魅力などを伝えるようにしましょう。")}`})]}),(0,l.jsxs)("fieldset",{className:"min-w-0 rounded-lg border-[0.5px] border-black/20 px-3 pb-4 pt-4",children:[(0,l.jsx)("legend",{className:"px-1 text-xs text-desc",children:e("送信先")}),(0,l.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,l.jsx)(m.xI,{name:"selectedRecipients",control:G,rules:{validate:s=>(0,j.DHA)(s)?(0,j.$em)(s)?e("ガチャのコンプリートユーザーと購入ユーザーは同時に選択できません"):(0,j.ZOr)(s)?e("売上上位100名は1種類のみ選択できます"):!(0,j.n9q)(s)||e("売上上位100名は他の送信先と同時に選択できません"):e("送信先を選択してください")},render:({field:e,fieldState:{error:s}})=>(0,l.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,l.jsx)(j.NdZ,{value:e.value,onChange:s=>{e.onChange(s),0===s.plans.length&&J("minSubscribedMonths","")},plans:I,gachaCompletes:C,gachaPurchases:$,showTopBuyers:a?.can_use_message_sale_top_buyer_segments,error:!!s}),s&&(0,l.jsx)(n.A,{error:!0,children:s.message})]})}),(0,l.jsx)(m.xI,{name:"minSubscribedMonths",control:G,render:({field:e})=>(0,l.jsx)(j.aer,{value:e.value,onChange:e.onChange,disabled:!X})}),(0,l.jsxs)("label",{className:"flex cursor-pointer items-center gap-1 px-2",children:[(0,l.jsx)(i.A,{checked:O,onChange:(e,s)=>U(s),sx:{padding:0}}),(0,l.jsx)("span",{className:"text-sm",children:e("既送信者を含む")})]}),a?.can_exclude_purchased_message_sale_users&&(0,l.jsxs)("label",{className:"flex cursor-pointer items-center gap-1 px-2",children:[(0,l.jsx)(i.A,{checked:T,onChange:(e,s)=>B(s),sx:{padding:0}}),(0,l.jsx)("span",{className:"text-sm",children:e("販売作品を購入済のユーザを送信対象から除外する")})]})]})]}),(0,l.jsx)(m.xI,{name:"price",control:G,rules:{required:e("価格を入力してください。"),min:{value:100,message:e("100円以上で入力してください。")},max:{value:2e4,message:e("20,000円以下で入力してください。")},pattern:{value:/^[0-9]+$/,message:e("半角数字で入力してください。")}},render:({field:s,fieldState:{error:a}})=>(0,l.jsx)(j.pde,{...s,label:e("設定額"),inputProps:{inputMode:"numeric",pattern:"[0-9]*"},fullWidth:!0,value:s.value||"",error:!!a,helperText:a?.message,InputProps:{startAdornment:(0,l.jsx)(d.A,{position:"start",children:(0,l.jsx)(t.gc,{icon:r.zPk,className:"text-sm text-[#858585]"})})},ref:null})}),(0,l.jsx)(m.xI,{name:"salesLimit",control:G,rules:{min:{value:1,message:e("販売本数は1〜100本の間で設定してください。")},max:{value:100,message:e("販売本数は1〜100本の間で設定してください。")},pattern:{value:/^[0-9]+$/,message:e("販売本数は1〜100本の間で設定してください。")}},render:({field:s,fieldState:{error:a}})=>(0,l.jsx)(j.pde,{...s,label:e("販売本数"),InputLabelProps:{shrink:!0},inputProps:{inputMode:"numeric",pattern:"[0-9]*"},fullWidth:!0,placeholder:"20",value:s.value??"",error:!!a,helperText:a?.message,ref:null})}),(0,l.jsx)(m.xI,{name:"body",control:G,rules:{validate:s=>s.trim().length>0||e("メッセージを入力してください")},render:({field:s,fieldState:{error:a}})=>(0,l.jsx)(j.pde,{...s,label:e("コメント"),placeholder:`${e("メッセージを入力")}...`,value:s.value,fullWidth:!0,multiline:!0,minRows:5,error:!!a,helperText:a?.message,InputLabelProps:{shrink:!0},ref:null})}),(0,l.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,l.jsx)("div",{className:"flex gap-1 text-base",children:(0,l.jsx)("div",{className:"font-semibold text-black",children:e("購入期限")})}),(0,l.jsx)(m.xI,{name:"purchasableUntil",control:G,rules:{validate:s=>!s||(s<=new Date?e("購入期限は現在時刻より後に設定してください"):!(s>(0,c.A)(new Date,3))||e("購入期限は3日以内に設定してください"))},render:({field:s,fieldState:{error:a}})=>(0,l.jsxs)("div",{children:[(0,l.jsx)(j.lrV,{disablePast:!0,onChange:s.onChange,placeholder:e("購入期限日を選択"),value:s.value,defaultHour:0,defaultMinute:0}),a&&(0,l.jsx)(n.A,{error:!0,children:a.message})]})})]}),(0,l.jsx)(j.cnM,{value:L,onChange:R}),(0,l.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,l.jsx)("p",{className:"text-xs leading-relaxed text-desc",children:e("送信先条件に合致するユーザーが存在する場合のã
1¿ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒé€ä¿¡ã•れます。")}),(0,l.jsx)(j.$nd,{fullWidth:!0,loading:W,disabled:!F,onClick:()=>{E?.capture(w.i.BULK_MESSAGE_SALE_SEND_CLICK),V(s=>z(()=>Z(s),`${e("メッセージを送信しています")}...`))()},size:"large",variant:"contained",children:e("送信する")})]})]})})})}},e=>{e.O(0,[636,6593,8792],()=>e(e.s=82502)),_N_E=e.O()}]);

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.