{"version":3,"sources":["webpack://plentymarkets-feedback/./node_modules/core-js/internals/add-to-unscopables.js","webpack://plentymarkets-feedback/./node_modules/core-js/modules/es.array.find.js","webpack://plentymarkets-feedback/./resources/js/src/app/components/item/singleitem/FeedbackComment.vue?df86","webpack://plentymarkets-feedback/resources/js/src/app/components/item/singleitem/FeedbackComment.vue","webpack://plentymarkets-feedback/./resources/js/src/app/components/item/singleitem/FeedbackComment.vue?d8b8","webpack://plentymarkets-feedback/./resources/js/src/app/components/item/singleitem/FeedbackComment.vue"],"names":["wellKnownSymbol","create","definePropertyModule","UNSCOPABLES","ArrayPrototype","Array","prototype","undefined","f","configurable","value","module","exports","key","$","$find","addToUnscopables","FIND","SKIPS_HOLES","target","proto","forced","find","callbackfn","this","arguments","length","render","_vm","_h","$createElement","_c","_self","staticClass","class","classes","style","styles","isReply","_e","_v","_s","feedbackData","title","feedbackRating","rating","ratingValue","_l","i","full","empty","isPurchased","$translate","variationAttributes","variationAttribute","index","name","domProps","textContent","message","sourceRelation","feedbackRelationType","directives","rawName","attrs","sourceRelationLabel","feedbackRelationSourceId","feedback","authorName","displayName","options","timestampVisibility","_f","createdAt","authenticatedUser","isLoggedIn","allowGuestFeedbacks","on","click","$event","replyFormVisible","replies","replyListVisible","expression","id","type","placeholder","disabled","limitReached","hasPurchased","input","composing","honeypot","replyMessage","rows","createReply","reply","showControls","delete","$emit","_withStripped","components","FeedbackListEntry","props","Object","Boolean","String","data","computed","targetRelation","guestName","feedbackComment","created","methods","ajax","url","targetId","contentType","dataType","xhrFields","withCredentials","success","unshift","component","__file"],"mappings":"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","file":"chunks/feedback-3.min.js","sourcesContent":["var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"feedback-comment\", class: _vm.classes, style: _vm.styles },\n [\n !_vm.isReply\n ? _c(\"div\", [\n _c(\"p\", { staticClass: \"feedback-comment-title\" }, [\n _vm._v(\"\\n \" + _vm._s(_vm.feedbackData.title) + \"\\n \")\n ]),\n _vm._v(\" \"),\n _vm.feedbackData.feedbackRating.rating.ratingValue > 0\n ? _c(\n \"div\",\n { staticClass: \"feedback-rating\" },\n _vm._l(5, function(i) {\n return _c(\"i\", {\n key: \"feedback_rating_\" + i,\n staticClass: \"fa fa-star\",\n class: {\n full:\n _vm.feedbackData.feedbackRating.rating.ratingValue >=\n i,\n empty:\n _vm.feedbackData.feedbackRating.rating.ratingValue < i\n }\n })\n }),\n 0\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"feedback-attributes-list\" }, [\n _c(\n \"p\",\n [\n _vm.isPurchased\n ? _c(\"span\", { staticClass: \"feedback-verified-tag\" }, [\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm.$translate(\n \"Feedback::Feedback.verifiedPurchase\"\n )\n ) +\n \"\\n \"\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm._l(_vm.variationAttributes, function(\n variationAttribute,\n index\n ) {\n return _c(\n \"span\",\n {\n key: \"feedback_attributes_\" + index,\n staticClass: \"feedback-attributes\"\n },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(variationAttribute.name) +\n \": \" +\n _vm._s(variationAttribute.value) +\n \"\\n \"\n )\n ]\n )\n })\n ],\n 2\n )\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"p\", {\n staticClass: \"feedback-comment-text\",\n domProps: { textContent: _vm._s(_vm.message) }\n }),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"feedback-info\" }, [\n _c(\"span\", { staticClass: \"feedback-info-segment\" }, [\n _c(\"strong\", [\n _vm.feedbackData.sourceRelation[0].feedbackRelationType === \"user\"\n ? _c(\n \"span\",\n {\n directives: [{ name: \"tooltip\", rawName: \"v-tooltip\" }],\n staticClass: \"feedback-admin\",\n attrs: {\n \"data-toggle\": \"tooltip\",\n \"data-placement\": \"top\",\n \"data-original-title\": _vm.$translate(\n \"Feedback::Feedback.shopManagerLabel\"\n )\n }\n },\n [\n _c(\"i\", { staticClass: \"fa fa-check-square\" }),\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm.feedbackData.sourceRelation[0].sourceRelationLabel\n ) +\n \"\\n \"\n )\n ]\n )\n : _vm.feedbackData.sourceRelation[0].feedbackRelationType ===\n \"contact\" &&\n _vm.feedbackData.sourceRelation[0].feedbackRelationSourceId > 0\n ? _c(\"span\", [\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm.feedbackData.sourceRelation[0].sourceRelationLabel\n ) +\n \"\\n \"\n )\n ])\n : _vm.feedbackData.sourceRelation[0].feedbackRelationSourceId ==\n 0 && _vm.feedback.authorName.length > 0\n ? _c(\"span\", [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.feedbackData.authorName) +\n \"\\n \"\n )\n ])\n : _c(\"span\", [\n _vm._v(\n \"\\n \" + _vm._s(_vm.displayName) + \"\\n \"\n )\n ])\n ])\n ]),\n _vm._v(\" \"),\n _vm.options.timestampVisibility\n ? _c(\"span\", { staticClass: \"feedback-info-segment\" }, [\n _c(\"i\", { staticClass: \"fa fa-calendar text-muted\" }),\n _vm._v(\n \"\\n \" +\n _vm._s(\n _vm._f(\"date\")(\n _vm.feedbackData.createdAt,\n _vm.$translate(\"Ceres::Template.devDateFormatMoment\") ||\n \"DD.MM.YYYY\"\n )\n ) +\n \"\\n \"\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n !_vm.isReply &&\n (_vm.authenticatedUser.isLoggedIn || _vm.options.allowGuestFeedbacks)\n ? _c(\n \"span\",\n {\n staticClass: \"feedback-info-segment btn btn-sm btn-default\",\n on: {\n click: function($event) {\n _vm.replyFormVisible = !_vm.replyFormVisible\n }\n }\n },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.$translate(\"Feedback::Feedback.addComment\")) +\n \"\\n \"\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n !!_vm.feedbackData.replies &&\n _vm.feedbackData.replies.length > 0 &&\n !_vm.replyListVisible\n ? _c(\n \"span\",\n {\n staticClass: \"feedback-info-segment btn btn-sm btn-default\",\n on: {\n click: function($event) {\n _vm.replyListVisible = !_vm.replyListVisible\n }\n }\n },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.$translate(\"Feedback::Feedback.viewComments\")) +\n \" (\" +\n _vm._s(_vm.feedbackData.replies.length) +\n \")\\n \"\n )\n ]\n )\n : !!_vm.feedbackData.replies &&\n _vm.feedbackData.replies.length > 0 &&\n _vm.replyListVisible\n ? _c(\n \"span\",\n {\n staticClass: \"feedback-info-segment btn btn-sm btn-default\",\n on: {\n click: function($event) {\n _vm.replyListVisible = !_vm.replyListVisible\n }\n }\n },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.$translate(\"Feedback::Feedback.hideComments\")) +\n \"\\n \"\n )\n ]\n )\n : _vm._e()\n ]),\n _vm._v(\" \"),\n _vm.replyFormVisible &&\n !_vm.isReply &&\n (_vm.authenticatedUser.isLoggedIn || _vm.options.allowGuestFeedbacks)\n ? _c(\"div\", { staticClass: \"feedback-add-reply\" }, [\n !_vm.authenticatedUser.isLoggedIn && _vm.options.allowGuestFeedbacks\n ? _c(\"div\", { staticClass: \"form-group\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.authorName,\n expression: \"authorName\"\n }\n ],\n staticClass: \"form-control\",\n attrs: {\n id: \"author\",\n type: \"text\",\n name: \"author\",\n placeholder: _vm.$translate(\n \"Feedback::Feedback.authorName\"\n ),\n disabled:\n _vm.authenticatedUser.limitReached ||\n !_vm.authenticatedUser.hasPurchased\n },\n domProps: { value: _vm.authorName },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.authorName = $event.target.value\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.honeypot,\n expression: \"honeypot\"\n }\n ],\n staticClass: \"form-control\",\n attrs: {\n id: \"comment-textfield\",\n type: \"text\",\n name: \"comment-textfield\"\n },\n domProps: { value: _vm.honeypot },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.honeypot = $event.target.value\n }\n }\n })\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _c(\"textarea\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.replyMessage,\n expression: \"replyMessage\"\n }\n ],\n staticClass: \"form-control\",\n attrs: {\n name: \"message\",\n rows: \"3\",\n placeholder: _vm.$translate(\n \"Feedback::Feedback.commentMessage\"\n )\n },\n domProps: { value: _vm.replyMessage },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.replyMessage = $event.target.value\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\n \"button\",\n {\n staticClass: \"btn btn-primary btn-appearance\",\n attrs: { disabled: !_vm.replyMessage },\n on: {\n click: function($event) {\n return _vm.createReply()\n }\n }\n },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.$translate(\"Feedback::Feedback.submitComment\")) +\n \"\\n \"\n )\n ]\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n !!_vm.feedbackData.replies &&\n _vm.feedbackData.replies.length > 0 &&\n _vm.replyListVisible\n ? _c(\n \"div\",\n { staticClass: \"feedback-replies\" },\n _vm._l(_vm.feedbackData.replies, function(reply) {\n return _c(\"feedback-list-entry\", {\n key: reply.id,\n attrs: {\n feedback: reply,\n \"is-reply\": true,\n \"show-controls\": _vm.showControls,\n classes: _vm.classes,\n styles: _vm.styles,\n options: _vm.options\n },\n on: {\n delete: function($event) {\n return _vm.$emit(\"delete\", $event)\n }\n }\n })\n }),\n 1\n )\n : _vm._e()\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","<template>\n <div\n class=\"feedback-comment\"\n :class=\"classes\"\n :style=\"styles\"\n >\n <div v-if=\"!isReply\">\n <p class=\"feedback-comment-title\">\n {{ feedbackData.title }}\n </p>\n\n <div\n v-if=\"feedbackData.feedbackRating.rating.ratingValue > 0\"\n class=\"feedback-rating\"\n >\n <i\n v-for=\"i in 5\"\n :key=\"'feedback_rating_' + i\"\n class=\"fa fa-star\"\n :class=\"{full: feedbackData.feedbackRating.rating.ratingValue >= i, empty: feedbackData.feedbackRating.rating.ratingValue < i }\"\n />\n </div>\n\n <div class=\"feedback-attributes-list\">\n <p>\n <span\n v-if=\"isPurchased\"\n class=\"feedback-verified-tag\"\n >\n {{ $translate(\"Feedback::Feedback.verifiedPurchase\") }}\n </span>\n\n <span\n v-for=\"(variationAttribute, index) in variationAttributes\"\n :key=\"'feedback_attributes_' + index\"\n class=\"feedback-attributes\"\n >\n {{ variationAttribute.name }}: {{ variationAttribute.value }}\n </span>\n </p>\n </div>\n </div>\n\n <p\n class=\"feedback-comment-text\"\n v-text=\"message\"\n />\n <p class=\"feedback-info\">\n <span class=\"feedback-info-segment\">\n <strong>\n <span\n v-if=\"feedbackData.sourceRelation[0].feedbackRelationType === 'user'\"\n v-tooltip\n class=\"feedback-admin\"\n data-toggle=\"tooltip\"\n data-placement=\"top\"\n :data-original-title=\"$translate('Feedback::Feedback.shopManagerLabel')\"\n >\n <i class=\"fa fa-check-square\" />\n {{ feedbackData.sourceRelation[0].sourceRelationLabel }}\n </span>\n <span v-else-if=\"feedbackData.sourceRelation[0].feedbackRelationType === 'contact' && feedbackData.sourceRelation[0].feedbackRelationSourceId > 0\">\n {{ feedbackData.sourceRelation[0].sourceRelationLabel }}\n </span>\n <span v-else-if=\"feedbackData.sourceRelation[0].feedbackRelationSourceId == 0 && feedback.authorName.length > 0\">\n {{ feedbackData.authorName }}\n </span>\n <span v-else>\n {{ displayName }}\n </span>\n </strong>\n </span>\n\n <span\n v-if=\"options.timestampVisibility\"\n class=\"feedback-info-segment\"\n >\n <i class=\"fa fa-calendar text-muted\" />\n {{ feedbackData.createdAt | date($translate(\"Ceres::Template.devDateFormatMoment\") || \"DD.MM.YYYY\") }}\n </span>\n\n <span\n v-if=\"!isReply && (authenticatedUser.isLoggedIn || options.allowGuestFeedbacks)\"\n class=\"feedback-info-segment btn btn-sm btn-default\"\n @click=\"replyFormVisible = !replyFormVisible\"\n >\n {{ $translate(\"Feedback::Feedback.addComment\") }}\n </span>\n\n <span\n v-if=\"(!!feedbackData.replies && feedbackData.replies.length > 0) && !replyListVisible\"\n class=\"feedback-info-segment btn btn-sm btn-default\"\n @click=\"replyListVisible = !replyListVisible\"\n >\n {{ $translate(\"Feedback::Feedback.viewComments\") }} ({{ feedbackData.replies.length }})\n </span>\n <span\n v-else-if=\"(!!feedbackData.replies && feedbackData.replies.length > 0) && replyListVisible\"\n class=\"feedback-info-segment btn btn-sm btn-default\"\n @click=\"replyListVisible = !replyListVisible\"\n >\n {{ $translate(\"Feedback::Feedback.hideComments\") }}\n </span>\n </p>\n\n <div\n v-if=\"replyFormVisible && !isReply && (authenticatedUser.isLoggedIn || options.allowGuestFeedbacks)\"\n class=\"feedback-add-reply\"\n >\n <div\n v-if=\"!authenticatedUser.isLoggedIn && options.allowGuestFeedbacks\"\n class=\"form-group\"\n >\n <input\n id=\"author\"\n v-model=\"authorName\"\n type=\"text\"\n class=\"form-control\"\n name=\"author\"\n :placeholder=\"$translate('Feedback::Feedback.authorName')\"\n :disabled=\"authenticatedUser.limitReached || !authenticatedUser.hasPurchased\"\n >\n\n <input\n id=\"comment-textfield\"\n v-model=\"honeypot\"\n type=\"text\"\n class=\"form-control\"\n name=\"comment-textfield\"\n >\n </div>\n\n <div class=\"form-group\">\n <textarea\n v-model=\"replyMessage\"\n class=\"form-control\"\n name=\"message\"\n rows=\"3\"\n :placeholder=\"$translate('Feedback::Feedback.commentMessage')\"\n />\n </div>\n\n <button\n class=\"btn btn-primary btn-appearance\"\n :disabled=\"!replyMessage\"\n @click=\"createReply()\"\n >\n {{ $translate(\"Feedback::Feedback.submitComment\") }}\n </button>\n </div>\n\n <div\n v-if=\"!!feedbackData.replies && feedbackData.replies.length > 0 && replyListVisible\"\n class=\"feedback-replies\"\n >\n <feedback-list-entry\n v-for=\"reply in feedbackData.replies\"\n :key=\"reply.id\"\n :feedback=\"reply\"\n :is-reply=\"true\"\n :show-controls=\"showControls\"\n :classes=\"classes\"\n :styles=\"styles\"\n :options=\"options\"\n @delete=\"$emit('delete', $event)\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport FeedbackListEntry from './FeedbackListEntry.vue'\nimport { mapState } from 'vuex'\n\nexport default {\n name: 'FeedbackComment',\n components: {\n 'feedback-list-entry': FeedbackListEntry\n },\n props: {\n feedback: Object,\n isReply: Boolean,\n showControls: Boolean,\n classes: String,\n styles: String,\n options: Object\n },\n\n data () {\n return {\n authorName: '',\n replyMessage: '',\n replyFormVisible: false,\n replyListVisible: false,\n honeypot: '',\n feedbackData: {}\n }\n },\n\n computed: {\n variationAttributes () {\n if (this.feedbackData.targetRelation.feedbackRelationType !== 'variation' ||\n this.feedbackData.targetRelation.targetRelationName.length <= 0 ||\n !this.feedbackData.targetRelation.variationAttributes ||\n !this.itemAttributes) {\n return []\n }\n\n const _self = this\n return this.feedbackData\n .targetRelation\n .variationAttributes\n .map(function (attributeIds) {\n const targetId = _self.feedbackData.targetRelation.feedbackRelationTargetId\n if (!Object.prototype.hasOwnProperty.call(_self.itemAttributes, targetId) ||\n !Object.prototype.hasOwnProperty.call(_self.itemAttributes[targetId], attributeIds.attributeId) ||\n !Object.prototype.hasOwnProperty.call(_self.itemAttributes[targetId][attributeIds.attributeId], attributeIds.valueId)) {\n return null\n }\n const attribute = _self.itemAttributes[targetId][attributeIds.attributeId][attributeIds.valueId]\n return {\n name: attribute.attributeName,\n value: attribute.attributeValue\n }\n })\n .filter(function (entry) {\n return entry !== null\n })\n },\n\n displayName () {\n const rawName = this.feedbackData.sourceRelation[0].sourceRelationLabel\n const guestName = this.$translate('Feedback::Feedback.guestName')\n return guestName !== ' ' ? guestName : rawName\n },\n\n message () {\n if (!this.feedbackData.feedbackComment) {\n return ''\n }\n return this.feedbackData\n .feedbackComment\n .comment\n .message\n },\n\n isPurchased () {\n return this.feedbackData\n .sourceRelation\n .find(function (relation) {\n return relation.feedbackRelationType === 'orderItem'\n })\n },\n\n ...mapState({\n authenticatedUser: state => state.feedback.authenticatedUser,\n itemAttributes: state => state.feedback.itemAttributes\n })\n },\n\n created () {\n this.feedbackData = this.feedback\n },\n\n methods: {\n createReply () {\n if (!this.replyMessage || this.honeypot.length > 0) {\n return\n }\n\n const _self = this\n $.ajax({\n type: 'POST',\n url: '/rest/feedbacks/feedback/create',\n data: {\n authorName: this.authorName,\n message: this.replyMessage,\n targetId: this.feedbackData.id,\n type: 'reply'\n },\n contentType: 'application/x-www-form-urlencoded; charset=UTF-8',\n dataType: 'json',\n xhrFields: {\n withCredentials: true\n },\n success: function (data) {\n if (!_self.feedbackData.replies) {\n _self.feedbackData.replies = []\n }\n _self.feedbackData.replies.unshift(data)\n _self.replyMessage = ''\n _self.replyFormVisible = false\n _self.replyListVisible = true\n }\n })\n }\n }\n}\n</script>\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FeedbackComment.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FeedbackComment.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FeedbackComment.vue?vue&type=template&id=29bddc00&\"\nimport script from \"./FeedbackComment.vue?vue&type=script&lang=js&\"\nexport * from \"./FeedbackComment.vue?vue&type=script&lang=js&\"\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 null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/Users/stevetentrop/workspace2/developer-environment/plugins/Feedback/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!api.isRecorded('29bddc00')) {\n api.createRecord('29bddc00', component.options)\n } else {\n api.reload('29bddc00', component.options)\n }\n module.hot.accept(\"./FeedbackComment.vue?vue&type=template&id=29bddc00&\", function () {\n api.rerender('29bddc00', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"resources/js/src/app/components/item/singleitem/FeedbackComment.vue\"\nexport default component.exports"],"sourceRoot":""}