text: (window["webpackJsonp"] = window["webpackJsonp"] || []).push([[16],{
  
  /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/components/product/ProductCard.vue?vue&type=script&lang=js&":
  /*!***************************************************************************************************************************************************************************!*\
    !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/components/product/ProductCard.vue?vue&type=script&lang=js& ***!
    \***************************************************************************************************************************************************************************/
  /*! exports provided: default */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  //
  /* harmony default export */ __webpack_exports__["default"] = ({
    props: ['product', 'addToCartUrl', 'currency', 'productPageUrl', 'addToWishlist', 'removeFromWishlist', 'userWishlists'],
    data: function data() {
      return {
        token: null
      };
    },
    mounted: function mounted() {
      this.token = document.head.querySelector('meta[name="csrf-token"]').content;
    },
    methods: {
      getWishlistUrl: function getWishlistUrl() {
        var app = this;
        var userWishlistHasProduct = this.userWishlists.find(function (ele) {
          return ele.product_id === app.product.id;
        });
  
        if (this.userWishlists.length === 0) {
          return this.addToWishlist;
        }
  
        if (userWishlistHasProduct) {
          return this.removeFromWishlist;
        } else {
          return this.addToWishlist;
        }
      },
      getWishlistLabel: function getWishlistLabel() {
        var app = this;
        var userWishlistHasProduct = this.userWishlists.find(function (ele) {
          return ele.product_id === app.product.id;
        });
  
        if (this.userWishlists.length === 0) {
          return 'Add';
        }
  
        if (userWishlistHasProduct) {
          return 'Remove';
        } else {
          return 'Add';
        }
      }
    }
  });
  
  /***/ }),
  
  /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/components/product/ProductCard.vue?vue&type=template&id=2ef8a59e&":
  /*!*******************************************************************************************************************************************************************************************************************!*\
    !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/components/product/ProductCard.vue?vue&type=template&id=2ef8a59e& ***!
    \*******************************************************************************************************************************************************************************************************************/
  /*! exports provided: render, staticRenderFns */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
  var render = function() {
    var _vm = this
    var _h = _vm.$createElement
    var _c = _vm._self._c || _h
    return _c(
      "a-card",
      { staticClass: "product-card", attrs: { hoverable: "" } },
      [
        _c(
          "a",
          { attrs: { slot: "cover", href: _vm.productPageUrl }, slot: "cover" },
          [
            _c("img", {
              staticClass: "main-image",
              attrs: { alt: _vm.product.name, src: _vm.product.main_image_url }
            })
          ]
        ),
        _vm._v(" "),
        _c("template", { staticClass: "ant-card-actions", slot: "actions" }, [
          _c(
            "form",
            {
              attrs: { slot: "title", method: "post", action: _vm.addToCartUrl },
              slot: "title"
            },
            [
              _c("input", {
                attrs: { type: "hidden", name: "_token" },
                domProps: { value: _vm.token }
              }),
              _vm._v(" "),
              _c("a-button", {
                attrs: {
                  "html-type": "submit",
                  type: "primary",
                  icon: "shopping-cart"
                }
              }),
              _vm._v(" "),
              _c("input", {
                attrs: { type: "hidden", name: "slug" },
                domProps: { value: _vm.product.slug }
              }),
              _vm._v(" "),
              _c("input", { attrs: { type: "hidden", name: "qty", value: "1" } })
            ],
            1
          ),
          _vm._v(" "),
          _c(
            "form",
            {
              attrs: {
                slot: "title",
                method: "post",
                action: _vm.getWishlistUrl()
              },
              slot: "title"
            },
            [
              _c("input", {
                attrs: { type: "hidden", name: "_token" },
                domProps: { value: _vm.token }
              }),
              _vm._v(" "),
              _c(
                "a-button",
                {
                  attrs: { "html-type": "submit", type: "default", icon: "heart" }
                },
                [
                  _vm._v(
                    "\n                " +
                      _vm._s(_vm.getWishlistLabel()) +
                      "\n            "
                  )
                ]
              ),
              _vm._v(" "),
              _c("input", {
                attrs: { type: "hidden", name: "slug" },
                domProps: { value: _vm.product.slug }
              })
            ],
            1
          )
        ]),
        _vm._v(" "),
        _c("a", { attrs: { href: _vm.productPageUrl } }, [
          _c("h3", [_vm._v(_vm._s(_vm.product.name))]),
          _vm._v(" "),
          _c("div", { staticClass: "price" }, [
            _vm._v(
              "\n            " +
                _vm._s(_vm.currency) +
                _vm._s(parseFloat(_vm.product.price).toFixed(2)) +
                "\n        "
            )
          ])
        ])
      ],
      2
    )
  }
  var staticRenderFns = []
  render._withStripped = true
  
  
  
  /***/ }),
  
  /***/ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js":
  /*!********************************************************************!*\
    !*** ./node_modules/vue-loader/lib/runtime/componentNormalizer.js ***!
    \********************************************************************/
  /*! exports provided: default */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
  /* globals __VUE_SSR_CONTEXT__ */
  
  // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
  // This module is a runtime utility for cleaner component module output and will
  // be included in the final webpack user bundle.
  
  function normalizeComponent (
    scriptExports,
    render,
    staticRenderFns,
    functionalTemplate,
    injectStyles,
    scopeId,
    moduleIdentifier, /* server only */
    shadowMode /* vue-cli only */
  ) {
    // Vue.extend constructor export interop
    var options = typeof scriptExports === 'function'
      ? scriptExports.options
      : scriptExports
  
    // render functions
    if (render) {
      options.render = render
      options.staticRenderFns = staticRenderFns
      options._compiled = true
    }
  
    // functional template
    if (functionalTemplate) {
      options.functional = true
    }
  
    // scopedId
    if (scopeId) {
      options._scopeId = 'data-v-' + scopeId
    }
  
    var hook
    if (moduleIdentifier) { // server build
      hook = function (context) {
        // 2.3 injection
        context =
          context || // cached call
          (this.$vnode && this.$vnode.ssrContext) || // stateful
          (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
        // 2.2 with runInNewContext: true
        if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
          context = __VUE_SSR_CONTEXT__
        }
        // inject component styles
        if (injectStyles) {
          injectStyles.call(this, context)
        }
        // register component module identifier for async chunk inferrence
        if (context && context._registeredComponents) {
          context._registeredComponents.add(moduleIdentifier)
        }
      }
      // used by ssr in case component is cached and beforeCreate
      // never gets called
      options._ssrRegister = hook
    } else if (injectStyles) {
      hook = shadowMode
        ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
        : injectStyles
    }
  
    if (hook) {
      if (options.functional) {
        // for template-only hot-reload because in that case the render fn doesn't
        // go through the normalizer
        options._injectStyles = hook
        // register for functioal component in vue file
        var originalRender = options.render
        options.render = function renderWithStyleInjection (h, context) {
          hook.call(context)
          return originalRender(h, context)
        }
      } else {
        // inject component registration as beforeCreate hook
        var existing = options.beforeCreate
        options.beforeCreate = existing
          ? [].concat(existing, hook)
          : [hook]
      }
    }
  
    return {
      exports: scriptExports,
      options: options
    }
  }
  
  
  /***/ }),
  
  /***/ "./resources/components/product/ProductCard.vue":
  /*!******************************************************!*\
    !*** ./resources/components/product/ProductCard.vue ***!
    \******************************************************/
  /*! exports provided: default */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony import */ var _ProductCard_vue_vue_type_template_id_2ef8a59e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ProductCard.vue?vue&type=template&id=2ef8a59e& */ "./resources/components/product/ProductCard.vue?vue&type=template&id=2ef8a59e&");
  /* harmony import */ var _ProductCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ProductCard.vue?vue&type=script&lang=js& */ "./resources/components/product/ProductCard.vue?vue&type=script&lang=js&");
  /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
  
  
  
  
  
  /* normalize component */
  
  var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
    _ProductCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
    _ProductCard_vue_vue_type_template_id_2ef8a59e___WEBPACK_IMPORTED_MODULE_0__["render"],
    _ProductCard_vue_vue_type_template_id_2ef8a59e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
    false,
    null,
    null,
    null
    
  )
  
  /* hot reload */
  if (false) { var api; }
  component.options.__file = "resources/components/product/ProductCard.vue"
  /* harmony default export */ __webpack_exports__["default"] = (component.exports);
  
  /***/ }),
  
  /***/ "./resources/components/product/ProductCard.vue?vue&type=script&lang=js&":
  /*!*******************************************************************************!*\
    !*** ./resources/components/product/ProductCard.vue?vue&type=script&lang=js& ***!
    \*******************************************************************************/
  /*! exports provided: default */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ProductCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib??ref--4-0!../../../node_modules/vue-loader/lib??vue-loader-options!./ProductCard.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/components/product/ProductCard.vue?vue&type=script&lang=js&");
  /* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ProductCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); 
  
  /***/ }),
  
  /***/ "./resources/components/product/ProductCard.vue?vue&type=template&id=2ef8a59e&":
  /*!*************************************************************************************!*\
    !*** ./resources/components/product/ProductCard.vue?vue&type=template&id=2ef8a59e& ***!
    \*************************************************************************************/
  /*! exports provided: render, staticRenderFns */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ProductCard_vue_vue_type_template_id_2ef8a59e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./ProductCard.vue?vue&type=template&id=2ef8a59e& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/components/product/ProductCard.vue?vue&type=template&id=2ef8a59e&");
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ProductCard_vue_vue_type_template_id_2ef8a59e___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_ProductCard_vue_vue_type_template_id_2ef8a59e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  
  
  
  /***/ })
  
  }]);