{"version":3,"sources":["webpack:///./src/components/contentItems/drafts/externalLinks/DraftUserExternalLinkContentItem.vue?e26f","webpack:///./src/components/contentItems/drafts/externalLinks/DraftUserExternalLinkContentItem.vue","webpack:///./src/components/contentItems/drafts/externalLinks/DraftUserExternalLinkContentItem.vue?888a","webpack:///./src/components/contentItems/drafts/externalLinks/DraftUserExternalLinkContentItem.vue?5480"],"names":["render","_vm","this","_h","$createElement","_c","_self","ref","attrs","staticClass","DOCEO_ICONS","BACK","on","back","isPreviewing","_v","isEditingPublished","directives","name","rawName","value","expression","contentItem","$v","updatedItem","showValidation","setItem","setNewAttachments","setNewImages","setNewFeaturedImage","setDeletedAttachments","setDeletedImages","setDeletedFeaturedImage","previewExternalLink","newAttachments","newImages","newFeaturedImage","_e","hasSponsorRole","savePublished","nextClicked","savingDraft","saveDraft","deleteClicked","publishDialogOpen","undefined","publishedOn","Date","publishing","publishClicked","$event","deleting","deleteConfirmed","deleteDialogOpen","staticRenderFns","extend","components","EditExternalLink","UserExternalLinkContentItem","CreateContentPublishConfirm","ConfirmDialog","DoceoIcon","mixins","props","type","Object","required","Boolean","default","data","contentItemId","deletedAttachmentIds","deletedImageIds","deletedFeaturedImageId","publishDate","validations","title","summary","authors","minLength","externalLinkType","externalLink","voiceOf","hasVoiceOfRole","creator","userId","hasAdminRole","promotedBy","created","methods","uploadNewAttachmentsAndImages","attachmentClient","newAttachmentIds","attachment","fileName","createFromFile","ContentItem","attachmentResult","push","id","allAttachmentIds","attachments","map","a","newImageIds","image","imageResult","allImageIds","images","newFeaturedImageId","fileParameter","featuredImageResult","featuredImage","deleteOldAttachmentsAndImages","attachmentId","delete","imageId","save","publish","uploadResult","draftExternalLink","attachmentIds","imageIds","featuredImageId","userDraftExternalLinkClient","updateDraftArticle","userExternalLinkClient","publishExternalLink","deletePost","userContentClient","deleteUserContent","$emit","$router","go","validate","valid","contentClient","updateExternalLink","$touch","$invalid","item","computed","userExternalLink","ownerId","contentItemType","UserExternalLink","assign","watch","$route","to","from","component","VBtn","VCard","VCardText","VCol","VContainer","VForm","VRow","VSpacer"],"mappings":"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","file":"js/chunk-2d0da01f.dd4c0bd2.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"8\"}},[_c('v-row',[_c('v-col',[_c('v-row',{staticClass:\"ma-2\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('doceo-icon',{attrs:{\"icon\":_vm.DOCEO_ICONS.BACK,\"alt\":\"Back\",\"title\":\"Back\"},on:{\"click\":_vm.back}})],1),(!_vm.isPreviewing)?_c('v-col',{staticClass:\"text-center fifth-header\"},[(!_vm.isEditingPublished)?_c('span',[_vm._v(\"Enter the information below to create your post\")]):_c('span',[_vm._v(\"Enter the information below to update your post\")])]):_c('v-col',{staticClass:\"text-center fifth-header\"},[_vm._v(\" This is what your post will look like. \")])],1)],1)],1),_c('v-row',[_c('v-col',[_c('v-card',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isPreviewing),expression:\"!isPreviewing\"}],staticClass:\"overflow-hidden\",attrs:{\"width\":\"100%\"}},[_c('v-card-text',[_c('EditExternalLink',{attrs:{\"item\":_vm.contentItem,\"validation\":_vm.$v.updatedItem,\"showValidation\":_vm.showValidation},on:{\"change\":_vm.setItem,\"setNewAttachments\":_vm.setNewAttachments,\"setNewImages\":_vm.setNewImages,\"setNewFeaturedImage\":_vm.setNewFeaturedImage,\"setDeletedAttachments\":_vm.setDeletedAttachments,\"setDeletedImages\":_vm.setDeletedImages,\"setDeletedFeaturedImage\":_vm.setDeletedFeaturedImage}})],1)],1),(_vm.isPreviewing)?[_c('UserExternalLinkContentItem',{attrs:{\"contentItem\":_vm.previewExternalLink,\"isPreview\":true,\"previewAttachments\":_vm.newAttachments,\"previewImages\":_vm.newImages,\"previewFeaturedImage\":_vm.newFeaturedImage}})]:_vm._e()],2)],1),(!_vm.hasSponsorRole)?[(_vm.isEditingPublished)?[_c('v-row',{staticClass:\"mb-4\",attrs:{\"justify\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"color\":\"submit\",\"rounded\":\"\",\"outlined\":\"\",\"ripple\":false},on:{\"click\":_vm.savePublished}},[_vm._v(\" Save \")])],1)],1)]:[_c('v-row',{staticClass:\"mb-4\"},[_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"color\":\"submit\",\"rounded\":\"\",\"outlined\":\"\",\"ripple\":false},on:{\"click\":_vm.nextClicked}},[_vm._v(\" Next \")])],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"color\":\"grey darken-2\",\"rounded\":\"\",\"outlined\":\"\",\"loading\":_vm.savingDraft,\"disabled\":_vm.savingDraft,\"ripple\":false},on:{\"click\":_vm.saveDraft}},[_vm._v(\"Save Draft\")])],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"color\":\"red\",\"rounded\":\"\",\"outlined\":\"\",\"ripple\":false},on:{\"click\":_vm.deleteClicked}},[_vm._v(\"Delete\")])],1),_c('v-spacer')],1)]]:_vm._e()],2),_c('v-spacer')],1),_c('CreateContentPublishConfirm',{attrs:{\"isOpen\":_vm.publishDialogOpen,\"publishDate\":_vm.updatedItem.publishedOn != undefined ? _vm.updatedItem.publishedOn : new Date(),\"publishing\":_vm.publishing},on:{\"publish\":_vm.publishClicked,\"close\":function($event){_vm.publishDialogOpen = false}}}),(_vm.deleteDialogOpen)?_c('ConfirmDialog',{attrs:{\"message\":\"Are you sure you want to delete this article?\",\"okayText\":\"Delete\",\"loading\":_vm.deleting},on:{\"okay\":_vm.deleteConfirmed,\"cancel\":function($event){_vm.deleteDialogOpen = false}}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue, { PropType } from \"vue\";\r\nimport { mapGetters } from \"vuex\";\r\nimport { mapState, mapActions } from \"pinia\";\r\nimport dayjs from \"dayjs\";\r\nimport { validationMixin } from \"vuelidate\";\r\nimport { minLength, required, requiredIf } from \"vuelidate/lib/validators\";\r\nimport {\r\n AttachmentBelongsTo,\r\n AttachmentClient,\r\n ContentItemType,\r\n DraftUserExternalLinkContentItemResult,\r\n FileParameter,\r\n IUpdateDraftUserExternalLink,\r\n IUserExternalLinkContentItemResult,\r\n UpdateDraftUserExternalLink,\r\n UserExternalLinkClient,\r\n UserDraftExternalLinkClient,\r\n UserContentClient,\r\n ExternalLinkType,\r\n} from \"@/api/DoceoApi\";\r\n\r\nimport EditExternalLink from \"@/components/contentItems/drafts/externalLinks/EditExternalLink.vue\";\r\nimport CreateContentPublishConfirm from \"@/components/contentItems/drafts/CreateContentPublishConfirm.vue\";\r\n\r\nimport ConfirmDialog from \"@/components/ConfirmDialog.vue\";\r\nimport DoceoIcon from \"@/components/DoceoIcon.vue\";\r\nimport DOCEO_ICONS from \"@/constants/icons\";\r\n\r\nexport default Vue.extend({\r\n name: \"DraftUserExternalLinkContentItem\",\r\n components: {\r\n EditExternalLink,\r\n UserExternalLinkContentItem: () => import(\"../../userContent/externalLinks/UserExternalLinkContentItem.vue\"),\r\n CreateContentPublishConfirm,\r\n ConfirmDialog,\r\n DoceoIcon,\r\n },\r\n mixins: [validationMixin],\r\n props: {\r\n contentItem: {\r\n type: Object as PropType,\r\n required: true,\r\n },\r\n isEditingPublished: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n },\r\n data: () => ({\r\n contentItemId: null as string | null,\r\n updatedItem: {} as DraftUserExternalLinkContentItemResult,\r\n newAttachments: [] as File[],\r\n newImages: [] as File[],\r\n newFeaturedImage: null as File | null,\r\n deletedAttachmentIds: [] as string[],\r\n deletedImageIds: [] as string[],\r\n deletedFeaturedImageId: null as string | null,\r\n publishDate: null as Date | null,\r\n isPreviewing: false,\r\n publishDialogOpen: false,\r\n savingDraft: false,\r\n publishing: false,\r\n showValidation: false,\r\n deleteDialogOpen: false,\r\n deleting: false,\r\n DOCEO_ICONS,\r\n }),\r\n validations(): any {\r\n return {\r\n updatedItem: {\r\n title: {\r\n required,\r\n },\r\n summary: {\r\n required,\r\n },\r\n authors: {\r\n required,\r\n minLength: minLength(1),\r\n },\r\n externalLinkType: {\r\n required,\r\n },\r\n externalLink: {\r\n required,\r\n },\r\n voiceOf: {\r\n required: requiredIf(() => this.hasVoiceOfRole),\r\n },\r\n creator: {\r\n userId: {\r\n required: requiredIf(() => this.hasAdminRole),\r\n },\r\n },\r\n promotedBy: {\r\n required: requiredIf(() => this.hasAdminRole),\r\n },\r\n },\r\n };\r\n },\r\n async created() {\r\n if(this.hasSponsorRole) {\r\n this.isPreviewing = true;\r\n }\r\n },\r\n methods: {\r\n async uploadNewAttachmentsAndImages() {\r\n let attachmentClient = new AttachmentClient();\r\n\r\n // upload new attachments\r\n let newAttachmentIds = [] as string[];\r\n for (let attachment of this.newAttachments) {\r\n let fileParameter: FileParameter = {\r\n data: attachment,\r\n fileName: attachment.name,\r\n };\r\n let attachmentResult = await attachmentClient.createFromFile(AttachmentBelongsTo.ContentItem, fileParameter);\r\n newAttachmentIds.push(attachmentResult.id);\r\n }\r\n let allAttachmentIds = [...newAttachmentIds, ...(this.updatedItem.attachments?.map((a) => a.id) ?? [])];\r\n\r\n // upload new images\r\n let newImageIds = [] as string[];\r\n for (let image of this.newImages) {\r\n let fileParameter: FileParameter = {\r\n data: image,\r\n fileName: image.name,\r\n };\r\n let imageResult = await attachmentClient.createFromFile(AttachmentBelongsTo.ContentItem, fileParameter);\r\n newImageIds.push(imageResult.id);\r\n }\r\n let allImageIds = [...newImageIds, ...(this.updatedItem.images?.map((a) => a.id) ?? [])];\r\n\r\n // upload featured image\r\n let newFeaturedImageId = null as string | null;\r\n if (this.newFeaturedImage) {\r\n let fileParameter: FileParameter = {\r\n data: this.newFeaturedImage,\r\n fileName: this.newFeaturedImage.name,\r\n };\r\n let featuredImageResult = await attachmentClient.createFromFile(AttachmentBelongsTo.ContentItem, fileParameter);\r\n newFeaturedImageId = featuredImageResult.id;\r\n } else {\r\n newFeaturedImageId = this.updatedItem.featuredImage?.id ?? null;\r\n }\r\n\r\n return { allAttachmentIds, allImageIds, newFeaturedImageId };\r\n },\r\n async deleteOldAttachmentsAndImages() {\r\n let attachmentClient = new AttachmentClient();\r\n\r\n // delete attachments that were removed\r\n for (let attachmentId of this.deletedAttachmentIds) {\r\n await attachmentClient.delete(attachmentId);\r\n }\r\n\r\n // delete images that were removed\r\n for (let imageId of this.deletedImageIds) {\r\n await attachmentClient.delete(imageId);\r\n }\r\n\r\n // delete old featured image\r\n if (this.deletedFeaturedImageId !== null) {\r\n await attachmentClient.delete(this.deletedFeaturedImageId);\r\n }\r\n },\r\n\r\n async save(publish = false) {\r\n let uploadResult = await this.uploadNewAttachmentsAndImages();\r\n\r\n // update content\r\n let draftExternalLink: IUpdateDraftUserExternalLink = {\r\n title: this.updatedItem.title,\r\n summary: this.updatedItem.summary,\r\n attachmentIds: uploadResult.allAttachmentIds,\r\n imageIds: uploadResult.allImageIds,\r\n featuredImageId: uploadResult.newFeaturedImageId ?? undefined,\r\n externalLinkType: this.updatedItem.externalLinkType,\r\n externalLink: this.updatedItem.externalLink,\r\n publishedOn: this.publishDate ?? this.updatedItem.publishedOn,\r\n authors: this.updatedItem.authors,\r\n voiceOf: this.updatedItem.voiceOf,\r\n userId: this.updatedItem.creator?.userId,\r\n promotedBy: this.updatedItem.promotedBy,\r\n };\r\n let userDraftExternalLinkClient = new UserDraftExternalLinkClient();\r\n await userDraftExternalLinkClient.updateDraftArticle(this.updatedItem.contentItemId, new UpdateDraftUserExternalLink(draftExternalLink));\r\n\r\n await this.deleteOldAttachmentsAndImages();\r\n\r\n // publish if requested\r\n if (publish) {\r\n let userExternalLinkClient = new UserExternalLinkClient();\r\n await userExternalLinkClient.publishExternalLink(this.updatedItem.contentItemId);\r\n }\r\n },\r\n\r\n async deletePost() {\r\n let userContentClient = new UserContentClient();\r\n await userContentClient.deleteUserContent(this.updatedItem.contentItemId);\r\n },\r\n\r\n back() {\r\n if (this.isEditingPublished) {\r\n this.$emit(\"backClicked\");\r\n return;\r\n }\r\n if (this.savingDraft || this.publishing) return;\r\n if (this.isPreviewing && !this.hasSponsorRole) {\r\n this.isPreviewing = false;\r\n } else {\r\n this.$router.go(-1);\r\n }\r\n },\r\n nextClicked() {\r\n if (!this.isPreviewing) {\r\n this.isPreviewing = true;\r\n } else {\r\n if (!this.validate()) {\r\n this.isPreviewing = false;\r\n } else {\r\n this.publishDialogOpen = true;\r\n }\r\n }\r\n },\r\n\r\n async savePublished() {\r\n let valid = this.validate();\r\n\r\n if (valid) {\r\n let contentClient = new UserExternalLinkClient();\r\n\r\n let uploadResult = await this.uploadNewAttachmentsAndImages();\r\n\r\n let title = this.updatedItem.title;\r\n let summary = this.updatedItem.summary;\r\n let attachmentIds = uploadResult.allAttachmentIds;\r\n let imageIds = uploadResult.allImageIds;\r\n let featuredImageId = uploadResult.newFeaturedImageId;\r\n let authors = this.updatedItem.authors;\r\n let externalLinkType = this.updatedItem.externalLinkType;\r\n let externalLink = this.updatedItem.externalLink;\r\n let voiceOf = this.updatedItem.voiceOf;\r\n let userId = this.updatedItem.creator?.userId;\r\n let promotedBy = this.updatedItem.promotedBy;\r\n let contentItemId = this.updatedItem.contentItemId;\r\n await contentClient.updateExternalLink(\r\n title,\r\n summary,\r\n attachmentIds,\r\n imageIds,\r\n featuredImageId,\r\n authors,\r\n externalLinkType,\r\n externalLink,\r\n voiceOf,\r\n userId,\r\n promotedBy,\r\n contentItemId,\r\n );\r\n\r\n await this.deleteOldAttachmentsAndImages();\r\n\r\n this.$router.go(-1);\r\n }\r\n },\r\n\r\n async saveDraft() {\r\n if (!this.validate()) return;\r\n this.savingDraft = true;\r\n await this.save(false);\r\n this.savingDraft = false;\r\n\r\n this.$router.push({ name: \"MyContent\" });\r\n },\r\n\r\n async publishClicked(publishDate: string) {\r\n if (publishDate != \"\") this.publishDate = new Date(publishDate);\r\n\r\n this.publishing = true;\r\n await this.save(true);\r\n this.publishing = false;\r\n\r\n this.publishDialogOpen = false;\r\n this.$router.push({ name: \"MyContent\" });\r\n },\r\n\r\n deleteClicked() {\r\n this.deleteDialogOpen = true;\r\n },\r\n async deleteConfirmed() {\r\n this.deleting = true;\r\n await this.deletePost();\r\n this.deleting = false;\r\n this.deleteDialogOpen = false;\r\n this.$router.push({ name: \"MyContent\" });\r\n },\r\n\r\n validate(): boolean {\r\n this.showValidation = true;\r\n this.$v.$touch();\r\n return !this.$v.$invalid;\r\n },\r\n\r\n setItem(item: DraftUserExternalLinkContentItemResult) {\r\n this.updatedItem = item;\r\n },\r\n setNewAttachments(attachments: File[]) {\r\n this.newAttachments = attachments;\r\n },\r\n setNewImages(images: File[]) {\r\n this.newImages = images;\r\n },\r\n setNewFeaturedImage(featuredImage: File | null) {\r\n this.newFeaturedImage = featuredImage;\r\n },\r\n setDeletedAttachments(deletedAttachmentIds: string[]) {\r\n this.deletedAttachmentIds = deletedAttachmentIds;\r\n },\r\n setDeletedImages(deletedImageIds: string[]) {\r\n this.deletedImageIds = deletedImageIds;\r\n },\r\n setDeletedFeaturedImage(deletedFeaturedImageId: string | null) {\r\n this.deletedFeaturedImageId = deletedFeaturedImageId;\r\n },\r\n },\r\n computed: {\r\n ...mapGetters([\"userId\", \"hasVoiceOfRole\", \"hasAdminRole\", \"hasSponsorRole\"]),\r\n\r\n previewExternalLink() {\r\n let userExternalLink: IUserExternalLinkContentItemResult = {\r\n ...this.updatedItem,\r\n ownerId: this.userId,\r\n publishedOn: this.updatedItem.publishedOn != undefined ? this.updatedItem.publishedOn : new Date(),\r\n contentItemType: ContentItemType.UserExternalLink,\r\n };\r\n return Object.assign({}, userExternalLink);\r\n },\r\n },\r\n watch: {\r\n $route(to, from) {},\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DraftUserExternalLinkContentItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DraftUserExternalLinkContentItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DraftUserExternalLinkContentItem.vue?vue&type=template&id=e07222ee&scoped=true&\"\nimport script from \"./DraftUserExternalLinkContentItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./DraftUserExternalLinkContentItem.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e07222ee\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCard,VCardText,VCol,VContainer,VForm,VRow,VSpacer})\n"],"sourceRoot":""}