{"version":3,"sources":["webpack:///./src/components/Companies/SearchCompany.vue","webpack:///src/components/Companies/SearchCompany.vue","webpack:///./src/components/Companies/SearchCompany.vue?0071","webpack:///./src/components/Companies/SearchCompany.vue?da07"],"names":["render","_vm","this","_c","_self","staticClass","attrs","mSearchTerm","isSearching","on","startSearchCompanies","_t","key","searchCounter","$t","_e","companies","length","_l","filteredCompanies","company","index","Id","class","_v","_s","Name","DefaultAddress","domProps","$event","selectCompany","morePages","page","getPageData","staticRenderFns","components","Message","SearchBar","Loader","Pagination","CompanyAddress","props","autoSearch","default","type","Boolean","locationId","Number","searchTerm","String","filterCompanyId","data","itemsPerPage","computed","_this","filter","c","created","searchCompanies","beforeDestroy","methods","self","startDate","$options","filters","dateObjectIsoDateString","Date","endDate","companyProvider","getLocationCompanies","then","response","Results","MorePages","finally","$emit","component"],"mappings":"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","file":"js/chunk-2d0ab87d.js?id=7f50a26376f0a59c7e26","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"has-padding-bottom\"},[_c('div',{staticClass:\"columns\"},[_c('SearchBar',{staticClass:\"column\",attrs:{\"searchTerm\":_vm.mSearchTerm,\"isSearching\":_vm.isSearching,\"showLabel\":false},on:{\"startSearch\":_vm.startSearchCompanies}}),_vm._t(\"top\")],2),_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.isSearching)?_c('Loader',{key:\"isLoading\",attrs:{\"height\":100}}):_c('div',{key:\"companies\"},[(_vm.searchCounter === 0)?_c('div',[_c('Message',{attrs:{\"message\":_vm.$t('Components.Companies.CompanyList.Message_NoSearchCount')}})],1):_vm._e(),(!_vm.isSearching && _vm.companies.length === 0 && _vm.searchCounter > 0)?_c('div',[_c('Message',{attrs:{\"message\":_vm.$t('Components.Companies.CompanyList.Message_NoCompaniesFound')}})],1):_vm._e(),_vm._l((_vm.filteredCompanies),function(company,index){return _c('div',{key:company.Id,staticClass:\"card has-margin-bottom\",class:index !== _vm.companies.length - 1\n            ? 'has-margin-bottom'\n            : 'mb-6'},[_c('article',{staticClass:\"media has-padding\"},[_c('div',{staticClass:\"media-content\"},[_c('div',{staticClass:\"content\"},[_c('div',[_c('div',[_c('span',{staticClass:\"has-text-weight-bold\"},[_vm._v(_vm._s(company.Name))])]),_c('div',[_c('CompanyAddress',{attrs:{\"address\":company.DefaultAddress}})],1)])])]),_c('div',{staticClass:\"media-right\"},[_c('button',{staticClass:\"button is-primary is-small\",domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Choose'))},on:{\"click\":function($event){return _vm.selectCompany(company)}}})])])])})],2)],1),_c('div',[((_vm.morePages !== 0 && _vm.page === 1) || _vm.page > 1)?_c('Pagination',{attrs:{\"currentPage\":_vm.page,\"morePages\":_vm.morePages,\"disableControls\":_vm.isSearching},on:{\"pageSelected\":_vm.getPageData}}):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"has-padding-bottom\">\n    <div class=\"columns\">\n      <SearchBar\n        class=\"column\"\n        :searchTerm=\"mSearchTerm\"\n        :isSearching=\"isSearching\"\n        @startSearch=\"startSearchCompanies\"\n        :showLabel=\"false\"\n      />\n      <slot name=\"top\"></slot>\n    </div>\n\n    <transition\n      name=\"fade\"\n      mode=\"out-in\"\n    >\n      <Loader\n        key=\"isLoading\"\n        v-if=\"isSearching\"\n        :height=\"100\"\n      />\n      <div\n        key=\"companies\"\n        v-else\n      >\n        <div v-if=\"searchCounter === 0\">\n          <Message :message=\"\n              $t('Components.Companies.CompanyList.Message_NoSearchCount')\n            \" />\n        </div>\n\n        <div v-if=\"!isSearching && companies.length === 0 && searchCounter > 0\">\n          <Message :message=\"\n              $t('Components.Companies.CompanyList.Message_NoCompaniesFound')\n            \" />\n        </div>\n\n        <div\n          v-for=\"(company, index) in filteredCompanies\"\n          :key=\"company.Id\"\n          class=\"card has-margin-bottom\"\n          :class=\"\n            index !== companies.length - 1\n              ? 'has-margin-bottom'\n              : 'mb-6'\n          \"\n        >\n          <article class=\"media has-padding\">\n            <div class=\"media-content\">\n              <div class=\"content\">\n                <div>\n                  <div>\n                    <span class=\"has-text-weight-bold\">{{ company.Name }}</span>\n                  </div>\n\n                  <div>\n                    <CompanyAddress :address=\"company.DefaultAddress\" />\n                  </div>\n                </div>\n              </div>\n            </div>\n            <div class=\"media-right\">\n              <button\n                @click=\"selectCompany(company)\"\n                class=\"button is-primary is-small\"\n                v-text=\"$t('Form.Control.Choose')\"\n              ></button>\n            </div>\n          </article>\n        </div>\n      </div>\n    </transition>\n\n    <div>\n      <Pagination\n        v-if=\"(morePages !== 0 && page === 1) || page > 1\"\n        :currentPage=\"page\"\n        :morePages=\"morePages\"\n        @pageSelected=\"getPageData\"\n        :disableControls=\"isSearching\"\n      />\n    </div>\n  </div>\n</template>\n\n<script>\nimport companyProvider from '@/providers/company'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n    SearchBar: () => import('@/components/SearchBar'),\n    Loader: () => import('@/components/UI/Loader.vue'),\n    Pagination: () => import('@/components/UI/Pagination'),\n    CompanyAddress: () => import('@/components/Companies/CompanyAddress'),\n  },\n\n  props: {\n    autoSearch: {\n      default: false,\n      type: Boolean,\n    },\n    locationId: {\n      default: 0,\n      type: Number,\n    },\n    searchTerm: {\n      default: '',\n      type: String,\n    },\n    filterCompanyId: {\n      type: Number,\n      default: 0,\n    },\n  },\n\n  data() {\n    return {\n      companies: [],\n      isSearching: false,\n      itemsPerPage: 25,\n      page: 1,\n      morePages: 0,\n      mSearchTerm: this.searchTerm,\n      searchCounter: 0,\n    }\n  },\n\n  computed: {\n    filteredCompanies() {\n      let companies = []\n\n      if (this.companies.length > 0) {\n        if (this.filterCompanyId > 0) {\n          companies = this.companies.filter(\n            (c) => c.Id !== this.filterCompanyId\n          )\n        } else {\n          companies = this.companies\n        }\n      }\n\n      return companies\n    },\n  },\n\n  created() {\n    if (this.autoSearch) {\n      this.searchCompanies()\n    }\n  },\n\n  beforeDestroy() {\n    this.companies = []\n  },\n\n  methods: {\n    startSearchCompanies(searchTerm) {\n      this.mSearchTerm = searchTerm\n      this.page = 1\n      this.morePages = 0\n      this.searchCompanies()\n    },\n\n    getPageData(page) {\n      this.page = page\n      this.searchCompanies()\n    },\n\n    searchCompanies() {\n      let self = this\n\n      if (!self.isSearching) {\n        self.companies = []\n        self.isSearching = true\n        self.searchCounter++\n\n        let startDate = this.$options.filters.dateObjectIsoDateString(new Date());\n        let endDate = this.$options.filters.dateObjectIsoDateString(new Date());\n\n        companyProvider.methods\n          .getLocationCompanies(\n            self.locationId,\n            0,\n            self.mSearchTerm,\n            startDate,\n            endDate,\n            self.page,\n            self.itemsPerPage,\n          )\n          .then((response) => {\n            self.companies = response.data.Results\n            self.morePages = response.data.MorePages\n          })\n          .finally(() => {\n            self.isSearching = false\n          })\n      }\n    },\n\n    selectCompany(company) {\n      this.companies = []\n      this.mSearchTerm = ''\n      this.$emit('companySelected', company)\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchCompany.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchCompany.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SearchCompany.vue?vue&type=template&id=706a0441\"\nimport script from \"./SearchCompany.vue?vue&type=script&lang=js\"\nexport * from \"./SearchCompany.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\nexport default component.exports"],"sourceRoot":""}