{"version":3,"file":"js/63472-8d9d98aa9d1961a8b685.js","mappings":"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","sources":["webpack://assistant/./frontend/packs/models/RoomCreateManager.ts"],"sourcesContent":["import axios from \"axios\"\nimport { funcName, Logger } from \"packs/common\"\n\nimport Util from \"packs/utils/Util\"\nimport { DateTime } from \"luxon\"\nimport Notice from \"packs/models/Notice\"\n\nimport Room from \"packs/models/Room\"\nimport RoomMember from \"packs/models/RoomMember\"\nimport Appointment from \"packs/models/Appointment\"\nimport AvailableScheduleTag from \"packs/models/AvailableScheduleTag\"\nimport RoomStorage from \"packs/models/RoomStorage\"\nimport NotificationControl from \"packs/utils/NotificationControl\"\nimport UserSetting from \"packs/models/UserSetting\"\nimport RoomSetting from \"packs/models/RoomSetting\"\nimport AppealContent from \"packs/models/AppealContent\"\nimport MailFlow from \"packs/models/MailFlow\"\nimport FormField from \"packs/models/FormField\"\nimport TemplateUtil from \"packs/utils/TemplateUtil\"\nimport PossibleDate from \"packs/models/PossibleDate\"\nimport UserPermissionsOption from \"packs/models/UserPermissionsOption\"\nimport ContactListGroup from \"packs/models/ContactListGroup\"\nimport LocationTag from \"packs/models/LocationTag\"\nimport DateTag from \"./DateTag\"\nimport AvailableScheduleRule from \"packs/models/AvailableScheduleRule\"\nimport { reactive } from \"vue\"\nconst roomStorage = new RoomStorage()\nimport CalendarUtil from \"packs/utils/CalendarUtil\"\nimport ParentRoomGroup from \"packs/models/ParentRoomGroup\"\nimport AutoCreateRoomRule from \"packs/models/AutoCreateRoomRule\"\n\n/**\n * 主にルームを作成/更新する際に利用します。\n */\ninterface RoomCreateManager {\n room: Room\n appo: Appointment\n members: RoomMember[]\n astag: AvailableScheduleTag\n userInfo: RoomMember\n room_setting: RoomSetting\n appeal_content: AppealContent\n fields: FormField[]\n mail_flows: MailFlow[]\n assign_fields: FormField[]\n\n // draft, publishing, suspended, hidden\n publicStatus: string\n selectedMailFlow: MailFlow\n chukaiAstag: AvailableScheduleTag\n\n edittingAstag: AvailableScheduleTag\n hasUnsaved: boolean\n attendees: RoomMember[]\n pds: PossibleDate[]\n // 調整ページから調整カレンダーに作成しに行く場合に、一度pending状態にして、resetしないでおきます.\n pendingCreateRoom: boolean\n changeOwner: boolean\n showPlanOptionModalWithName: string\n\n // 公開ページから限定公開作成時に必要なパラメータを保持.\n // user_list Array<{user: RoomMember, mail: MailFlow}>\n user_list: any\n createType: string // only_url, send_mail, except_first_mail\n mf: MailFlow // 全体に適用するMailFlow\n currentSendMem: RoomMember // user_listの選択しているユーザー.\n opMembers: RoomMember[]\n fixMembers: RoomMember[]\n clg: ContactListGroup\n currentTab: string\n currentMail: MailFlow\n showSMSField: boolean\n showLeftPanelContentWithType: string\n edittingRule: AvailableScheduleRule\n periodText: string\n formDisplayType: string // common / assign\n\n // 限定公開ページグループ作成時に利用するユーザーリスト\n userList: RoomMember[]\n viewType: string // appoInfo, fixer, addressbook\n parg: ParentRoomGroup\n addressbookType: string // block_1, fixer, approval\n fixers: RoomMember[]\n approvers: RoomMember[]\n\n selectedRule: AutoCreateRoomRule\n ac_rules: AutoCreateRoomRule[]\n subAstag: AvailableScheduleTag\n\n setNew(...args: any)\n reset()\n\n updateRoom(room: Room)\n updateAppo(appo: Appointment)\n updateMembers(mems: RoomMember[])\n updateAstag(astag: AvailableScheduleTag)\n updateSubAstag(subAstag: AvailableScheduleTag)\n updateRoomSetting(room_setting: RoomSetting)\n updateAppealContent(apc: AppealContent)\n updateMailFlow(mf: MailFlow)\n updateAutoCreateRoomRule(rule: AutoCreateRoomRule)\n findCustomMailFlow(mf: MailFlow)\n removeCustomMailFlow(mf: MailFlow)\n updateFormFields(fields: FormField[])\n\n calcurateAttendees()\n saveRoom(): Promise\n configureRoom(purpose: string): Room\n saveForPreview(...args: any)\n insertTemplateText(...args: any): string\n demoFixFormat(duration)\n realFields()\n defaultSimpleText(defName: string, ...args): string\n appoTableText(): string\n answeredFormText(): string\n showCandidateDatesText(headerText: string)\n canFix(): boolean\n createParentRoomsFromPublicRoom(\n members: RoomMember[],\n mailsDic: any,\n fixMembers: RoomMember[],\n fixMemberMessage: string,\n endpoint: string,\n settingsDic: any\n )\n updateEdittingRule(rule: AvailableScheduleRule)\n updateSpanText(beforeRs, afterRs)\n updateUserList(mems: RoomMember[])\n}\n\n// データストア\nlet _RoomCreateManager: RoomCreateManager = reactive({\n room: null,\n appo: null,\n members: null,\n astag: null,\n userInfo: null,\n room_setting: null,\n appeal_content: null,\n publicStatus: ``,\n selectedMailFlow: null, // 選択中のメールフロー\n chukaiAstag: null,\n fields: null,\n assign_fields: null,\n mail_flows: null,\n\n edittingAstag: null,\n hasUnsaved: false, // 保存していない変更点がある場合、true trueで戻ろうとするとwarningを表示.\n attendees: null,\n pds: null, // 表示する候補日を保持.\n // 途中で調整カレンダーを作成しにいってもデータリセットされないように変更\n pendingCreateRoom: false,\n\n // Editする場合に、自分の調整ページか判断するためのオーナー情報を持っておきます.\n // 自分の調整ページでない場合、更新時にモーダルを表示し、オーナーを変更していいか確認を入れます。\n changeOwner: false,\n\n // プラン・オプションに該当がない場合、名前を詰め込みます. watchでRoomSettingsから表示します.\n showPlanOptionModalWithName: null,\n\n // 公開ページから複数人を同時に作成する場合はこちらを利用します.\n user_list: null,\n createType: ``,\n mf: null,\n currentSendMem: null,\n opMembers: [],\n fixMembers: [],\n clg: null,\n currentTab: null,\n currentMail: null,\n showSMSField: false,\n showLeftPanelContentWithType: null,\n edittingRule: null,\n periodText: null,\n formDisplayType: `common`, // common / assign\n userList: [],\n viewType: `appoInfo`, // appoInfo, fixer, addressbook\n parg: ParentRoomGroup.createDefault(),\n addressbookType: `block_1`, //アドレス帳をクリックした際にいれるブロックの種類\n fixers: [],\n approvers: [],\n selectedRule: null,\n ac_rules: [],\n subAstag: null,\n\n setNew(\n room: Room,\n appo: Appointment,\n mems: RoomMember[],\n astag: AvailableScheduleTag,\n userInfo: RoomMember,\n us: UserSetting = null,\n action: string = `new`,\n subAstag: AvailableScheduleTag\n ) {\n this.reset()\n Logger(`RoomCreateManager.setNew::: action:${action} room:${room?.id}, astag:${astag?.name}, appo:${appo?.id}`)\n room = { ...room }\n if (action == `copy` && room.room_type == `public_room`) {\n // page_urlに番号をつけて名前被りしないようにします。\n room.page_key = Math.random().toString(32).substring(2)\n if (Util.isPresent(room.appeal_content) && room.appeal_content.id) {\n room.appeal_content.id = null\n room.appeal_content.presetInfo = false\n }\n room.form_id = null\n let rs = RoomSetting.copy(room.room_setting)\n\n if (rs) {\n rs.id = null\n }\n this.room_setting = rs\n this.room_setting.auto_share_public_id = null\n room.owner = userInfo\n\n if (room.is_owner) {\n if (rs?.auto_share_my_room_type == `owner_only`) {\n this.room_setting.auto_share_public_id = room.public_id\n }\n } else if (room.is_shared) {\n // 共有を受けている公開ページを複製した場合、自分がオーナーの自分の調整カレンダーを利用します.\n\n room.owner_avaialble_schedule_tag_id = null\n } else {\n room.owner_avaialble_schedule_tag_id = null\n }\n\n // if (room.is_shared) {\n // // 共有を受けている公開ページを複製した場合、自分がオーナーの自分の調整カレンダーを利用します.\n // room.owner = userInfo\n // room.owner_avaialble_schedule_tag_id = null\n // }\n Logger(`RoomCreateManager.setNew page_url:${room.page_url}, page_key:${room.page_key}`)\n }\n Logger(`RoomCreateManager.setNew 更新されたappeal_content:${Util.output(room.appeal_content)}`)\n\n if (Util.isBlank(room.appeal_content)) {\n room.appeal_content = AppealContent.createDefault()\n }\n\n if (Util.isPresent(room.form_fields)) {\n // edit/copyしたときにform_fieldsの必須フィールドをもとに戻す.\n for (let _f of room.form_fields) {\n if ([`attendee1_name`, `attendee1_email`].includes(_f.name_attr)) {\n _f.canDelete = false\n }\n }\n }\n\n if (action == `copy`) {\n appo.status = 1\n }\n\n Logger(`RoomCreateManager.setNew owner:${Util.output(room.owner)}`)\n if (Util.isBlank(room.owner)) {\n this.room.owner = userInfo\n }\n\n if (Util.isPresent(appo.selectable_locations)) {\n let _loctag = appo.selectable_locations[0]\n _loctag.selected = true\n appo.selected_location = _loctag\n appo.location_name = _loctag.keyword\n appo.location_tag_id = _loctag.id\n }\n this.room = room\n\n if (appo.location_select_type.includes(`registrable`)) {\n appo.selectable_locations = Appointment.adjustLocations(appo, appo.selectable_locations)\n }\n this.appo = appo\n this.members = mems || []\n this.astag = astag\n this.subAstag = subAstag\n if (!this.subAstag && room?.sub_available_schedule_tag?.available_schedule_tag_id) {\n let subAstag = room.sub_available_schedule_tag\n let dic = {\n id: subAstag.available_schedule_tag_id,\n name: subAstag.name,\n color: subAstag.color,\n has_detail: false,\n optional_schedules: [],\n }\n this.subAstag = AvailableScheduleTag.fetchFromJson([dic])[0]\n }\n this.userInfo = userInfo\n this.calcurateAttendees()\n\n if (!this.room_setting) {\n this.room_setting = RoomSetting.findOrCreateSetting(room, { ...us })\n this.room_setting.duration = appo.duration\n }\n\n // 権限が「チャットなし」の場合、チャットをはずします.\n if (!UserPermissionsOption.permitDisplay(this.userInfo, `room_settings`, `room_settings_use_chat`)) {\n this.room_setting.use_chat = false\n }\n this.appeal_content = { ...room.appeal_content }\n if (this.room.room_type == `parent_room`) {\n this.selectedMailFlow = this.room_setting.mail_flows.find(mf => mf.def_type == `create_room`)\n } else {\n this.selectedMailFlow = this.room_setting.mail_flows.find(mf => mf.def_type == `inquire_on_public_room`)\n }\n this.fields = this.room.form_fields\n this.mail_flows = this.room_setting.mail_flows\n },\n reset() {\n this.room = null\n this.appo = null\n this.members = null\n this.attendees = null\n this.astag = null\n this.subAstag = null\n this.edittingAstag = null\n this.room_setting = null\n this.appeal_content = null\n this.publicStatus = ``\n this.selectedMailFlow = null\n this.fields = null\n this.mail_flows = null\n this.pendingCreateRoom = false\n this.changeOwner = false\n this.user_list = null\n this.createType = ``\n this.mf = null\n this.currentSendMem = null\n this.opMembers = []\n this.fixMembers = []\n this.clg = null\n this.currentTab = null\n this.currentMail = null\n this.selectedRule = null\n this.ac_rules = []\n /**\n userInfo: null,\n chukaiAstag: null,\n hasUnsaved: false, // 保存していない変更点がある場合、true trueで戻ろうとするとwarningを表示.\n pds: null, // 表示する候補日を保持.\n */\n },\n\n updateRoom(room: Room) {\n this.room = room\n this.saveForPreview()\n },\n updateAppo(appo: Appointment) {\n this.appo = appo\n this.room.current_appointment = appo\n this.room.appointments = [appo]\n this.calcurateAttendees()\n this.saveForPreview()\n },\n updateMembers(mems: RoomMember[]) {\n this.members = mems\n this.calcurateAttendees()\n this.saveForPreview()\n },\n updateAstag(astag: AvailableScheduleTag) {\n this.astag = astag\n this.saveForPreview()\n },\n updateSubAstag(subAstag: AvailableScheduleTag) {\n this.subAstag = subAstag\n this.saveForPreview()\n },\n updateRoomSetting(room_setting: RoomSetting) {\n this.updateSpanText(this.room_setting, room_setting)\n this.room_setting = room_setting\n this.room.room_setting = room_setting\n this.saveForPreview()\n },\n updateAppealContent(apc: AppealContent) {\n this.appeal_content = apc\n this.room.appeal_content = apc\n Logger(`updateAppealContent: ${Util.output(apc)}`)\n this.saveForPreview()\n },\n updateMailFlow(mf: MailFlow) {\n Logger(`${funcName()} ${mf.subject}`)\n let mfs = this.room_setting.mail_flows\n let _mf = null\n if (mf.def_type == `custom`) {\n _mf = this.findCustomMailFlow(mf)\n } else {\n _mf = mfs.find(_mf => _mf.def_type == mf.def_type)\n }\n\n if (_mf) {\n Object.assign(_mf, mf)\n }\n this.mail_flows = mfs\n let rs = this.room_setting\n rs.mail_flows = this.mail_flows\n this.room.room_setting = rs\n this.saveForPreview()\n },\n findCustomMailFlow(mf: MailFlow) {\n let _mfs = this.mail_flows\n let _mf = _mfs.find(_mf => MailFlow.isSame(_mf, mf))\n return _mf\n },\n removeCustomMailFlow(mf: MailFlow) {\n let _mfs = this.mail_flows\n _mfs = _mfs.filter(_mf => !MailFlow.isSame(_mf, mf))\n this.mail_flows = _mfs\n let rs = this.room_setting\n rs.mail_flows = this.mail_flows\n this.room.room_setting = rs\n this.saveForPreview()\n return _mfs\n },\n updateFormFields(fields: FormField[]) {\n this.fields = fields\n this.room.form_fields = fields\n this.saveForPreview()\n },\n calcurateAttendees() {\n let members: RoomMember[] = this.members ? [...this.members] : []\n let room = { ...this.room }\n let attendees = []\n let owner = members.find(m => m.role == 100)\n if (!owner) {\n let _owner = { ...this.userInfo }\n _owner.role = 100\n members.push(_owner)\n }\n if (members.length <= 2) {\n this.appo.required_owner_participation = true\n }\n for (let _member of members) {\n if (this.appo.required_owner_participation) {\n // 仲介参加の場合、全員が参加\n attendees.push(_member)\n } else {\n // オーナー不参加.\n if (_member.role != 100) {\n attendees.push(_member)\n }\n }\n }\n Logger(`attendees: ${attendees.map(m => m.name)}`)\n this.attendees = attendees\n this.room.attendees = attendees\n this.room.members = members\n this.members = members\n },\n\n /**\n * 調整ページを作成します。\n */\n saveRoom(): Promise {\n let room = this.configureRoom(`publish`)\n let endpoint = `rooms/save_and_publish`\n if (room.room_type == `public_room`) {\n endpoint = `public_rooms`\n Logger(`公開ページとして保存します.`)\n room.public_status = Util.isPresent(this.publicStatus) ? this.publicStatus : `publishing`\n } else {\n if (this.publicStatus == `draft`) {\n endpoint = `rooms/save_as_draft`\n }\n }\n room[`change_owner`] = this.changeOwner\n\n return axios\n .post(`${Util.prefixUrl}/${endpoint}`, {\n room: room,\n })\n .then(res => {\n Logger(`res: ${res.data.message}`)\n Notice.message = `${res.data.message}`\n let _newRoom = res.data.room\n let newRoom = Room.fetchFromJson([_newRoom], this.userInfo.user_id)[0]\n let astag = null\n if (res.data.is_change_owner_astag) {\n astag = AvailableScheduleTag.fetchFromJson([res.data.astag])[0]\n }\n\n return { room: newRoom, isSuccess: true, astag: astag }\n })\n .catch(err => {\n Logger(`err: ${Util.output(err)}`)\n Logger(`err: ${err.message} ${Util.output(err.response)}`)\n NotificationControl.showErrorMessage(err)\n const res = err.response ? err.response.data : null\n // Notice.message = `調整ページの作成に失敗しました。 \\n管理者にお問い合わせください。`\n // let newRoom = res.room ? Room.fetchFromJson([res.room], userInfo.user_id)[0] : null\n\n return { room: null, isSuccess: false }\n })\n },\n\n /**\n * 送信用・調整ページプレビュー用にroomに詰め込みます。\n * @param _room\n * @param _appo\n * @param members\n * @param astag\n * @param purpose [string] 利用目的 `publish`: 調整ページ作成時, `preview` プレビュー表示.\n */\n configureRoom(purpose: string): Room {\n let room: Room = { ...this.room }\n let appo: Appointment = { ...this.appo }\n let rs = { ...this.room_setting }\n\n // 送信するのに不要なキーを削除.\n if (purpose == `publish`) {\n room = Room.deleteUnusedKeys(room)\n this.members = RoomMember.removeOwner(this.members, this.userInfo)\n let ffs = [...(room.form_fields || [])]\n let newFfs = []\n for (let _ff of ffs) {\n if (_ff.allow_free_text && (_ff.selectable_values || []).length > 0) {\n _ff.selectable_values = _ff.selectable_values.filter(f => f.value != `その他`)\n }\n newFfs.push(_ff)\n }\n room.form_fields = newFfs\n }\n\n let astagId = \"\"\n\n // 2人の日程調整の場合、オーナーは参加必須です。\n if ((this.members || []).length == 1) {\n appo.required_owner_participation = true\n }\n if (room.room_type == `public_room` || appo.required_owner_participation) {\n if (Util.isPresent(this.astag)) {\n astagId = this.astag.id\n Logger(`連携する astag id: ${astagId} ${this.astag.name}`)\n }\n }\n\n if (!appo.name || appo.name === ``) {\n appo.name = \"打ち合わせ\"\n }\n if (room.id == `newId`) {\n delete room.id\n }\n // 権限が「チャットなし」の場合、チャットをはずします.\n if (!UserPermissionsOption.permitDisplay(this.userInfo, `room_settings`, `room_settings_use_chat`)) {\n rs.use_chat = false\n }\n Logger(`configureRoom内のappo前: ${Util.output(appo)}`)\n appo = Appointment.setLocationSelectType(appo, appo.selectable_locations, true)\n Logger(`configureRoom内のappo後: ${Util.output(appo)}`)\n\n if (purpose == `publish`) {\n room.members = this.members\n room[\"appointment\"] = appo\n if (Util.isPresent(room.room_setting)) {\n if (RoomSetting.hasRedirectUrl(room)) {\n if (!RoomSetting.isRedirectUrl(room)) {\n room.room_setting.thanks_page.redirect_url_after_send = null\n }\n }\n }\n } else if (purpose == `preview`) {\n appo.status = 1\n room.appointments = [appo]\n room.current_appointment = appo\n room.keyId = `preview`\n // 仲介不参加で出席者2以上の場合、chukaiAstagをはめる.(すでに仲介astagを送ってるはず)\n astagId = this.astag.id\n let atts = [...this.members]\n if (!appo.required_owner_participation) {\n atts = RoomMember.removeOwner(atts, this.userInfo)\n this.members = RoomMember.removeOwner(this.members, this.userInfo)\n }\n\n room.attendees = atts\n room.members = this.members\n }\n room.owner_avaialble_schedule_tag_id = astagId\n room.room_setting = rs\n if (Util.isPresent(this.subAstag)) {\n room.sub_available_schedule_tag = {\n available_schedule_tag_id: this.subAstag.id,\n name: this.subAstag.name,\n color: this.subAstag.color,\n is_open_schedule: this.subAstag.is_open_schedule,\n open_schedule_url: this.subAstag.open_schedule_url,\n }\n } else {\n room.sub_available_schedule_tag = null\n }\n\n Logger(`configureRoom 最終的: ${Util.output(room)}`)\n return room\n },\n\n /**\n * ローカルストレージに情報を保存します。\n * @param room\n * @param userInfo\n * @param astag\n * @param appo\n * @param members\n * @param chukaiAstag\n * @param forceParticateRule 強制的に今の設定しているparticipate_ruleを変更しないでおくか.\n */\n saveForPreview(forceParticipateRule: boolean = false) {\n if (!this.userInfo) return\n if (!this.astag) return\n let _astag = Util.isPresent(this.astag) ? { ...this.astag } : null\n let _appo = Util.isPresent(this.appo) ? { ...this.appo } : null\n let mems = Util.isPresent(this.members) ? [...this.members] : []\n let room = { ...this.room }\n let userInfo = { ...this.userInfo }\n\n // memberに自分を追加\n if (mems.length == 1) {\n _appo.required_owner_participation = true\n _appo.fix_type == 100\n }\n Logger(`${funcName()} mems人数確認1: ${mems.length} ${_appo.required_owner_participation}`)\n // room.owner = userInfo\n room.current_appointment = _appo\n room.appeal_content = this.appeal_content\n if (!mems.some(m => m.user_id == userInfo.user_id)) {\n mems.push(userInfo)\n }\n Logger(`${funcName()}mems人数確認2: ${mems.length} ${_appo.required_owner_participation}`)\n if (mems.length >= 3) {\n _appo.fix_type == 99\n if (!Room.needOwner(room)) {\n _astag = this.chukaiAstag\n mems = mems.filter(mem => mem.user_id != userInfo.user_id)\n }\n }\n let astagId = _astag.id\n // ルームを表示させるために必要な情報を仕込んで、調整ページに遷移\n room = this.configureRoom(room, _appo, mems, _astag, `preview`, userInfo)\n\n // room = Room.fetchFromJson([room], userInfo.user_id)[0]\n\n if (forceParticipateRule) {\n // 元の情報を入れ直す.\n room.current_appointment.required_owner_participation = _appo.required_owner_participation\n if (!Room.needOwner(room)) {\n _astag = this.chukaiAstag\n mems = RoomMember.removeOwner(mems, userInfo)\n let atts = RoomMember.removeOwner(room.attendees, userInfo)\n room.members = mems\n room.attendees = atts\n }\n Logger(`${funcName()}forceParticipateRuleを適用します. ${Util.output(room.members)}`)\n }\n room.keyId = `preview`\n room.owner_avaialble_schedule_tag_id = astagId\n let subAstagId = this.subAstag?.id\n room.sub_available_schedule_tag_id = subAstagId\n Logger(`${funcName()}プレビュー用のroom: ${Util.output(room)}`)\n\n let roomStorage = new RoomStorage()\n roomStorage.saveRoomPreview(room)\n roomStorage.saveAppointmentPreview(room.current_appointment)\n let hasUnsaved = true\n this.hasUnsaved = true\n return { room, hasUnsaved }\n },\n /**\n * 文中の変数を代入し、プレビュー文に変更します.\n * @param content [string] メールタイトルまたはメール本文\n */\n insertTemplateText(content: string, defType: string = null): string {\n if (Util.isBlank(content)) return ``\n let atts = this.members.filter(m => m.user_id != this.userInfo.user_id)\n if (Util.isBlank(atts) && this.room.room_type == `public_room`) {\n atts.push(RoomMember.createForPublicRoom())\n }\n let owner = this.members.find(m => m.role == 100) || this.userInfo\n Logger(`rcm.insertTemplateText content: ${content} fields: ${Util.output(this.fields)}`)\n let _appo = Appointment.copy(this.appo)\n _appo.jp_format = this.demoFixFormat()\n let mag = null\n let _astag = this.astag\n if (Util.isPresent(_astag.meeting_attendees_groups)) {\n mag = _astag.meeting_attendees_groups[0]\n }\n let str = TemplateUtil.insertTemplateText(\n content,\n atts,\n owner,\n _appo,\n this.userInfo,\n this.pds,\n this.realFields(),\n defType,\n `rich`,\n this.room,\n mag\n )\n return str\n },\n demoFixFormat(duration = null) {\n if (!duration) duration = this.appo.duration\n return Appointment.createJpFormat(DateTime.local(), duration)\n },\n realFields() {\n if (Util.isBlank(this.fields)) return this.fields\n\n let rs = this.room_setting\n if (rs && rs.send_channel_type == `sms`) {\n let fields = [...this.fields]\n let ffs = fields.filter(f => f.param_key != `attendee1_email`)\n return ffs\n } else {\n return [...this.fields]\n }\n },\n defaultSimpleText(defName: string, addName = true) {\n let content = ``\n // if (addName) content += `○○株式会社\\n●●様\\n\\n`\n if (defName == `create_room`) {\n content += this.showCandidateDatesText(`以下の日程で「<<調整タイトル>>」のご都合いかがでしょうか。`)\n } else if ([`fix`, `fixed_appointment`].includes(defName)) {\n content += `調整いただきありがとうございます。下記日程で確定しました。\\n`\n content += `${this.appoTableText(true)}`\n content += \"\\n日程のご確認および再調整をされたい場合は、下記リンクからお願い致します\\n↓↓↓\"\n } else if ([`inquire_on_public_room`].includes(defName)) {\n if (this.selectedMailFlow.show_qa) content += `${this.answeredFormText()}`\n let inquiryTypeText = `日程を確定いたしました。日程の確認やキャンセルはメール下部にありますリンクから調整ページに入り、いつでも確認・変更できます。`\n content += `お問い合わせいただきありがとうございます。\\n`\n content += `${inquiryTypeText}\\n`\n if (this.selectedMailFlow.show_qa) {\n content += \"------------\\nお申し込み内容\"\n }\n if (this.room.display_schedule_type == `anytime`) {\n content += this.appoTableText(true)\n }\n if (this.selectedMailFlow.show_qa) {\n content += \"\\n<お申し込み内容が表示されます>\\n\\n\"\n }\n } else if ([`shared_calendar`].includes(defName)) {\n content += this.showCandidateDatesText(`以下の候補が提案されていますが、ご都合いかがでしょうか。`)\n content += \"下記調整ページリンクから日程候補を確認し、確定してください。\"\n } else if ([`feedback`].includes(defName)) {\n content += `本日はありがとうございました。\\n\\nよろしければ以下よりアンケートにお答えください。\\n\\n1分ほどで完了します!`\n } else if ([`the_day_before`].includes(defName)) {\n content += `明日開催予定の出席者にお送りしております。\\n`\n let apcTitle = Util.isPresent(this.appeal_content) ? this.appeal_content.title : this.appo.name\n content += this.appoTableText(this.appo, apcTitle)\n\n content += \"\\n日程のご確認は、下記リンクからお願い致します\\n↓↓↓\"\n } else if ([`start_appointment`].includes(defName)) {\n content += `新規で日程調整を開始しました。\\n`\n content += this.showCandidateDatesText(`以下の日程でご都合いかがでしょうか。`)\n content += this.appoTableText(this.appo, `<<調整タイトル>>`)\n } else if ([`cancel_appointment`].includes(defName)) {\n content += `<<出席者-1-氏名>>様が日程調整のキャンセルをしました。`\n content += \"------------\\n\"\n content += \"<<出席者-1-氏名>>様のキャンセル時のメッセージ\\n\"\n content += \"<キャンセル時のメッセージが表示されます>\\n\"\n content += \"------------\\n\"\n content += \"\\n新しい日程調整を作成する場合は調整ページから作成できます。\\n\"\n let apcTitle = Util.isPresent(this.appeal_content) ? this.appeal_content.title : this.appo.name\n content += this.appoTableText(this.appo, `<<調整タイトル>>`)\n } else if ([`one_day_before_deadline`].includes(defName)) {\n content += \"作成した調整ページの有効期限が残り1日となりました。\\n\"\n content += this.showCandidateDatesText(\n `以下の日程でご都合いかがでしょうか。\\nお時間あるときにご確認いただけますと幸いです。`\n )\n } else if ([`request_other_possible_dates`].includes(defName)) {\n content += `<<出席者-1-氏名>>が別日程の提出リクエストをしました。\\n`\n content += \"------------\\n\"\n content += \"リクエスト時のメッセージ\\n\"\n content += \"<リクエスト時のメッセージが表示されます>\\n\"\n content += \"------------\\n\"\n content +=\n \"日程を多く提案することで、お相手も選びやすくなり一回の候補選択で確定できる確率が高まります。\\n以下から調整ページに入り、追加で日程を提案してください。\"\n } else if ([`remind_to_share_schedule`].includes(defName)) {\n content += this.showCandidateDatesText(`以下の日程でご都合いかがでしょうか。`)\n content += \"\\n\\n日程のご確定お待ちしております。\\n\"\n } else if ([`auto_remind`].includes(defName)) {\n content += this.showCandidateDatesText(`未確定の日程調整がありますが、ご予定はいかがでしょうか。`)\n content += \"\\n\\n日程のご確定お待ちしております。\\n\"\n return content\n } else if ([`reschedule_appointment`].includes(defName)) {\n content += `<<出席者-1-氏名>>様が再調整の依頼をしました。`\n content += \"------------\\n\"\n content += \"<<出席者-1-氏名>>様から再調整時のメッセージ\\n\"\n content += \"<再調整時のメッセージが表示されます>\\n\"\n content += \"------------\\n\"\n content += \"\\n新しい日程調整を作成する場合は調整ページから作成できます。\\n\"\n content += this.showCandidateDatesText(`以下の日程が提案されています`)\n return content\n } else if ([`remind_with_message`].includes(defName)) {\n content += \"新着のメッセージがあります。\\n下記リンクから調整ページに入り、ご確認ください。\"\n } else if ([`notify_message`].includes(defName)) {\n content += \"新着メッセージがあります。\\n下記リンクから調整ページに入り、ご確認してください。\"\n } else if ([`custom`].includes(defName)) {\n content += `カスタムの通知内容を作成します。`\n }\n // `日程を確定いたしました。日程の確認やキャンセルは以下のボタンから調整ページに入り、いつでも確認・変更できます。`\n return content\n },\n appoTableText(isFix: boolean = true) {\n let qa = \"\\n--------------\\n\"\n qa += \"■ <<調整タイトル>>\\n\"\n if (isFix) {\n qa += `<<確定日時>> (<<所要時間>>)\\n`\n }\n qa += `場所: <<場所/オンライン>>\\n`\n return qa\n },\n\n answeredFormText() {\n return ``\n },\n\n showCandidateDatesText(headerText: string = null) {\n let text = headerText ? `\\n${headerText}\\n` : ``\n text += `<<日程候補-確定リンクあり>>`\n return text\n },\n canFix() {\n if (!this.appo.fix_type) {\n return false\n }\n if (this.appo.fix_type == 100) {\n return true\n }\n if (this.appo.fix_type == 1) {\n return false\n }\n if (Util.isBlank(this.members) || this.members.length <= 1) {\n return true\n }\n let exceptOwner = this.members.filter(m => m.user_id != this.userInfo.user_id)\n if (exceptOwner.length == 1) {\n return true\n }\n return false\n },\n /**\n * 公開ページから限定公開ページをまとめて作成します.\n * @param members [RoomMember[]]\n * @param createType [string] send_mail\n * @param mailsDic [Hash]\n * @param fixMembers [RoomMember[]]\n * @param fixMemberMessage [String]\n * @param endpoint [string]\n * @param settingsDic [any] {email: any}\n */\n createParentRoomsFromPublicRoom(\n members: RoomMember[],\n mailsDic: any,\n fixMembers: RoomMember[],\n fixMemberMessage: string,\n endpoint: string = `public_rooms/create_room_from_public_room`,\n settingsDic: any = null\n ) {\n let dic = {}\n let userList = []\n if (this.createType == `send_mail`) {\n for (let mem of members) {\n let mailDic = mailsDic[mem.email]\n let settingDic = settingsDic ? settingsDic[mem.email] : null\n // mailDic.content = mailDic.content.replace(TemplateUtil.autoLinkText, ``)\n userList.push({\n user: mem,\n mail: mailDic,\n settings: settingDic,\n })\n }\n } else {\n settingsDic ||= {}\n for (let mem of members) {\n let settingDic = settingsDic ? settingsDic[mem.email] : null\n userList.push({\n user: mem,\n mail: null,\n settings: settingDic,\n })\n }\n }\n\n if (!endpoint) {\n endpoint = `public_rooms/create_room_from_public_room`\n }\n\n let params = {\n user_list: userList,\n create_type: this.createType,\n mail_flow: this.mf,\n id: this.room.id,\n fix_members: fixMembers,\n fix_member_message: fixMemberMessage,\n contact_list_group_id: Util.isPresent(this.clg) ? this.clg.id : null,\n parent_room_group: this.parg,\n }\n\n if (endpoint == `parent_room_groups/create_rooms_group`) {\n let fixUserList = []\n let approvers = []\n for (let mem of this.fixers) {\n let settingDic = settingsDic[mem.email]\n fixUserList.push({\n user: mem,\n mail: null,\n settings: settingDic,\n })\n }\n\n for (let mem of this.approvers) {\n let settingDic = settingsDic[mem.email]\n approvers.push({\n user: mem,\n mail: null,\n settings: settingDic,\n })\n }\n params[`fix_members`] = fixUserList\n params[`approvers`] = approvers\n params[`duration`] = this.room.current_appointment.duration\n }\n\n return axios\n .post(`${Util.prefixUrl}/${endpoint}`, params)\n .then(res => {\n Logger(`rcm.createParentRoomsFromPublicRoom ${endpoint} RESPONSE ${res.data.message}`)\n Notice.message = `${res.data.message}`\n /**\n * ret = {\n message: render_msg,\n room: parent.to_h(user: current_user, ug_id: access_ug.id),\n astag: astag&.to_h(access_user: current_user),\n room_link: room_link,\n user_info: access_ug.to_h(user: current_user, display_personal: true, display_role: true),\n type: inquiry_type,\n }\n */\n let _newRooms = res.data.parent_rooms_dic\n // let rooms = []\n for (let _dic of _newRooms) {\n // rooms.push(_dic.room)\n let parent = Room.fetchFromJson([_dic.room], this.userInfo.user_id)[0]\n let mem = parent.members.find(m => m.role_name != \"owner\")\n _dic.room = parent\n _dic[`member`] = mem\n }\n // let parents = Room.fetchFromJson(rooms, this.userInfo.user_id)\n\n return {\n generated_rooms_dic: _newRooms,\n isSuccess: true,\n contact_list_group: res.data.contact_list_group,\n request_id: res.data.request_id,\n }\n })\n .catch(err => {\n Logger(`rcm.createParentRoomsFromPublicRoom err: ${err.message} ${Util.output(err.response)}`)\n\n NotificationControl.showErrorMessage(err)\n\n return { generated_rooms_dic: null, isSuccess: false }\n })\n },\n updateEdittingRule(rule: AvailableScheduleRule) {\n if (Util.isBlank(rule)) {\n return\n }\n let _rule = (this.room.available_schedule_rules || []).find(r => r.id == rule.id)\n if (_rule) {\n _rule.available_schedule_tag_id = rule.available_schedule_tag_id\n _rule.astag_info = rule.astag_info\n this.edittingRule = _rule\n // this.updateRoom(this.room)\n } else {\n if (this.room.available_schedule_rules) {\n this.room.available_schedule_rules.push(rule)\n } else {\n this.room.available_schedule_rules = [rule]\n }\n\n this.edittingRule = rule\n }\n },\n updateSpanText(beforeRs, afterRs, isForce = false) {\n if (RoomSetting.needUpdateSpanText(beforeRs, afterRs) && !isForce) {\n Logger(`rcm.updateSpanText 期間に変更がないため更新しません.`)\n return\n }\n\n CalendarUtil.getSpanDescriptionText(afterRs).then(e => {\n Logger(`LinkHeaderRoomSettings#getSpanDescriptionText:${e}, `)\n this.periodText = e[0]\n if (this.cm && this.cm.pdm) {\n Logger(`${funcName()} available_months:${Util.output(e[1])}`)\n this.cm.pdm.available_months = e[1]\n this.cm.pdm.months = e[1]\n }\n })\n },\n updateUserList(mems: RoomMember[]) {\n Logger(`${funcName()} mems:${mems.length}`)\n this.userList = mems\n },\n updateAutoCreateRoomRule(rule: AutoCreateRoomRule) {\n let _rules = this.ac_rules || []\n let _rule = _rules.find(_rule => AutoCreateRoomRule.isSame(_rule, rule))\n if (_rule) {\n Object.assign(_rule, rule)\n } else {\n _rules.push(rule)\n }\n\n this.ac_rules = _rules\n let rs = this.room_setting\n rs.auto_create_room_rules = this.ac_rules\n this.room.room_setting = rs\n this.saveForPreview()\n },\n})\nexport default _RoomCreateManager\n"],"names":["_RoomCreateManager","RoomStorage","reactive","room","appo","members","astag","userInfo","room_setting","appeal_content","publicStatus","selectedMailFlow","chukaiAstag","fields","assign_fields","mail_flows","edittingAstag","hasUnsaved","attendees","pds","pendingCreateRoom","changeOwner","showPlanOptionModalWithName","user_list","createType","mf","currentSendMem","opMembers","fixMembers","clg","currentTab","currentMail","showSMSField","showLeftPanelContentWithType","edittingRule","periodText","formDisplayType","userList","viewType","parg","ParentRoomGroup","createDefault","addressbookType","fixers","approvers","selectedRule","ac_rules","subAstag","setNew","mems","us","action","this","reset","Logger","concat","id","name","__assign","room_type","page_key","Math","random","toString","substring","Util","isPresent","presetInfo","form_id","rs","RoomSetting","copy","auto_share_public_id","owner","is_owner","auto_share_my_room_type","public_id","is_shared","owner_avaialble_schedule_tag_id","page_url","output","isBlank","AppealContent","form_fields","_i","_b","length","_f","includes","name_attr","canDelete","status","selectable_locations","_loctag","selected","selected_location","location_name","keyword","location_tag_id","location_select_type","Appointment","adjustLocations","_a","sub_available_schedule_tag","available_schedule_tag_id","subAstag_1","dic","color","has_detail","optional_schedules","AvailableScheduleTag","fetchFromJson","calcurateAttendees","findOrCreateSetting","duration","UserPermissionsOption","permitDisplay","use_chat","find","def_type","updateRoom","saveForPreview","updateAppo","current_appointment","appointments","updateMembers","updateAstag","updateSubAstag","updateRoomSetting","updateSpanText","updateAppealContent","apc","updateMailFlow","funcName","subject","_mf","mfs","findCustomMailFlow","Object","assign","MailFlow","isSame","removeCustomMailFlow","_mfs","filter","updateFormFields","__spreadArray","m","role","_owner","push","required_owner_participation","members_1","_member","map","saveRoom","_this","configureRoom","endpoint","public_status","axios","post","prefixUrl","then","res","data","message","Notice","_newRoom","newRoom","Room","user_id","is_change_owner_astag","isSuccess","err","response","NotificationControl","showErrorMessage","purpose","deleteUnusedKeys","RoomMember","removeOwner","newFfs","ffs_1","_ff","allow_free_text","selectable_values","f","value","astagId","setLocationSelectType","hasRedirectUrl","isRedirectUrl","thanks_page","redirect_url_after_send","keyId","atts","is_open_schedule","open_schedule_url","forceParticipateRule","_astag","_appo","fix_type","some","needOwner","mem","subAstagId","sub_available_schedule_tag_id","roomStorage","saveRoomPreview","saveAppointmentPreview","insertTemplateText","content","defType","createForPublicRoom","jp_format","demoFixFormat","mag","meeting_attendees_groups","TemplateUtil","realFields","createJpFormat","DateTime","local","send_channel_type","param_key","defaultSimpleText","defName","addName","showCandidateDatesText","appoTableText","show_qa","answeredFormText","display_schedule_type","apcTitle","title","isFix","qa","headerText","canFix","createParentRoomsFromPublicRoom","mailsDic","fixMemberMessage","settingsDic","members_2","mailDic","email","settingDic","user","mail","settings","members_3","params","create_type","mail_flow","fix_members","fix_member_message","contact_list_group_id","parent_room_group","fixUserList","_c","_d","_e","_newRooms","parent_rooms_dic","_newRooms_1","_dic","parent","role_name","generated_rooms_dic","contact_list_group","request_id","updateEdittingRule","rule","_rule","available_schedule_rules","r","astag_info","beforeRs","afterRs","isForce","needUpdateSpanText","CalendarUtil","getSpanDescriptionText","e","cm","pdm","available_months","months","updateUserList","updateAutoCreateRoomRule","_rules","AutoCreateRoomRule","auto_create_room_rules"],"sourceRoot":""}