{"version":3,"file":"js/3648-3eb3bdd2fae54ef55cdc.js","mappings":"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","sources":["webpack://bullseye/./app/javascript/packs/event-bus.js","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/medium-panel/index.js","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/next_step_lock_toggle/index.js","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/score_card_panel/components/score_card/index.js","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/score_card_panel/index.js","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/index.js","webpack://bullseye/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/medium-panel/medium_panel_template.slim","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/next_step_lock_toggle/next_step_lock_toggle_template.slim","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/score_card_panel/components/score_card/score_card_template.slim","webpack://bullseye/./app/javascript/packs/pages/mobile_track_individual/components/score_card_panel/score_card_panel_template.slim"],"sourcesContent":["// https://alligator.io/vuejs/global-event-bus/\nimport Vue from 'vue/dist/vue.esm'\nexport const EventBus = new Vue()\n","import Vue from 'vue/dist/vue.esm'\nimport template from './medium_panel_template.slim'\n\nVue.component('medium-panel', {\n props: ['medium', 'on_press_cancel_medium', 'save_medium', 'delete_medium'],\n mixins: [template],\n data() {\n return {\n mediumId: this.medium.id,\n fileInputName: 'file-input-' + this.medium.id,\n mimeType: this.medium ? this.medium.mime_type : '',\n mediumUrl: this.medium ? this.medium.medium_url : '',\n ...this.initialState(),\n }\n },\n watch: {\n medium: function(newMedium) {\n this.mediumUrl = newMedium ? newMedium.medium_url : ''\n this.mimeType = newMedium ? newMedium.mime_type : ''\n this.mediumId = newMedium ? newMedium.id : null\n this.fileInputName = newMedium\n ? 'file-input-' + newMedium.id\n : 'file-input-null'\n },\n },\n methods: {\n initialState(url) {\n return {\n fileName: '',\n fetching: false,\n progress: '0%',\n progressClass: 'fetching',\n error: null,\n }\n },\n onSaveMediumSuccess(url, mime_type, medium_id) {\n Object.assign(this.$data, {\n mediumUrl: url,\n mimeType: mime_type,\n mediumId: medium_id,\n ...this.initialState(),\n })\n },\n onSaveMediumFailed(error) {\n this.fetching = false\n this.progress = '100%'\n this.error = error\n this.progressClass = 'error'\n },\n initDirectUploader() {\n $(this.$el)\n .find('input.file')\n .fileupload({\n replaceFileInput: false,\n add: (e, data) => {\n this.fetching = true\n this.fileName = data.files[0].name\n this.progressClass = 'fetching'\n this.mediumUrl = false\n this.error = null\n const options = {\n filename: data.files[0].name,\n _: Date.now,\n }\n $.getJSON('/resources/cache/presign', options, function(result) {\n data.formData = result.fields\n data.url = result.url\n data.paramName = 'file'\n data.submit()\n })\n },\n progress: (e, data) => {\n this.progress = `${parseInt((data.loaded / data.total) * 100, 10)}%`\n },\n done: (e, data) => {\n this.progressClass = 'saving'\n const mediumData = JSON.stringify({\n id: data.formData.key.match(/cache\\/(.+)/)[1],\n storage: 'cache',\n metadata: {\n size: data.files[0].size,\n filename: data.files[0].name.match(/[^\\/\\\\]+$/)[0],\n mime_type: data.files[0].type,\n },\n })\n this.save_medium(\n mediumData,\n this.mediumId,\n this.onSaveMediumSuccess,\n this.onSaveMediumFailed\n )\n },\n fail: (e, data) => {\n this.fetching = false\n this.progress = '0%'\n this.progressClass = 'error'\n this.mediumUrl = this.medium ? this.medium.medium_url : false\n this.error = data.response().errorThrown\n },\n })\n },\n },\n mounted() {\n this.initDirectUploader()\n },\n})\n","import Vue from 'vue/dist/vue.esm';\nimport template from './next_step_lock_toggle_template.slim';\n\nVue.component('next-step-lock-toggle', {\n mixins: [template],\n props: [\n 'inputId',\n 'isLocked',\n 'handleClick'\n ]\n});\n","import Vue from 'vue/dist/vue.esm'\nimport template from './score_card_template.slim'\n\nVue.component('score-card', {\n props: [\n 'objective',\n 'narrative_feedback',\n 'on_press_score',\n 'score',\n 'open_objective_details_modal',\n 'open_objective_note_modal',\n 'open_learner_details_modal',\n 'past_objective_score',\n 'open_checklist_items_modal',\n 'score_band'\n ],\n computed: {\n hasNotes() {\n if (!this.score) return false\n\n return (\n this.score.notes !== '' &&\n this.score.notes !== ' ' &&\n this.score.notes !== '

' &&\n this.score.notes !== null\n )\n },\n lastScoreClass() {\n switch (this.past_objective_score?.score) {\n case 0:\n return 'no'\n case 1:\n return 'somewhat'\n case 2:\n return 'mostly'\n case 3:\n return 'yes'\n case 4:\n return 'exemplary'\n default:\n return 'no-score'\n }\n },\n },\n mixins: [template],\n methods: {\n getCheckedItemCount(objective) {\n return objective.checklist_items_list.filter(item => item.checked).length;\n },\n isSelected(value) {\n const scoreObject = this.score\n return scoreObject && scoreObject.score === value\n },\n },\n})\n","import Vue from 'vue/dist/vue.esm'\nimport VueTruncate from 'vue-truncate-filter'\nVue.use(VueTruncate)\nimport _ from 'lodash'\nimport template from './score_card_panel_template.slim'\nimport './components/score_card'\n\nVue.component('score-card-panel', {\n mixins: [template],\n props: [\n 'objectives',\n 'narrative_feedback',\n 'on_score_objective',\n 'get_score',\n 'open_objective_details_modal',\n 'open_objective_note_modal',\n 'open_learner_details_modal',\n 'past_objective_scores',\n 'open_checklist_items_modal',\n 'score_band'\n ],\n data() {\n return {\n searchQuery: '',\n }\n },\n computed: {\n filteredObjectives() {\n return this.objectives.filter(objective => {\n const cardText = _.values(_.omit(objective, ['id'])).join()\n return cardText.toLowerCase().includes(this.searchQuery.toLowerCase())\n })\n },\n },\n methods: {\n pastObjectiveScore(objective) {\n return _.find(this.past_objective_scores, {\n mastery_objective_id: objective.id,\n })\n },\n },\n})\n","import Vue from 'vue/dist/vue.esm'\nimport { EventBus } from '../../event-bus.js'\nimport template from './mobile_track_individual_template.slim'\nimport axios from 'axios'\nimport './components/score_card_panel'\nimport './components/medium-panel'\nimport './components/next_step_lock_toggle'\nimport _ from 'lodash'\nimport moment from 'moment';\n\nVue.component('mobile-track-individual', {\n mixins: [template],\n props: [\n 'school_slug',\n 'session',\n 'learning_resources',\n 'objectives_options',\n 'is_iphone',\n 'learner',\n 'past_assessments',\n 'goal_objective_names',\n 'past_objective_scores',\n 'next_step_data',\n 'next_steps',\n 'learners_options',\n 'current_staff',\n 'available_tags',\n 'score_band',\n 'resource_center_enabled_for_school',\n 'rewrite_notes_enabled'\n ],\n data() {\n return {\n checklistItems: this.session.objectives,\n initialChecklistItems: [],\n activeAccordionItems: [],\n searchQuery: '',\n selectedItems: this.getInitialSelectedItems(),\n sessionState: this.session,\n learning_resource: this.learning_resources,\n sessionEdits: this.initializeSessionEdits(this.session),\n sessionNote: this.session.notes,\n privateNote: this.session.private_notes,\n sessionNotification: this.session.notification,\n teacherLearner: this.learner.learner_type === 'Staff',\n objectiveNote: null,\n notesWysiwygToggleKey: 0,\n pastObjectiveScores: this.past_objective_scores,\n selectedObjective: {},\n showSessionNote: false,\n showPrivateNote: false,\n showSessionMedium: false,\n isDraft: this.session.draft,\n isNotified: false,\n modalOpen: false,\n sessionId: this.session.id,\n learnerName: this.session.assessee.full_name,\n observer: this.session.assessor.full_name,\n goal: this.session.goal,\n sessionName: this.session.assessment_name,\n menuHidden: true,\n tagsDropdownMenuHidden: true,\n availableTags: this.available_tags,\n showSessionNotification: false,\n nextStepList: [],\n commentsList: [],\n singleNextStep: [],\n completedNextSteps: [],\n notesSaving: false,\n objectiveNotesSaving: false,\n privateNotesSaving: false,\n nextStep: {\n title: '',\n description: '',\n dueDate: '',\n nextStepOwner: null,\n objective: [],\n media: null,\n links: [],\n mediaUrl: '',\n uploadedMedia: [],\n selectedResources: [],\n locked: this.next_step_data.locked\n },\n comment: {\n body: '',\n notificationIds: [],\n media: null,\n links: [],\n mediaUrl: '',\n uploadedMedia: [],\n selectedResources: [],\n },\n progress: '0%',\n isNextStepEdit: true,\n progressClass: '',\n fetching: false,\n isIframeLinkCheck: false,\n iframeLinkUrl: '',\n mediumDataCollection: [],\n showLinkInput: false,\n linkInput: '',\n showResourceDrawer: false,\n resourceSearchQuery: '',\n addResourceSearchQuery: '',\n resources: [],\n nextStepResources: [],\n objectiveResources: [],\n singleResourceDataForObjective: {},\n linkedUrls: [],\n mediaUrl: '',\n showSingleResourcePanel: false,\n editedNextStep: {\n id: 0,\n title: '',\n description: '',\n dueDate: '',\n nextStepOwner: [],\n objectives: [],\n locked: false,\n },\n toBeDeletedNextStep: {\n id: 0\n },\n selectAllOwnersChecked: false,\n rewriteNotesEnabled: this.rewrite_notes_enabled,\n $rewriteNotesPopup: null\n }\n },\n\n computed: {\n filteredResources() {\n return this.objectiveResources.filter(resource =>\n resource.name.toLowerCase().includes(this.resourceSearchQuery.toLowerCase())\n );\n },\n displayedLinksOnEditMode() {\n return this.nextStep.links.filter(link => !link._destroy);\n },\n isIframeLink() {\n return this.nextStep.links.map((url, index) => !!this.iframeLinkUrls[index]);\n },\n filteredAddResources() {\n return this.resources.filter(resource => resource.name.toLowerCase().includes(this.addResourceSearchQuery.toLowerCase()));\n },\n filteredChecklistItems() {\n const query = this.searchQuery.toLowerCase();\n return this.checklistItems\n .map(item => ({\n ...item,\n checklist_items_list: item.checklist_items_list.filter(subItem =>\n subItem.name.toLowerCase().includes(query)\n ),\n }))\n .filter(item => item.checklist_items_list.length > 0);\n },\n checkedItemsCount() {\n return this.checklistItems.filter(item => item.checklist_items_list.length > 0).map(item =>\n item.checklist_items_list.filter(subItem => subItem.checked).length\n );\n },\n isActiveAccordionItem() {\n return (index, itemId) => this.activeAccordionItems.includes(index) || itemId === this.selectedObjective.id;\n },\n selectedCheckboxes() {\n this.selectedItems = this.checklistItems.flatMap(item =>\n item.checklist_items_list.filter(subItem => subItem.checked).map(subItem => ({\n label: `${item.title} > ${subItem.name}`,\n }))\n );\n return this.selectedItems;\n },\n hasNotes() {\n return (\n this.sessionState.notes !== '' &&\n this.sessionState.notes !== '

' &&\n this.sessionState.notes !== null\n\n )\n },\n hasPrivateNotes() {\n return (\n this.session.private_notes !== '' &&\n this.session.private_notes !== '

' &&\n this.session.private_notes !== null\n )\n },\n hasNotification() {\n return (\n this.sessionState.notification !== '' &&\n this.sessionState.notification !== '

' &&\n this.sessionState.notification !== null\n )\n },\n hasMedium() {\n return !_.isEmpty(this.sessionState.media[0]?.medium_url)\n },\n noGoal() {\n return this.goal == null\n },\n learnersOptions() {\n return Object.values(this.learners_options);\n },\n nextSteps(){\n return this.nextStepList\n },\n isNextStepLocked() {\n return this.next_step_data.locked;\n }\n },\n created(){\n this.getNextStepList()\n this.initialChecklistItems = _.cloneDeep(this.checklistItems);\n },\n methods: {\n isCommentIframeLink(comment) {\n return comment.commentLinks.map((url, index) => !!comment.iFrameUrls[index]);\n },\n formatDate(dateString) {\n if (!dateString) return '';\n \n return moment(dateString).format('M/D/YY h:mm A');\n },\n formatDueDateForAddEditNextStep(dateString) {\n if ([null, \"\"].includes(dateString)) {\n return \"\";\n }\n const dateObj = new Date(dateString.replace(/(\\d+)(st|nd|rd|th)/, '$1'));\n const year = dateObj.getFullYear();\n const month = String(dateObj.getMonth() + 1).padStart(2, '0');\n const day = String(dateObj.getDate()).padStart(2, '0');\n return `${year}-${month}-${day}`;\n },\n getNextStepList(){\n axios.get(`/go/${this.school_slug}/v2/next_steps?session_id=${this.session.id}`,)\n .then(response => {\n this.nextStepList = response.data\n })\n .catch(error => {\n const statusCode = error.response.status;\n })\n },\n getCommentsList(id) {\n axios.get(`/go/${this.school_slug}/comments?next_step_id=${id}`,)\n .then(async response => {\n const processedComments = await Promise.all(response.data.map(async comment => {\n const { commentUrls, iFrameUrls, commentLinks, webLinkData } = await this.commentLinkedUrls(comment.resource_center.linked_urls);\n\n return {\n ...comment,\n linkedUrls: commentUrls,\n iFrameUrls: iFrameUrls,\n commentLinks: commentLinks,\n webLinkData: webLinkData\n };\n }));\n this.commentsList = processedComments;\n })\n .catch(error => {\n const statusCode = error.response.status;\n })\n },\n selectAllOwners() {\n if (this.selectAllOwnersChecked) {\n this.nextStep.nextStepOwner = this.learnersOptions\n } else {\n this.nextStep.nextStepOwner = null\n }\n },\n changeAllOwnersCheckbox() {\n this.selectAllOwnersChecked = this.nextStep.nextStepOwner.length === this.learnersOptions.length;\n },\n initializeSessionEdits(session) {\n return {\n scheduled_at: session.scheduled_at,\n assessment_name: session.assessment_name,\n objectives: _.filter(this.objectives_options, option =>\n _.includes(session.objective_ids, option.value.toString())\n ),\n staff: _.filter(session.assignable_staff_as_option, option =>\n _.includes(session.staff_ids, option.value)\n ),\n assignable_staff_as_option: session.assignable_staff_as_option,\n errors: {},\n }\n },\n publishSession() {\n window.location.pathname = `/go/${this.school_slug}/individual_sessions/${\n this.session.id\n }/notification/new`\n },\n saveAndExit() {\n window.location.pathname = `go/${this.school_slug}/v2/dashboard`\n },\n togglePublishMenu() {\n this.menuHidden = !this.menuHidden;\n },\n handleClick(event) {\n if($(event.target).hasClass('tags-dropdown-button')) {\n this.tagsDropdownMenuHidden = !this.tagsDropdownMenuHidden;\n } else if($(event.target).closest('.mobile-session-tags .dropdown-menu').length > 0) {\n this.tagsDropdownMenuHidden = false;\n } else {\n this.tagsDropdownMenuHidden = true;\n }\n },\n scoreAllParams() {\n return {\n recipients: 'All Objectives',\n subject: this.sessionState.assessee.full_name,\n scores: this.sessionState.mastery_scores,\n subject_id: this.sessionState.assessee.id,\n }\n },\n applyAutoHeightStyle() {\n $('head').append('');\n },\n toggleNotificationDraft() {\n this.showSessionNotification = !this.showSessionNotification\n this.applyAutoHeightStyle()\n },\n toggleSessionNote() {\n this.showSessionNote = !this.showSessionNote\n this.showSessionMedium = false\n this.applyAutoHeightStyle()\n\n if (!this.showSessionNote && this.$rewriteNotesPopup.is(\":visible\")) {\n this.$rewriteNotesPopup.fadeOut();\n }\n },\n togglePrivateNote() {\n this.showPrivateNote = !this.showPrivateNote\n this.showSessionMedium = false\n this.applyAutoHeightStyle()\n\n if (!this.showPrivateNote && this.$rewriteNotesPopup.is(\":visible\")) {\n this.$rewriteNotesPopup.fadeOut();\n }\n },\n toggleHistoricalSessionNotes() {\n this.$refs.historicalSessionNotes.toggleVisible()\n },\n toggleSessionMedium() {\n this.showSessionMedium = !this.showSessionMedium\n this.showSessionNote = false\n this.showPrivateNote = false\n\n if (this.$rewriteNotesPopup.is(\":visible\")) {\n this.$rewriteNotesPopup.fadeOut();\n }\n },\n toggleScoreAllPanel() {\n this.$refs.scoreAllPanel.toggleVisible()\n },\n openObjectiveDetailsModal(objective) {\n this.selectedObjective = objective\n this.$refs.objectiveDetailsPanel.toggleVisible()\n this.objectiveResources = objective.learning_resources_list;\n },\n openCheckListItemsModal(objective) {\n this.selectedObjective = objective\n this.$refs.checkListPanel.toggleVisible()\n document.querySelector('.check-list-footer')?.classList.add('fixed-footer')\n },\n openObjectiveNoteNodal(objective) {\n this.selectedObjective = objective\n this.objectiveNote = this.findOrInitializeObjectiveNote()\n this.notesWysiwygToggleKey += 1\n this.$refs.objectiveNotePanel.toggleVisible()\n this.applyAutoHeightStyle()\n },\n findOrInitializeObjectiveNote() {\n let note = ''\n const { mastery_scores } = this.sessionState\n const score = _.find(mastery_scores, {\n mastery_objective_id: this.selectedObjective.id,\n })\n if (score && score.notes) {\n note = score.notes\n }\n return note\n },\n updateObjectiveNote(input) {\n this.objectiveNote = input.target.value\n },\n onPressCloseObjectiveNote() {\n this.$refs.objectiveNotePanel.toggleVisible()\n },\n onPressCancelNextStep() {\n this.$refs.addNextStepPanel.toggleVisible()\n },\n async generateIframeLink(url) {\n const youtubeRegex = /(?:youtube\\.com\\/(?:[^\\/\\n\\s]+\\/\\S+\\/|(?:v|e(?:mbed)?)\\/|.*[?&]v=)|youtu\\.be\\/)([^&\\n?#]+)/;\n const loomRegex = /loom\\.com\\/share\\/([^&\\n?#]+)/;\n const vimeoRegex = /vimeo\\.com\\/(.*\\/)?([^#?]*)/;\n const microsoftRegex = /web.microsoftstream.com\\/video\\/([^&\\n?#]+)/;\n const tiktokRegex = /tiktok\\.com\\/(?:@[^\\/]+\\/video\\/|v\\/)([^&\\n?#]+)/;\n \n const youtubeMatch = url.match(youtubeRegex);\n const loomMatch = url.match(loomRegex);\n const vimeoMatch = url.match(vimeoRegex);\n const microsoftMatch = url.match(microsoftRegex);\n const tiktokMatch = url.match(tiktokRegex);\n let videoDetail;\n\n if (youtubeMatch && youtubeMatch[1]) {\n videoDetail = await this.getVideoDetails(url, 'youtube');\n return { embedUrl: 'https://www.youtube.com/embed/' + youtubeMatch[1], thumbnail_path: videoDetail.thumbnail_path };\n } else if (loomMatch && loomMatch[1]) {\n videoDetail = await this.getVideoDetails(url, 'loom');\n return { embedUrl: 'https://www.loom.com/embed/' + loomMatch[1], thumbnail_path: videoDetail.thumbnail_path };\n } else if (vimeoMatch && vimeoMatch[2]) {\n videoDetail = await this.getVideoDetails(url, 'vimeo');\n return { embedUrl: 'https://player.vimeo.com/video/' + videoDetail.videoId, thumbnail_path: videoDetail.thumbnail_path };\n } else if (microsoftMatch && microsoftMatch[1]) {\n videoDetail = await this.getVideoDetails(url, 'microsoft');\n return { embedUrl: 'https://web.microsoftstream.com/embed/video/' + microsoftMatch[1], thumbnail_path: videoDetail.thumbnail_path };\n } else if (tiktokMatch && tiktokMatch[1]) {\n videoDetail = await this.getVideoDetails(url, 'tiktok');\n return { embedUrl: 'https://www.tiktok.com/embed/v2/' + tiktokMatch[1], thumbnail_path: videoDetail.thumbnail_path };\n } else {\n let urlMetadata = await this.fetchUrlMetadata(url);\n return { embedUrl: null, platform: null, image: urlMetadata?.image, thumbnail_path: urlMetadata?.image, isWebLink: true };\n }\n },\n async fetchUrlMetadata(url) {\n return new Promise((resolve, reject) => {\n $.ajax({\n url: `/fetch_url_metadata`,\n method: 'GET',\n data: { url: url },\n success: function(data) {\n resolve(data);\n },\n error: function(jqXHR, textStatus, errorThrown) {\n console.error(\"Error fetching metadata:\", textStatus, errorThrown);\n reject(errorThrown);\n }\n });\n });\n },\n async getVideoDetails(videoUrl, platform) {\n let oembedUrl = \"\"\n if (platform === 'youtube') {\n const videoId = videoUrl.match(/embed\\/([^?&]+)/)?.[1];\n return {\n videoId: videoId,\n thumbnail_path: null\n };\n }\n\n if (platform === 'loom') {\n oembedUrl = `https://www.loom.com/v1/oembed?url=${videoUrl}`;\n } else if (platform === 'vimeo') {\n oembedUrl = `https://vimeo.com/api/oembed.json?url=${videoUrl}`;\n } else if (platform === 'microsoft') {\n oembedUrl = `https://web.microsoftstream.com/oembed?url=${videoUrl}`;\n } else if (platform === 'tiktok') {\n oembedUrl = `https://www.tiktok.com/oembed?url=${videoUrl}`;\n }\n\n try {\n let response = await fetch(oembedUrl);\n let data = await response.json();\n \n return { \n videoId: data.video_id || videoUrl.match(/embed\\/([^?&]+)/)?.[1], \n thumbnail_path: data.thumbnail_url \n };\n } catch (error) {\n console.error(\"Error fetching video metadata:\", error);\n return null;\n }\n },\n async openSingleResourcePanel(resource) {\n this.singleResourceDataForObjective = resource;\n this.showSingleResourcePanel = true;\n this.$refs.singleResourcePanel.toggleVisible();\n\n if (resource.linked_url) {\n const iframeLinkUrl = await this.generateIframeLink(resource.linked_url);\n this.isIframeLinkCheck = !!iframeLinkUrl?.embedUrl;\n this.iframeLinkUrl = iframeLinkUrl?.embedUrl || '';\n \n this.singleResourceDataForObjective = {\n ...resource,\n isIframe: this.isIframeLinkCheck,\n isWebLink: !!iframeLinkUrl?.isWebLink,\n linked_url: iframeLinkUrl?.embedUrl || resource.linked_url,\n thumbnail_path: iframeLinkUrl?.thumbnail_path || resource.thumbnail_path\n };\n }\n },\n triggerFileUpload() {\n if(this.progress === '100%') {\n this.$refs.uploadMedia.click();\n } else {\n alert(\"Wait until file is uploading!\")\n }\n },\n initializeFileUpload() {\n $(this.$refs.uploadMedia).fileupload({\n replaceFileInput: false,\n add: (e, data) => {\n this.fetching = true;\n this.fileName = data.files[0].name;\n this.progressClass = 'fetching';\n this.mediumUrl = false;\n this.error = null;\n const options = { filename: data.files[0].name, _: Date.now() };\n $.getJSON('/resources/cache/presign', options, (result) => {\n data.formData = result.fields;\n data.url = result.url;\n data.paramName = 'file';\n data.submit();\n });\n },\n progress: (e, data) => {\n this.progress = `${parseInt((data.loaded / data.total) * 100, 10)}%`;\n },\n done: (e, data) => {\n this.progressClass = 'saving';\n const mediumData = {\n id: data.formData.key.match(/cache\\/(.+)/)[1],\n storage: 'cache',\n metadata: {\n size: data.files[0].size,\n filename: data.files[0].name.match(/[^\\/\\\\]+$/)[0],\n mime_type: data.files[0].type,\n },\n medium: data.files[0],\n _destroy: false,\n };\n this.mediumDataCollection.push(mediumData);\n },\n fail: (e, data) => {\n this.fetching = false;\n this.progress = '0%';\n this.progressClass = 'error';\n this.mediumUrl = this.medium ? this.medium.medium_url : false;\n this.error = data.response().errorThrown;\n },\n });\n },\n handleFileUpload(event) {\n this.initializeFileUpload()\n const files = event.target.files;\n for (let file of files) {\n const mediaUrl = URL.createObjectURL(file);\n this.nextStep.uploadedMedia.push({ file, mediaUrl });\n }\n },\n handleCommentFileUpload(event) {\n this.initializeFileUpload()\n const files = event.target.files;\n for (let file of files) {\n const mediaUrl = URL.createObjectURL(file);\n this.comment.uploadedMedia.push({ file, mediaUrl });\n }\n },\n removeMedia(index, media, type) {\n if (type === \"add\") {\n this.nextStep.uploadedMedia.splice(index, 1);\n const itemIndex = this.mediumDataCollection.findIndex(\n (item) => item.medium.name === media.file.name\n );\n if (itemIndex !== -1) {\n this.mediumDataCollection.splice(itemIndex, 1);\n }\n } else {\n this.nextStep.uploadedMedia.splice(index, 1);\n const itemIndex = this.mediumDataCollection.findIndex(\n (item) => item.metadata.filename === media.file.name\n );\n if (itemIndex !== -1) {\n this.mediumDataCollection[itemIndex]._destroy = true;\n }\n }\n this.progress = \"100%\";\n this.fetching = true;\n },\n removeCommentMedia(index, media) {\n this.comment.uploadedMedia.splice(index, 1);\n const itemIndex = this.mediumDataCollection.findIndex(\n (item) => item.medium.name === media.file.name\n );\n if (itemIndex !== -1) {\n this.mediumDataCollection.splice(itemIndex, 1);\n }\n\n this.progress = \"100%\";\n this.fetching = true;\n },\n closeResourceLinkDrawer() {\n this.showLinkInput = false;\n this.removeLink()\n },\n addLink() {\n if (this.linkInput) {\n this.generateIframeLink(this.linkInput)\n .then(iframeLinkUrl => {\n const newLink = {\n url: iframeLinkUrl?.embedUrl || this.linkInput,\n isIframe: !!iframeLinkUrl?.embedUrl,\n isWebLink: !!iframeLinkUrl?.isWebLink,\n thumbnail_path: iframeLinkUrl?.thumbnail_path || null,\n _destroy: false,\n };\n \n this.nextStep.links.push(newLink);\n \n if (iframeLinkUrl?.embedUrl) {\n this.iframeLinkUrls.push(iframeLinkUrl.embedUrl);\n } else {\n this.iframeLinkUrls.push(null);\n }\n \n this.linkInput = '';\n this.showLinkInput = false;\n })\n .catch((error) => {\n console.error(\"Error generating iframe link:\", error);\n });\n }\n },\n async commentLinkedUrls(urls) {\n let commentUrls = []\n let iframeCommentLinkUrls = []\n let commentLinks = []\n let webLinkData = []\n \n for (const link of urls) {\n const url = link.url;\n commentUrls.push(url);\n \n const iframeLinkUrl = await this.generateIframeLink(url);\n if (iframeLinkUrl?.embedUrl) {\n iframeCommentLinkUrls.push(iframeLinkUrl.embedUrl);\n commentLinks.push({ \n url: iframeLinkUrl.embedUrl, \n isIframe: true,\n thumbnail_path: iframeLinkUrl.thumbnail_path || null \n });\n webLinkData.push(null);\n } else {\n iframeCommentLinkUrls.push(null);\n commentLinks.push({ \n url: url, \n isIframe: false,\n thumbnail_path: null \n });\n webLinkData.push({\n thumbnail_path: iframeLinkUrl?.thumbnail_path || iframeLinkUrl?.image\n });\n }\n }\n\n return { \n commentUrls, \n iFrameUrls: iframeCommentLinkUrls, \n commentLinks,\n webLinkData \n };\n },\n addCommentLink() {\n if (this.linkInput) {\n this.generateIframeLink(this.linkInput)\n .then(iframeLinkUrl => {\n const newLink = {\n url: iframeLinkUrl?.embedUrl || this.linkInput,\n isIframe: !!iframeLinkUrl?.embedUrl,\n isWebLink: !!iframeLinkUrl?.isWebLink,\n thumbnail_path: iframeLinkUrl?.thumbnail_path || iframeLinkUrl?.image || '',\n _destroy: false,\n };\n \n this.comment.links.push(newLink);\n this.linkInput = '';\n this.showLinkInput = false;\n });\n }\n },\n removeLink(index, type, linkId) {\n if (type === 'edit' && linkId) {\n const linkIndex = this.nextStep.links.findIndex(link => link.id === linkId);\n if (linkIndex !== -1) {\n this.$set(this.nextStep.links, linkIndex, {\n ...this.nextStep.links[linkIndex],\n _destroy: true,\n });\n }\n } else {\n this.nextStep.links.splice(index, 1);\n this.iframeLinkUrls.splice(index, 1);\n }\n },\n removeCommentLink(index) {\n this.comment.links.splice(index, 1);\n },\n openLinkDrawer() {\n this.linkInput = [];\n this.showLinkInput = true;\n this.iframeLinkUrl = '';\n },\n openResourceDrawer() {\n this.showResourceDrawer = true;\n this.fetchResources();\n },\n openCommentResourceDrawer() {\n this.showResourceDrawer = true;\n this.fetchCommentResources();\n },\n addSelectedResources() {\n this.showResourceDrawer = false;\n },\n fetchResources() {\n const filteredResourcesBySelectedReources = this.learning_resource.filter(resource =>\n !this.nextStep.selectedResources.some(selectedResId => selectedResId.id === resource.id)\n );\n this.resources = filteredResourcesBySelectedReources;\n },\n fetchCommentResources() {\n const filteredResourcesBySelectedReources = this.learning_resource.filter(resource =>\n !this.comment.selectedResources.some(selectedResId => selectedResId.id === resource.id)\n );\n this.resources = filteredResourcesBySelectedReources;\n },\n selectResource(resource) {\n if (!this.nextStep.selectedResources.includes(resource)) {\n this.nextStep.selectedResources.push(resource);\n }\n this.showResourceDrawer = false;\n },\n selectCommentResource(resource) {\n if (!this.comment.selectedResources.includes(resource)) {\n this.comment.selectedResources.push(resource);\n }\n this.showResourceDrawer = false;\n },\n removeSelectedResource(index) {\n this.nextStep.selectedResources.splice(index, 1);\n },\n removeCommentResource(index) {\n this.comment.selectedResources.splice(index, 1);\n },\n handleClickOnNextStepLock(nextStepType) {\n let childRef;\n let nextStep;\n\n if (nextStepType === \"addNextStepLocked\") {\n childRef = this.$refs.addNextStepLocked;\n nextStep = this.nextStep;\n } else if (nextStepType === \"editNextStepLocked\") {\n childRef = this.$refs.editNextStepLocked;\n nextStep = this.editedNextStep;\n }\n\n if (childRef && nextStep) {\n const inputElement = childRef.$refs.checkboxInput;\n nextStep.locked = !nextStep.locked;\n inputElement.checked = nextStep.locked;\n }\n },\n onPressSaveNextStep() {\n const formattedDueDate = this.formatDueDateForAddEditNextStep(this.nextStep.dueDate);\n const objectiveIds = this.nextStep.objective.map(obj => obj.value);\n const ownerIds = this.nextStep.nextStepOwner?.map(obj => obj.value);\n const resourceId = this.nextStep.selectedResources?.map(res => res.id);\n \n const formData = new FormData();\n formData.append('next_step[session_id]', this.sessionId);\n formData.append('next_step[assigned_by_id]', this.assignedById);\n formData.append('next_step[creation_location_type]', 'IndividualAssessment');\n formData.append('next_step[creation_location_id]', this.sessionId);\n formData.append('next_step[title]', this.nextStep.title);\n formData.append('next_step[description]', this.nextStep.description);\n formData.append('next_step[locked]', this.nextStep.locked);\n this.nextStep.links.forEach((link, index) => {\n formData.append(`next_step[linked_urls_attributes][${index}][id]`, '');\n formData.append(`next_step[linked_urls_attributes][${index}][url]`, link.url);\n formData.append(`next_step[linked_urls_attributes][${index}][thumbnail_path]`, link.thumbnail_path || '');\n formData.append(`next_step[linked_urls_attributes][${index}][_destroy]`, false);\n });\n \n if (resourceId) {\n resourceId.forEach(id => {\n formData.append('search[]', id);\n formData.append('next_step[learning_resource_ids][]', id);\n });\n }\n \n for (let i = 0; i < this.mediumDataCollection.length; i++) {\n const uploadedFile = this.mediumDataCollection[i];\n const fileId = `${Date.now()}${i}`;\n \n formData.append(`next_step[media_attributes][${fileId}][id]`, '');\n formData.append(`next_step[media_attributes][${fileId}][medium]`, uploadedFile.medium);\n formData.append(`next_step[media_attributes][${fileId}][medium_data]`, JSON.stringify({\n id: uploadedFile.id,\n storage: 'cache',\n metadata: uploadedFile.metadata\n }));\n formData.append(`next_step[media_attributes][${fileId}][_destroy]`, false);\n }\n \n if (ownerIds) {\n ownerIds.forEach(id => {\n formData.append('next_step[owner_ids][]', id);\n });\n }\n \n formData.append('next_step[due_date]', formattedDueDate);\n \n if (objectiveIds) {\n objectiveIds.forEach(id => {\n formData.append('next_step[objective_ids][]', id);\n });\n }\n \n axios.post(`/go/${this.school_slug}/v2/next_steps`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data'\n }\n })\n .then(response => {\n this.getNextStepList();\n this.onPressCancelNextStep();\n this.clearData();\n this.selectAllOwnersChecked = false;\n })\n .catch(error => {\n const statusCode = error.response.status;\n });\n },\n onPressSaveComment() {\n const resourceId = this.comment.selectedResources?.map(res => res.id);\n const notificationIds = this.comment.notificationIds?.map(n => n.id);\n\n const formData = new FormData();\n formData.append('comment[body]', this.comment.body);\n formData.append('comment[commentable_id]', this.singleNextStep.id);\n formData.append('comment[commentable_type]', \"NextStep\");\n\n if (notificationIds.length) {\n formData.append('comment[notification_ids][]', notificationIds);\n }\n\n this.comment.links.forEach((link, index) => {\n formData.append(`comment[linked_urls_attributes][${index}][id]`, '');\n formData.append(`comment[linked_urls_attributes][${index}][url]`, link.url);\n formData.append(`comment[linked_urls_attributes][${index}][thumbnail_path]`, link.thumbnail_path || '');\n formData.append(`comment[linked_urls_attributes][${index}][_destroy]`, false);\n });\n \n if (resourceId) {\n resourceId.forEach(id => {\n formData.append('search[]', id);\n formData.append('comment[learning_resource_ids][]', id);\n });\n }\n \n for (let i = 0; i < this.mediumDataCollection.length; i++) {\n const uploadedFile = this.mediumDataCollection[i];\n const fileId = `${Date.now()}${i}`;\n \n formData.append(`comment[media_attributes][${fileId}][id]`, '');\n formData.append(`comment[media_attributes][${fileId}][medium]`, uploadedFile.medium);\n formData.append(`comment[media_attributes][${fileId}][medium_data]`, JSON.stringify({\n id: uploadedFile.id,\n storage: 'cache',\n metadata: uploadedFile.metadata\n }));\n formData.append(`comment[media_attributes][${fileId}][_destroy]`, false);\n }\n \n axios.post(`/go/${this.school_slug}/comments`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data'\n }\n })\n .then(async response => {\n const processedComments = await Promise.all(response.data.map(async comment => {\n const { commentUrls, iFrameUrls, commentLinks, webLinkData } = await this.commentLinkedUrls(comment.resource_center.linked_urls);\n return {\n ...comment,\n linkedUrls: commentUrls,\n iFrameUrls: iFrameUrls,\n commentLinks: commentLinks,\n webLinkData: webLinkData\n };\n }));\n this.commentsList = processedComments;\n this.clearData();\n })\n .catch(error => {\n const statusCode = error.response.status;\n });\n },\n confirmDeletion(commentId) {\n if (window.confirm('Are you sure you want to delete this comment?')) {\n this.deleteComment(commentId);\n }\n },\n deleteComment(id) {\n axios.delete(`/go/${this.school_slug}/comments/${id}`)\n .then(async response => {\n const processedComments = await Promise.all(response.data.map(async comment => {\n const { commentUrls, iFrameUrls, commentLinks, webLinkData } = await this.commentLinkedUrls(comment.resource_center.linked_urls);\n return {\n ...comment,\n linkedUrls: commentUrls,\n iFrameUrls: iFrameUrls,\n commentLinks: commentLinks,\n webLinkData: webLinkData\n };\n }));\n this.commentsList = processedComments;\n this.clearData();\n })\n .catch(error => {\n const statusCode = error.response.status;\n });\n },\n onPressUpdateNextStep(id) {\n const formattedDueDate = this.formatDueDateForAddEditNextStep(\n this.editedNextStep.dueDate\n );\n const objectiveIds = this.editedNextStep.objectives.map(\n (obj) => obj.value\n );\n const resourceId = this.nextStep.selectedResources?.map((res) => res.id);\n let mediaAttributes = {};\n\n for (let i = 0; i < this.mediumDataCollection.length; i++) {\n const uploadedFile = this.mediumDataCollection[i];\n const fileId = `${Date.now()}${i}`;\n\n mediaAttributes[fileId] = {\n id: uploadedFile?.ids ? uploadedFile?.ids : \"\",\n medium: uploadedFile.medium,\n medium_data: {\n id: uploadedFile.id,\n storage: \"cache\",\n metadata: uploadedFile.metadata,\n },\n _destroy: !!uploadedFile._destroy,\n };\n }\n\n const linksAttributes = this.nextStep.links.map((link, index) => {\n return {\n id: link.id || '',\n url: link.url,\n thumbnail_path: link.thumbnail_path || '',\n _destroy: link._destroy || false,\n };\n });\n\n const data = {\n next_step: {\n title: this.editedNextStep.title,\n description: this.editedNextStep.description,\n due_date: formattedDueDate,\n owner_id: this.editedNextStep.nextStepOwner.value,\n objective_ids: objectiveIds,\n linked_urls_attributes: linksAttributes,\n learning_resource_ids: resourceId,\n media_attributes: mediaAttributes,\n locked: this.editedNextStep.locked\n },\n };\n\n axios\n .patch(\n `/go/${this.school_slug}/v2/next_steps/${this.editedNextStep.id}`,\n data,\n {\n headers: {\n \"Content-Type\": \"application/json\",\n },\n }\n )\n .then((response) => {\n this.getNextStepList();\n this.$refs.singleNextStepEditPanel.toggleVisible();\n this.clearData();\n })\n .catch((error) => {\n const statusCode = error.response.status;\n });\n },\n onPressDeleteNextStep(id) {\n this.toBeDeletedNextStep.id = id;\n this.$refs.singleNextStepEditPanel.toggleVisible();\n this.$refs.modalBackdrop.toggleVisible();\n this.$refs.deleteNextStep.toggleVisible();\n },\n onPressCancelDeleteNextStep() {\n this.clearData();\n this.$refs.deleteNextStep.toggleVisible();\n this.$refs.modalBackdrop.toggleVisible();\n },\n onPressConfirmDeleteNextStep() {\n axios\n .delete(`/go/${this.school_slug}/v2/next_steps/${this.toBeDeletedNextStep.id}`)\n .then(response => {\n this.getNextStepList();\n this.$refs.deleteNextStep.toggleVisible();\n this.clearData();\n this.$refs.modalBackdrop.toggleVisible();\n })\n .catch(error => {\n const statusCode = error.response.status;\n });\n },\n clearData(){\n this.nextStep = {\n title:'',\n description:'',\n dueDate:'',\n nextStepOwner:null,\n objective:[],\n media: null,\n links: [],\n mediaUrl: '',\n uploadedMedia: [],\n selectedResources: [],\n locked: this.next_step_data.locked\n }\n this.comment = {\n body: '',\n notificationIds: [],\n media: null,\n links: [],\n mediaUrl: '',\n uploadedMedia: [],\n selectedResources: [],\n }\n this.editedNextStep = {\n id: 0,\n title: '',\n description: '',\n dueDate: '',\n nextStepOwner: [],\n objectives: [],\n locked: false\n }\n this.toBeDeletedNextStep = {\n id: 0\n }\n this.mediumDataCollection = []\n },\n saveObjectiveNote() {\n this.toggleNotesSaving('objective');\n const note = {\n mastery_objective_id: this.selectedObjective.id,\n notes: this.objectiveNote,\n }\n axios\n .patch(\n `/go/${this.school_slug}/v2/individual_sessions/${\n this.session.id\n }/make_score_note`,\n {\n note,\n }\n )\n .then(response => {\n const { score, assessee_recent_scores } = response.data\n this.sessionState.mastery_scores = this.updatedMasteryScores([score])\n this.sessionState.assessee_recent_scores = assessee_recent_scores\n this.toggleNotesSaving();\n })\n .catch(error => {\n console.error(error)\n\n alert(\"Failed to save note\");\n })\n },\n getScore(objective) {\n return _.find(this.sessionState.mastery_scores, {\n mastery_objective_id: objective.id,\n })\n },\n getScoreParams(objective, score) {\n return {\n mastery_score: {\n mastery_objective_id: objective.id,\n score,\n },\n }\n },\n updateScores(scores) {\n axios\n .patch(\n `/go/${this.school_slug}/v2/individual_sessions/${\n this.session.id\n }/score`,\n {\n scores,\n }\n )\n .then(response => {\n const { mastery_scores, assessee_recent_scores } = response.data\n this.sessionState.mastery_scores = this.updatedMasteryScores(\n mastery_scores\n )\n this.sessionState.assessee_recent_scores = assessee_recent_scores\n })\n .catch(error => {\n console.error(error)\n\n const statusCode = error.response.status;\n if (statusCode == 401 || statusCode == 404) { document.location.reload(); }\n })\n },\n onPressSaveAllScores(score) {\n const scores = _.map(this.sessionState.objectives, objective =>\n this.getScoreParams(objective, score)\n )\n this.updateScores(scores)\n this.$refs.scoreAllPanel.toggleVisible()\n },\n updateScore(objective, score) {\n const scores = [this.getScoreParams(objective, score)]\n this.updateScores(scores)\n },\n updatedMasteryScores(newMasteryScores) {\n return _.unionWith(\n newMasteryScores,\n this.sessionState.mastery_scores,\n (a, b) => {\n return (\n a.student_id === b.student_id &&\n a.mastery_objective_id === b.mastery_objective_id\n )\n }\n )\n },\n onPressCloseSessionNote() {\n this.toggleSessionNote()\n },\n onPressClosePrivateNote() {\n this.togglePrivateNote()\n },\n saveSessionNoteNotification(onSuccess=_.noop) {\n axios\n .patch(\n `/go/${this.school_slug}/v2/individual_sessions/${\n this.session.id\n }/update_notes`,\n {\n notes: this.sessionNote,\n private_notes: this.privateNote,\n notification: this.sessionNotification\n }\n )\n .then(response => {\n this.sessionState.notes = this.sessionNote\n this.sessionState.private_notes = this.privateNote\n this.sessionState.notification = this.sessionNotification\n this.toggleNotesSaving();\n onSuccess()\n })\n .catch(error => {\n console.error(error)\n\n alert(\"Failed to save note\");\n })\n },\n toggleNotesSaving(type = null) {\n const toggle = (key) => {\n if (this[key]) {\n setTimeout(() => (this[key] = false), 500);\n } else {\n this[key] = true;\n }\n };\n\n if (type === 'session' || this.notesSaving) toggle('notesSaving');\n if (type === 'private' || this.privateNotesSaving) toggle('privateNotesSaving');\n if (type === 'objective' || this.objectiveNotesSaving) toggle('objectiveNotesSaving');\n },\n saveNotes(type) {\n this.toggleNotesSaving(type);\n this.saveSessionNoteNotification()\n },\n saveSessionNotification() {\n this.saveSessionNoteNotification(this.toggleNotificationDraft)\n },\n cancelNotification() {\n this.sessionNotification = this.sessionState.notification\n this.toggleNotificationDraft()\n },\n openSessionEditPanel() {\n this.$refs.sessionEditPanel.toggleVisible()\n },\n openNextStepAddPanel() {\n $('#next-step-due-date').find('input').val('');\n this.$refs.addNextStepPanel.toggleVisible();\n this.clearData();\n },\n openNextStepAddComment() {\n this.$refs.addNextStepComment.toggleVisible();\n this.initializeFileUpload();\n this.clearData();\n },\n toggleElementsUponNextStepCompletion(isCompleted) {\n let el = $('#show-single-next-step');\n if (isCompleted) {\n el.find('.edit-pencil-icon').hide();\n el.find('.completion-data').show();\n }\n else {\n this.singleNextStep.completed = false;\n el.find('.edit-pencil-icon').show();\n el.find('.completion-data').hide();\n }\n },\n showSingleNextStep(id) {\n this.fetchSingleNextStep(id);\n this.getCommentsList(id);\n this.toggleElementsUponNextStepCompletion(this.singleNextStep.completed);\n this.$refs.showSingleNextStep.toggleVisible()\n },\n showCompletedNextStepHistory(render_location_id, render_location) {\n this.fetchCompletedNextStepHistory(render_location_id, render_location);\n this.$refs.completedNextStepPanel.toggleVisible()\n },\n fetchCompletedNextStepHistory(render_location_id, render_location){\n axios.get(`/go/${this.school_slug}/v2/next_steps/completed_next_steps_history?render_location_id=${render_location_id}&render_location=${render_location}`)\n .then(response => {\n this.completedNextSteps = response.data\n })\n .catch(error => {\n const statusCode = error.response.status;\n })\n },\n fetchSingleNextStep(id) {\n axios.get(`/go/${this.school_slug}/v2/next_steps/${id}`)\n .then(async (response) => {\n this.singleNextStep = response.data;\n this.singleNextStep.created_at = this.formatDate(this.singleNextStep.created_at);\n this.singleNextStep.assginedByName = this.singleNextStep.assigned_by.name;\n this.singleNextStep.ownerName = this.singleNextStep.owner.name;\n this.singleNextStep.objectiveName = this.singleNextStep.objective_names.join(', ');\n this.singleNextStep.canBeEditedOrDeletedByCurrentStaff = response.data.can_be_edited_or_deleted_by_current_staff;\n this.singleNextStep.canBeCompletedByCurrentStaff = response.data.can_be_completed_by_current_staff;\n this.nextStepResources = response.data.resource_center.learning_resources;\n this.mediaUrl = response.data.resource_center.media;\n \n this.linkedUrls = [];\n this.iframeLinkUrls = [];\n this.nextStep.links = [];\n \n const promises = response.data.resource_center.linked_urls.map((linkData) => {\n return this.generateIframeLink(linkData.url).then((iframeLinkUrl) => {\n const newLink = {\n url: iframeLinkUrl?.embedUrl || linkData.url,\n isIframe: !!iframeLinkUrl?.embedUrl,\n isWebLink: !!iframeLinkUrl?.isWebLink,\n thumbnail_path: iframeLinkUrl?.thumbnail_path || null\n };\n this.nextStep.links.push(newLink);\n \n if (iframeLinkUrl?.embedUrl) {\n this.iframeLinkUrls.push(iframeLinkUrl.embedUrl);\n this.linkedUrls.push(iframeLinkUrl.embedUrl);\n } else {\n this.iframeLinkUrls.push('');\n this.linkedUrls.push(linkData.url);\n }\n });\n });\n \n await Promise.all(promises);\n })\n .catch(error => {\n const statusCode = error.response.status;\n });\n },\n truncateText(text, length) {\n return text.length > length ? text.substring(0, length) + '...' : text;\n },\n openSingleNextStepEditPanel(id) {\n this.initializeSingleNextStepEdit(id)\n this.$refs.showSingleNextStep.toggleVisible()\n this.$refs.singleNextStepEditPanel.toggleVisible()\n },\n initializeSingleNextStepEdit(id) {\n axios.get(`/go/${this.school_slug}/v2/next_steps/${id}/edit`)\n .then(response => {\n let nextStepData = response.data;\n this.editedNextStep.id = nextStepData.id;\n this.editedNextStep.title = nextStepData.title;\n this.editedNextStep.description = nextStepData.description;\n this.editedNextStep.dueDate = nextStepData.due_date;\n this.editedNextStep.locked = nextStepData.locked;\n this.editedNextStep.canBeEditedOrDeletedByCurrentStaff = nextStepData.can_be_edited_or_deleted_by_current_staff;\n this.$refs.singleNextStepEditPanelDueDate.value =\n nextStepData.due_date;\n this.editedNextStep.nextStepOwner = _.filter(\n this.learners_options,\n (option) =>\n _.includes(\n [nextStepData.owner_id.toString()],\n option.value.toString()\n )\n );\n this.editedNextStep.objectives = _.filter(\n this.objectives_options,\n (option) =>\n _.includes(nextStepData.objective_ids, option.value.toString())\n );\n this.nextStep.selectedResources = [];\n this.nextStep.selectedResources.push(\n ...response.data.resource_center.learning_resources\n );\n\n const previousMediaData = response.data.resource_center.media.map(\n (item) => ({\n id: item.medium_data.id,\n storage: item.medium_data.storage,\n metadata: item.medium_data.metadata,\n medium: {},\n _destroy: false,\n ids: item.id,\n })\n );\n\n this.mediumDataCollection = [...previousMediaData];\n\n this.nextStep.uploadedMedia = [];\n for (let item of response.data.resource_center.media) {\n const file = new File(\n [item.medium_data.metadata.filename],\n item.medium_data.metadata.filename,\n {\n type: item.mime_type,\n lastModified: new Date(item.updated_at).getTime(),\n }\n );\n\n const mediaUrl = item.medium_url;\n\n this.nextStep.uploadedMedia.push({ file, mediaUrl });\n }\n let mediaAttributes = {};\n\n for (let i = 0; i < response.data.resource_center.media.length; i++) {\n const uploadedFile = response.data.resource_center.media[i];\n const fileId = `${Date.now()}${i}`;\n\n mediaAttributes[fileId] = {\n id: \"\",\n medium: {},\n medium_data: uploadedFile.medium_data,\n _destroy: !!uploadedFile._destroy,\n };\n }\n\n this.linkedUrls = [];\n this.iframeLinkUrls = [];\n this.nextStep.links = [];\n\n response.data.resource_center.linked_urls.forEach((linkData) => {\n this.generateIframeLink(linkData.url)\n .then(iframeLinkUrl => {\n const newLink = {\n id: linkData.id || '',\n url: iframeLinkUrl?.embedUrl || linkData.url,\n isIframe: !!iframeLinkUrl?.embedUrl,\n isWebLink: !!iframeLinkUrl?.isWebLink,\n thumbnail_path: iframeLinkUrl?.thumbnail_path || null,\n _destroy: false,\n };\n this.nextStep.links.push(newLink);\n });\n });\n })\n .catch(error => {\n const statusCode = error.response.status;\n });\n },\n toggleNextStep(id, type){\n let element = $('.next-step-mark[data-id=\"' + id + '\"]');\n if (element) {\n element.css('opacity', '0.7');\n element.attr('disabled', 'disabled');\n }\n\n axios.post(`/go/${this.school_slug}/v2/next_steps/${id}/completion_toggle`,{\n headers: {\n 'Content-Type': 'application/json'\n },\n completion_location_type: 'IndividualAssessment',\n completion_location_id: this.session.id,\n completed_by_id: this.current_staff.id\n })\n .then(response => {\n this.fetchSingleNextStep(id);\n const index = this.nextStepList.findIndex(obj => obj.id === id);\n this.nextStepList[index] = { ...this.nextStepList[index], completed: response.data.completed };\n\n element.css('opacity', '1');\n element.removeAttr('disabled');\n\n if (type === \"view\") {\n this.toggleElementsUponNextStepCompletion(response.data.completed);\n }\n\n this.getNextStepList();\n })\n .catch(error => {\n const statusCode = error.response.status;\n })\n },\n onPressCancelEditSession() {\n this.sessionEdits = this.initializeSessionEdits(this.sessionState)\n this.$refs.sessionEditPanel.toggleVisible()\n },\n onPressSaveSession() {\n axios\n .patch(\n `/go/${this.school_slug}/v2/individual_sessions/${this.session.id}`,\n {\n individual_session: this.individualSessionParams(),\n }\n )\n .then(response => {\n const updatedSession = response.data\n this.sessionState = updatedSession\n this.sessionEdits = this.initializeSessionEdits(updatedSession)\n this.selectedObjective = {}\n this.$refs.sessionEditPanel.toggleVisible()\n this.checklistItems = updatedSession.objectives\n this.initialChecklistItems = _.cloneDeep(this.sessionState.objectives)\n })\n .catch(error => {\n this.sessionEdits.errors = error.response.data\n })\n },\n onPressDeleteSession() {\n if (confirm('Are you sure you want to delete this session?')) {\n axios\n .delete(\n `/go/${this.school_slug}/v2/individual_sessions/${this.session.id}`\n )\n .then(response => {\n window.location = response.data;\n })\n .catch(err => {\n this.sessionEdits.errors = `Unable to delete session due to: ${err}`;\n })\n }\n },\n individualSessionParams() {\n const { assessment_name, scheduled_at } = this.sessionEdits\n return {\n assessment_name,\n scheduled_at,\n objective_ids: _.map(this.sessionEdits.objectives, o => o.value),\n staff_ids: _.map(this.sessionEdits.staff, o => o.value),\n }\n },\n saveMedium(medium_data, mediumId, successCallback, failureCallback) {\n axios\n .patch(\n `/go/${this.school_slug}/v2/individual_sessions/${\n this.session.id\n }/update_medium`,\n { medium_data, medium_id: mediumId }\n )\n .then(response => {\n const media = response.data\n this.sessionState.media = media\n const new_medium = media.slice(-2)[0]\n successCallback(\n new_medium.medium_url,\n new_medium.mime_type,\n new_medium.id\n )\n })\n .catch(error => {\n failureCallback(\"Couldn't Save Media\")\n })\n },\n deleteMedium(mediumId, onSaveMediumFailed) {\n axios\n .patch(\n `/go/${this.school_slug}/v2/individual_sessions/${\n this.session.id\n }/delete_medium`,\n { medium_id: mediumId }\n )\n .then(response => {\n const remaining_media = _.reject(this.sessionState.media, [\n 'id',\n mediumId,\n ])\n this.sessionState.media = remaining_media\n })\n .catch(error => {\n onSaveMediumFailed(\"Couldn't Delete Media\")\n })\n },\n openLearnerDetailsModal(objective) {\n this.selectedObjective = objective\n this.$refs.learnerDetailsPanel.toggleVisible()\n },\n recentScoresForSelectedObjective() {\n const { assessee_recent_scores } = this.sessionState\n return _.get(_.find(assessee_recent_scores, {\n mastery_objective_id: this.selectedObjective.id?.toString()\n }), 'recent_scores')\n },\n recentNotesForSelectedObjective() {\n const recent_scores = this.recentScoresForSelectedObjective()\n\n return _.reject(recent_scores, score => _.isEmpty(score.notes)).map(\n score => ({\n note: score.notes,\n session_name: score.source,\n formatted_date: score.formatted_date,\n staff: { full_name: score.staff_name },\n })\n )\n },\n setSessionTag(tagId) {\n axios\n .get(\n `/go/${this.school_slug}/tags/${tagId}/set_tag_for_individual_assessment/${this.session.id}`,\n )\n .then(response => {\n if (response.data.success) {\n this.sessionState.attached_tags = response.data.attached_tags;\n }\n });\n },\n toggleAccordionItem(index, selectedId,itemId) {\n if (this.selectedObjective && this.selectedObjective.id === selectedId && this.selectedObjective.id === itemId) {\n this.selectedObjective = {};\n this.activeAccordionItems.push(index);\n }\n\n const isOpen = this.activeAccordionItems.includes(index);\n \n if (isOpen) {\n this.activeAccordionItems = this.activeAccordionItems.filter(item => item !== index);\n } else {\n this.activeAccordionItems.push(index);\n }\n },\n getInitialSelectedItems() {\n return this.session.objectives.flatMap(item =>\n item.checklist_items_list.filter(subItem => subItem.checked)\n );\n },\n revertChecklistItemsToInitialState() {\n this.checklistItems.forEach(item => {\n const initialItem = _.find(this.initialChecklistItems, { id: item.id });\n item.checklist_items_list.forEach(subItem => {\n subItem.checked = _.find(initialItem.checklist_items_list, { name: subItem.name }).checked;\n });\n });\n },\n onPressSaveChecklist() {\n this.selectedItems = this.checklistItems.flatMap(item =>\n item.checklist_items_list.filter(subItem => subItem.checked)\n );\n \n this.$refs.checkListPanel.toggleVisible()\n this.activeAccordionItems = []\n this.removeFixedFooter()\n\n const formData = new FormData()\n formData.append('_method', 'patch')\n formData.append('individual_assessment[checklist_item_ids][]', \"\")\n this.selectedItems.forEach(item => {\n formData.append('individual_assessment[checklist_item_ids][]', item.id)\n });\n formData.append('commit', 'Save Checklist')\n \n axios.post(`/go/${this.school_slug}/individual_sessions/${this.sessionState.id}/update_checklist`, formData, {\n headers: { 'Content-Type': 'application/json' }\n })\n .then(response => {\n this.initialChecklistItems = _.cloneDeep(this.sessionState.objectives)\n this.searchQuery = ''\n })\n .catch(error => {\n const statusCode = error.response.status\n });\n },\n onPressCancelChecklist() {\n this.revertChecklistItemsToInitialState()\n this.$refs.checkListPanel.toggleVisible()\n this.activeAccordionItems = []\n this.removeFixedFooter()\n this.searchQuery = ''\n },\n removeFixedFooter() {\n const footerElement = document.querySelector('.check-list-footer');\n if (footerElement) {\n setTimeout(() => {\n footerElement.classList.remove('fixed-footer');\n }, 300);\n }\n },\n },\n mounted() {\n this.initializeFileUpload()\n this.mediumDataCollection = []\n this.linkedUrls = [];\n this.iframeLinkUrls = []\n this.nextStep.links = []\n this.progress = \"100%\"\n document.dispatchEvent(new Event('vue:load'))\n EventBus.$on('modal-opening', () => {\n this.modalOpen = true\n })\n EventBus.$on('modal-closing', () => {\n this.modalOpen = false\n })\n $(\"#delete-next-step>.x-close-icon-alt\").on('click', () => {\n this.$refs.modalBackdrop.toggleVisible();\n });\n $(\"#add-next-step-form label, #single-next-step-edit-form label\").on('click', (event) => {\n event.preventDefault();\n event.stopPropagation();\n });\n\n $(document).ready(function() {\n if($(\"#historical-session-notes-panel\").length > 0){\n $('head').append('');\n }\n });\n\n this.$rewriteNotesPopup = $(\"#rewrite-notes-popup\");\n },\n})\n","var map = {\n\t\"./af\": 5177,\n\t\"./af.js\": 5177,\n\t\"./ar\": 1509,\n\t\"./ar-dz\": 1488,\n\t\"./ar-dz.js\": 1488,\n\t\"./ar-kw\": 8676,\n\t\"./ar-kw.js\": 8676,\n\t\"./ar-ly\": 2353,\n\t\"./ar-ly.js\": 2353,\n\t\"./ar-ma\": 4496,\n\t\"./ar-ma.js\": 4496,\n\t\"./ar-sa\": 2682,\n\t\"./ar-sa.js\": 2682,\n\t\"./ar-tn\": 9756,\n\t\"./ar-tn.js\": 9756,\n\t\"./ar.js\": 1509,\n\t\"./az\": 5533,\n\t\"./az.js\": 5533,\n\t\"./be\": 8959,\n\t\"./be.js\": 8959,\n\t\"./bg\": 7777,\n\t\"./bg.js\": 7777,\n\t\"./bm\": 4903,\n\t\"./bm.js\": 4903,\n\t\"./bn\": 1290,\n\t\"./bn-bd\": 7357,\n\t\"./bn-bd.js\": 7357,\n\t\"./bn.js\": 1290,\n\t\"./bo\": 1545,\n\t\"./bo.js\": 1545,\n\t\"./br\": 1470,\n\t\"./br.js\": 1470,\n\t\"./bs\": 4429,\n\t\"./bs.js\": 4429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 6464,\n\t\"./cs.js\": 6464,\n\t\"./cv\": 3635,\n\t\"./cv.js\": 3635,\n\t\"./cy\": 4226,\n\t\"./cy.js\": 4226,\n\t\"./da\": 3601,\n\t\"./da.js\": 3601,\n\t\"./de\": 7853,\n\t\"./de-at\": 6111,\n\t\"./de-at.js\": 6111,\n\t\"./de-ch\": 4697,\n\t\"./de-ch.js\": 4697,\n\t\"./de.js\": 7853,\n\t\"./dv\": 708,\n\t\"./dv.js\": 708,\n\t\"./el\": 4691,\n\t\"./el.js\": 4691,\n\t\"./en-au\": 3872,\n\t\"./en-au.js\": 3872,\n\t\"./en-ca\": 8298,\n\t\"./en-ca.js\": 8298,\n\t\"./en-gb\": 6195,\n\t\"./en-gb.js\": 6195,\n\t\"./en-ie\": 6584,\n\t\"./en-ie.js\": 6584,\n\t\"./en-il\": 5543,\n\t\"./en-il.js\": 5543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 9402,\n\t\"./en-nz.js\": 9402,\n\t\"./en-sg\": 3004,\n\t\"./en-sg.js\": 3004,\n\t\"./eo\": 2934,\n\t\"./eo.js\": 2934,\n\t\"./es\": 7650,\n\t\"./es-do\": 838,\n\t\"./es-do.js\": 838,\n\t\"./es-mx\": 7730,\n\t\"./es-mx.js\": 7730,\n\t\"./es-us\": 6575,\n\t\"./es-us.js\": 6575,\n\t\"./es.js\": 7650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 527,\n\t\"./fi.js\": 527,\n\t\"./fil\": 5995,\n\t\"./fil.js\": 5995,\n\t\"./fo\": 2477,\n\t\"./fo.js\": 2477,\n\t\"./fr\": 5498,\n\t\"./fr-ca\": 6435,\n\t\"./fr-ca.js\": 6435,\n\t\"./fr-ch\": 7892,\n\t\"./fr-ch.js\": 7892,\n\t\"./fr.js\": 5498,\n\t\"./fy\": 7071,\n\t\"./fy.js\": 7071,\n\t\"./ga\": 1734,\n\t\"./ga.js\": 1734,\n\t\"./gd\": 217,\n\t\"./gd.js\": 217,\n\t\"./gl\": 7329,\n\t\"./gl.js\": 7329,\n\t\"./gom-deva\": 2124,\n\t\"./gom-deva.js\": 2124,\n\t\"./gom-latn\": 3383,\n\t\"./gom-latn.js\": 3383,\n\t\"./gu\": 5050,\n\t\"./gu.js\": 5050,\n\t\"./he\": 1713,\n\t\"./he.js\": 1713,\n\t\"./hi\": 3861,\n\t\"./hi.js\": 3861,\n\t\"./hr\": 6308,\n\t\"./hr.js\": 6308,\n\t\"./hu\": 609,\n\t\"./hu.js\": 609,\n\t\"./hy-am\": 7160,\n\t\"./hy-am.js\": 7160,\n\t\"./id\": 4063,\n\t\"./id.js\": 4063,\n\t\"./is\": 9374,\n\t\"./is.js\": 9374,\n\t\"./it\": 8383,\n\t\"./it-ch\": 1827,\n\t\"./it-ch.js\": 1827,\n\t\"./it.js\": 8383,\n\t\"./ja\": 3827,\n\t\"./ja.js\": 3827,\n\t\"./jv\": 9722,\n\t\"./jv.js\": 9722,\n\t\"./ka\": 1794,\n\t\"./ka.js\": 1794,\n\t\"./kk\": 7088,\n\t\"./kk.js\": 7088,\n\t\"./km\": 6870,\n\t\"./km.js\": 6870,\n\t\"./kn\": 4451,\n\t\"./kn.js\": 4451,\n\t\"./ko\": 3164,\n\t\"./ko.js\": 3164,\n\t\"./ku\": 8174,\n\t\"./ku.js\": 8174,\n\t\"./ky\": 8474,\n\t\"./ky.js\": 8474,\n\t\"./lb\": 9680,\n\t\"./lb.js\": 9680,\n\t\"./lo\": 5867,\n\t\"./lo.js\": 5867,\n\t\"./lt\": 5766,\n\t\"./lt.js\": 5766,\n\t\"./lv\": 9532,\n\t\"./lv.js\": 9532,\n\t\"./me\": 8076,\n\t\"./me.js\": 8076,\n\t\"./mi\": 1848,\n\t\"./mi.js\": 1848,\n\t\"./mk\": 306,\n\t\"./mk.js\": 306,\n\t\"./ml\": 3739,\n\t\"./ml.js\": 3739,\n\t\"./mn\": 9053,\n\t\"./mn.js\": 9053,\n\t\"./mr\": 6169,\n\t\"./mr.js\": 6169,\n\t\"./ms\": 3386,\n\t\"./ms-my\": 2297,\n\t\"./ms-my.js\": 2297,\n\t\"./ms.js\": 3386,\n\t\"./mt\": 7075,\n\t\"./mt.js\": 7075,\n\t\"./my\": 2264,\n\t\"./my.js\": 2264,\n\t\"./nb\": 2274,\n\t\"./nb.js\": 2274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 2572,\n\t\"./nl-be\": 3784,\n\t\"./nl-be.js\": 3784,\n\t\"./nl.js\": 2572,\n\t\"./nn\": 4566,\n\t\"./nn.js\": 4566,\n\t\"./oc-lnc\": 9330,\n\t\"./oc-lnc.js\": 9330,\n\t\"./pa-in\": 9849,\n\t\"./pa-in.js\": 9849,\n\t\"./pl\": 4418,\n\t\"./pl.js\": 4418,\n\t\"./pt\": 9834,\n\t\"./pt-br\": 8303,\n\t\"./pt-br.js\": 8303,\n\t\"./pt.js\": 9834,\n\t\"./ro\": 4457,\n\t\"./ro.js\": 4457,\n\t\"./ru\": 2271,\n\t\"./ru.js\": 2271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 3478,\n\t\"./se.js\": 3478,\n\t\"./si\": 7538,\n\t\"./si.js\": 7538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 6637,\n\t\"./sl.js\": 6637,\n\t\"./sq\": 6794,\n\t\"./sq.js\": 6794,\n\t\"./sr\": 5719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 5719,\n\t\"./ss\": 6000,\n\t\"./ss.js\": 6000,\n\t\"./sv\": 1011,\n\t\"./sv.js\": 1011,\n\t\"./sw\": 748,\n\t\"./sw.js\": 748,\n\t\"./ta\": 1025,\n\t\"./ta.js\": 1025,\n\t\"./te\": 1885,\n\t\"./te.js\": 1885,\n\t\"./tet\": 8861,\n\t\"./tet.js\": 8861,\n\t\"./tg\": 6571,\n\t\"./tg.js\": 6571,\n\t\"./th\": 5802,\n\t\"./th.js\": 5802,\n\t\"./tk\": 9527,\n\t\"./tk.js\": 9527,\n\t\"./tl-ph\": 9231,\n\t\"./tl-ph.js\": 9231,\n\t\"./tlh\": 1052,\n\t\"./tlh.js\": 1052,\n\t\"./tr\": 5096,\n\t\"./tr.js\": 5096,\n\t\"./tzl\": 9846,\n\t\"./tzl.js\": 9846,\n\t\"./tzm\": 1765,\n\t\"./tzm-latn\": 7711,\n\t\"./tzm-latn.js\": 7711,\n\t\"./tzm.js\": 1765,\n\t\"./ug-cn\": 8414,\n\t\"./ug-cn.js\": 8414,\n\t\"./uk\": 6618,\n\t\"./uk.js\": 6618,\n\t\"./ur\": 158,\n\t\"./ur.js\": 158,\n\t\"./uz\": 7609,\n\t\"./uz-latn\": 2475,\n\t\"./uz-latn.js\": 2475,\n\t\"./uz.js\": 7609,\n\t\"./vi\": 1135,\n\t\"./vi.js\": 1135,\n\t\"./x-pseudo\": 4051,\n\t\"./x-pseudo.js\": 4051,\n\t\"./yo\": 2218,\n\t\"./yo.js\": 2218,\n\t\"./zh-cn\": 2648,\n\t\"./zh-cn.js\": 2648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 1541,\n\t\"./zh-mo.js\": 1541,\n\t\"./zh-tw\": 304,\n\t\"./zh-tw.js\": 304\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 5358;","\n module.exports = {\n render: function(){with(this){return _c('div',{staticClass:\"video-panel\"},[_c('div',{staticClass:\"session-video-form\"},[(mediumUrl && mimeType.startsWith('video'))?[_c('video-player',{attrs:{\"error_class\":progressClass,\"src\":mediumUrl}},[_c('source',{attrs:{\"src\":mediumUrl}})])]:_e(),(mediumUrl && mimeType.startsWith('image'))?_c('a',{attrs:{\"href\":mediumUrl,\"target\":\"_blank\"}},[_c('img',{attrs:{\"src\":mediumUrl,\"width\":\"90%\"}})]):_e(),(mediumUrl && mimeType.startsWith('application'))?_c('a',{attrs:{\"href\":mediumUrl,\"target\":\"_blank\"}},[_c('div',{staticClass:\"add-note-icon\"},[_v(\"Document\")])]):_e(),_c('div',{staticClass:\"track-actions three\"},[(error)?_c('div',{staticClass:\"error\"},[_v(_s(error))]):_e(),_c('input',{ref:\"fileDialog\",staticClass:\"file\",attrs:{\"id\":fileInputName,\"accept\":\"video/*,image/*,application/pdf,application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\"type\":\"file\"}}),(fetching)?[_c('div',{staticClass:\"progress-bar\",class:progressClass},[_c('div',{staticClass:\"indicator\",style:({width: progress})}),_c('div',{staticClass:\"text\"},[_v(_s(fileName)+\" \"+_s(progress))])])]:[_c('label',{staticClass:\"btn-upload lg\",attrs:{\"for\":fileInputName}},[_v(_s(mediumUrl ? \"Replace Media\" : \"Upload Media\"))]),(mediumUrl)?_c('div',{staticClass:\"btn-delete lg\",on:{\"click\":function($event){return delete_medium(mediumId, onSaveMediumFailed)}}},[_v(\"Delete Media\")]):_e(),_c('div',{staticClass:\"btn-cancel lg\",on:{\"click\":on_press_cancel_medium}},[_v(\"Close\")])]],2)],2)])}},\n staticRenderFns: []\n };\n ","\n module.exports = {\n render: function(){with(this){return _c('div',{attrs:{\"id\":\"next-step-completion-restriction\"}},[_c('div',{staticClass:\"restriction-info\"},[_c('div',{staticClass:\"title\"},[_c('div',{staticClass:\"title-tooltip\"},[_v(\"Restrict completion\"),_c('tooltip',{attrs:{\"message\":'Unlocked next steps can be marked as complete by anyone with access to the next step. Locked next steps can only be marked as complete by the creator.'}})],1)])]),_c('div',{staticClass:\"restriction-toggle\"},[_c('div',{staticClass:\"toggle-switch\"},[_c('span',[_v(\"Unlocked\")]),_c('input',{ref:\"checkboxInput\",staticClass:\"toggle-input\",attrs:{\"id\":inputId,\"type\":\"checkbox\"},domProps:{\"checked\":isLocked}}),_c('label',{staticClass:\"toggle-label\",attrs:{\"for\":inputId},on:{\"click\":handleClick}},[_c('span',{staticClass:\"toggle-ball\"})]),_c('span',[_v(\"Locked\")])])])])}},\n staticRenderFns: []\n };\n ","\n module.exports = {\n render: function(){with(this){return _c('div',{staticClass:\"score-card\"},[_c('div',{staticClass:\"card-upper\"},[_c('div',{staticClass:\"icons\"},[_c('div',{staticClass:\"tooltip-icon-last-mastery-scores\"},[_c('div',{staticClass:\"score-icon\",class:[`score-band-${score_band}-${lastScoreClass}`]}),(lastScoreClass !== 'no-score')?_c('div',{staticClass:\"tooltip-text\"},[_c('div',{staticClass:\"text-box\"},[_v(_s(past_objective_score.tooltip_text))]),_m(0)]):_e()]),(objective.checklist_items_list.length > 0)?_c('div',{staticClass:\"check-list-icon\",on:{\"click\":function($event){$event.stopPropagation();return open_checklist_items_modal.apply(null, arguments)}}},[_c('img',{attrs:{\"src\":getCheckedItemCount(objective) > 0 ? '/assets/checkbox-square-green.svg' : '/assets/checkbox-square-gray.svg'}}),(getCheckedItemCount(objective) > 0)?_c('span',{staticClass:\"check-list-icon-count\"},[_v(_s(getCheckedItemCount(objective)))]):_e()]):_e(),(!narrative_feedback)?_c('div',{staticClass:\"icon\",class:hasNotes ? 'add-note-icon' : 'add-note-icon-black',on:{\"click\":function($event){$event.stopPropagation();return open_objective_note_modal.apply(null, arguments)}}}):_e(),_c('i',{staticClass:\"fa fa-info-circle\",on:{\"click\":function($event){$event.stopPropagation();return open_objective_details_modal.apply(null, arguments)}}})]),_c('div',{staticClass:\"component\"},[_v(_s(objective.component_name))]),_c('div',{staticClass:\"objective-title\",on:{\"click\":open_learner_details_modal}},[_v(_s(objective.name))])]),_c('div',{staticClass:\"card-body\"},[(narrative_feedback)?_c('button',{staticClass:\"blue-button\",on:{\"click\":function($event){$event.stopPropagation();return open_objective_note_modal.apply(null, arguments)}}},[_c('div',{staticClass:\"add-note-icon-black icon\"}),_v(_s(hasNotes ? 'Edit' : 'Add')+\" Note\")]):_c('scoring-row',{attrs:{\"is_selected\":isSelected,\"score_band\":score_band,\"update_score\":on_press_score}})],1)])}},\n staticRenderFns: [function(){with(this){return _c('div',{staticClass:\"text-box-arrows\"},[_c('div',{staticClass:\"text-box-arrow-down\"})])}}]\n };\n ","\n module.exports = {\n render: function(){with(this){return _c('div',{attrs:{\"id\":\"score-card-panel\"}},[_c('div',{staticClass:\"section-nav\"},[_c('div',{staticClass:\"search-widget\"},[_c('div',{staticClass:\"search-bar\"},[_c('div',{staticClass:\"search-icon\"}),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(searchQuery),expression:\"searchQuery\"}],domProps:{\"value\":(searchQuery)},on:{\"input\":function($event){if($event.target.composing)return;searchQuery=$event.target.value}}})])])]),_c('div',{staticClass:\"score-card-panel\"},_l((filteredObjectives),function(objective){return _c('div',[_c('score-card',{attrs:{\"narrative_feedback\":narrative_feedback,\"objective\":objective,\"on_press_score\":function(score) { return on_score_objective(objective, score); },\"open_checklist_items_modal\":function() { return open_checklist_items_modal(objective); },\"open_learner_details_modal\":function() { return open_learner_details_modal(objective); },\"open_objective_details_modal\":function() { return open_objective_details_modal(objective); },\"open_objective_note_modal\":function() { return open_objective_note_modal(objective); },\"past_objective_score\":pastObjectiveScore(objective),\"score\":get_score(objective),\"score_band\":score_band}})],1)}),0)])}},\n staticRenderFns: []\n };\n "],"names":["EventBus","Vue","component","props","mixins","template","data","mediumId","this","medium","id","fileInputName","mimeType","mime_type","mediumUrl","medium_url","initialState","watch","newMedium","methods","url","fileName","fetching","progress","progressClass","error","onSaveMediumSuccess","medium_id","Object","assign","$data","onSaveMediumFailed","initDirectUploader","$","$el","find","fileupload","replaceFileInput","add","e","files","name","options","filename","_","Date","now","getJSON","result","formData","fields","paramName","submit","parseInt","loaded","total","done","mediumData","JSON","stringify","key","match","storage","metadata","size","type","save_medium","fail","response","errorThrown","mounted","computed","hasNotes","score","notes","lastScoreClass","past_objective_score","getCheckedItemCount","objective","checklist_items_list","filter","item","checked","length","isSelected","value","scoreObject","use","VueTruncate","searchQuery","filteredObjectives","objectives","join","toLowerCase","includes","pastObjectiveScore","past_objective_scores","mastery_objective_id","checklistItems","session","initialChecklistItems","activeAccordionItems","selectedItems","getInitialSelectedItems","sessionState","learning_resource","learning_resources","sessionEdits","initializeSessionEdits","sessionNote","privateNote","private_notes","sessionNotification","notification","teacherLearner","learner","learner_type","objectiveNote","notesWysiwygToggleKey","pastObjectiveScores","selectedObjective","showSessionNote","showPrivateNote","showSessionMedium","isDraft","draft","isNotified","modalOpen","sessionId","learnerName","assessee","full_name","observer","assessor","goal","sessionName","assessment_name","menuHidden","tagsDropdownMenuHidden","availableTags","available_tags","showSessionNotification","nextStepList","commentsList","singleNextStep","completedNextSteps","notesSaving","objectiveNotesSaving","privateNotesSaving","nextStep","title","description","dueDate","nextStepOwner","media","links","mediaUrl","uploadedMedia","selectedResources","locked","next_step_data","comment","body","notificationIds","isNextStepEdit","isIframeLinkCheck","iframeLinkUrl","mediumDataCollection","showLinkInput","linkInput","showResourceDrawer","resourceSearchQuery","addResourceSearchQuery","resources","nextStepResources","objectiveResources","singleResourceDataForObjective","linkedUrls","showSingleResourcePanel","editedNextStep","toBeDeletedNextStep","selectAllOwnersChecked","rewriteNotesEnabled","rewrite_notes_enabled","$rewriteNotesPopup","filteredResources","resource","displayedLinksOnEditMode","link","_destroy","isIframeLink","map","index","iframeLinkUrls","filteredAddResources","filteredChecklistItems","query","subItem","checkedItemsCount","isActiveAccordionItem","itemId","selectedCheckboxes","flatMap","label","hasPrivateNotes","hasNotification","hasMedium","noGoal","learnersOptions","values","learners_options","nextSteps","isNextStepLocked","created","getNextStepList","isCommentIframeLink","commentLinks","iFrameUrls","formatDate","dateString","moment","format","formatDueDateForAddEditNextStep","dateObj","replace","getFullYear","String","getMonth","padStart","getDate","axios","school_slug","then","catch","status","getCommentsList","async","processedComments","Promise","all","commentUrls","webLinkData","commentLinkedUrls","resource_center","linked_urls","selectAllOwners","changeAllOwnersCheckbox","scheduled_at","objectives_options","option","objective_ids","toString","staff","assignable_staff_as_option","staff_ids","errors","publishSession","window","location","pathname","saveAndExit","togglePublishMenu","handleClick","event","target","hasClass","closest","scoreAllParams","recipients","subject","scores","mastery_scores","subject_id","applyAutoHeightStyle","append","toggleNotificationDraft","toggleSessionNote","is","fadeOut","togglePrivateNote","toggleHistoricalSessionNotes","$refs","historicalSessionNotes","toggleVisible","toggleSessionMedium","toggleScoreAllPanel","scoreAllPanel","openObjectiveDetailsModal","objectiveDetailsPanel","learning_resources_list","openCheckListItemsModal","checkListPanel","document","querySelector","classList","openObjectiveNoteNodal","findOrInitializeObjectiveNote","objectiveNotePanel","note","updateObjectiveNote","input","onPressCloseObjectiveNote","onPressCancelNextStep","addNextStepPanel","generateIframeLink","youtubeMatch","loomMatch","vimeoMatch","microsoftMatch","tiktokMatch","videoDetail","getVideoDetails","embedUrl","thumbnail_path","videoId","urlMetadata","fetchUrlMetadata","platform","image","isWebLink","resolve","reject","ajax","method","success","jqXHR","textStatus","console","videoUrl","oembedUrl","fetch","json","video_id","thumbnail_url","openSingleResourcePanel","singleResourcePanel","linked_url","isIframe","triggerFileUpload","uploadMedia","click","alert","initializeFileUpload","push","handleFileUpload","file","URL","createObjectURL","handleCommentFileUpload","removeMedia","splice","itemIndex","findIndex","removeCommentMedia","closeResourceLinkDrawer","removeLink","addLink","newLink","urls","iframeCommentLinkUrls","addCommentLink","linkId","linkIndex","$set","removeCommentLink","openLinkDrawer","openResourceDrawer","fetchResources","openCommentResourceDrawer","fetchCommentResources","addSelectedResources","filteredResourcesBySelectedReources","some","selectedResId","selectResource","selectCommentResource","removeSelectedResource","removeCommentResource","handleClickOnNextStepLock","nextStepType","childRef","addNextStepLocked","editNextStepLocked","inputElement","checkboxInput","onPressSaveNextStep","formattedDueDate","objectiveIds","obj","ownerIds","resourceId","res","FormData","assignedById","forEach","i","uploadedFile","fileId","headers","clearData","onPressSaveComment","n","confirmDeletion","commentId","confirm","deleteComment","onPressUpdateNextStep","mediaAttributes","ids","medium_data","linksAttributes","next_step","due_date","owner_id","linked_urls_attributes","learning_resource_ids","media_attributes","singleNextStepEditPanel","onPressDeleteNextStep","modalBackdrop","deleteNextStep","onPressCancelDeleteNextStep","onPressConfirmDeleteNextStep","saveObjectiveNote","toggleNotesSaving","assessee_recent_scores","updatedMasteryScores","getScore","getScoreParams","mastery_score","updateScores","statusCode","reload","onPressSaveAllScores","updateScore","newMasteryScores","a","b","student_id","onPressCloseSessionNote","onPressClosePrivateNote","saveSessionNoteNotification","onSuccess","toggle","setTimeout","saveNotes","saveSessionNotification","cancelNotification","openSessionEditPanel","sessionEditPanel","openNextStepAddPanel","val","openNextStepAddComment","addNextStepComment","toggleElementsUponNextStepCompletion","isCompleted","el","hide","show","completed","showSingleNextStep","fetchSingleNextStep","showCompletedNextStepHistory","render_location_id","render_location","fetchCompletedNextStepHistory","completedNextStepPanel","created_at","assginedByName","assigned_by","ownerName","owner","objectiveName","objective_names","canBeEditedOrDeletedByCurrentStaff","can_be_edited_or_deleted_by_current_staff","canBeCompletedByCurrentStaff","can_be_completed_by_current_staff","promises","linkData","truncateText","text","substring","openSingleNextStepEditPanel","initializeSingleNextStepEdit","nextStepData","singleNextStepEditPanelDueDate","previousMediaData","File","lastModified","updated_at","getTime","toggleNextStep","element","css","attr","completion_location_type","completion_location_id","completed_by_id","current_staff","removeAttr","onPressCancelEditSession","onPressSaveSession","individual_session","individualSessionParams","updatedSession","onPressDeleteSession","err","o","saveMedium","successCallback","failureCallback","new_medium","slice","deleteMedium","remaining_media","openLearnerDetailsModal","learnerDetailsPanel","recentScoresForSelectedObjective","recentNotesForSelectedObjective","recent_scores","session_name","source","formatted_date","staff_name","setSessionTag","tagId","attached_tags","toggleAccordionItem","selectedId","revertChecklistItemsToInitialState","initialItem","onPressSaveChecklist","removeFixedFooter","onPressCancelChecklist","footerElement","remove","dispatchEvent","Event","$on","on","preventDefault","stopPropagation","ready","webpackContext","req","webpackContextResolve","__webpack_require__","Error","code","keys","module","exports","render","_c","staticClass","startsWith","attrs","_e","_v","_s","ref","class","style","width","$event","delete_medium","on_press_cancel_medium","staticRenderFns","inputId","domProps","isLocked","score_band","tooltip_text","_m","open_checklist_items_modal","apply","arguments","narrative_feedback","open_objective_note_modal","open_objective_details_modal","component_name","open_learner_details_modal","on_press_score","directives","rawName","expression","composing","_l","on_score_objective","get_score"],"sourceRoot":""}