{"version":3,"sources":["webpack:///./src/views/TicketSubCategories/List.vue?1701","webpack:///src/views/TicketSubCategories/List.vue","webpack:///./src/views/TicketSubCategories/List.vue?d89a","webpack:///./src/views/TicketSubCategories/List.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","$t","staticClass","on","$event","dialog","_v","model","value","callback","$$v","filter","expression","items","fields","currentPage","perPage","filterOn","sortBy","sortDesc","sortDirection","onFiltered","scopedSlots","_u","key","fn","row","editItem","item","deleteItem","pageOptions","totalRows","ref","formTitle","stopPropagation","preventDefault","save","apply","arguments","errors","length","editedItem","$set","_s","tags","types","deleteItemConfirm","closeDelete","dialogDelete","staticRenderFns","components","ValidationProvider","ValidationObserver","data","editedIndex","name","tag_id","defaultItem","label","sortable","class","formatter","text","infoModal","id","title","content","computed","sortOptions","map","val","mapActions","initialize","info","msg","component","props","variant","close","payload","then","filteredItems"],"mappings":"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","file":"Subtags~d95685ee.25b984f7.js?version=1727726453033","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{attrs:{\"title\":_vm.$t('Sous catégories des tickets')}},[_c('b-row',[_c('Can',{attrs:{\"i\":\"create\",\"a\":\"ticket_subtag\"}},[_c('b-col',{staticClass:\"my-1\",attrs:{\"sm\":\"5\",\"md\":\"2\"}},[_c('b-button',{attrs:{\"variant\":\"outline-primary\"},on:{\"click\":function($event){_vm.dialog = !_vm.dialog}}},[_vm._v(\" Ajouter \")])],1)],1),_c('b-col',{staticClass:\"my-1\",attrs:{\"sm\":\"7\",\"md\":\"10\"}},[_c('b-form-group',{staticClass:\"mb-0\",attrs:{\"label\":_vm.$t('Filtrer'),\"label-for\":\"filter-input\",\"label-cols-sm\":\"3\",\"label-align-sm\":\"right\",\"label-size\":\"sm\"}},[_c('b-input-group',{attrs:{\"size\":\"sm\"}},[_c('b-form-input',{attrs:{\"id\":\"filter-input\",\"type\":\"search\",\"placeholder\":\"Filtrez vos résultats\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}}),_c('b-input-group-append',[_c('b-button',{attrs:{\"disabled\":!_vm.filter},on:{\"click\":function($event){_vm.filter = ''}}},[_vm._v(\"Clear\")])],1)],1)],1)],1)],1),_c('b-table',{attrs:{\"items\":_vm.items,\"fields\":_vm.fields,\"current-page\":_vm.currentPage,\"per-page\":_vm.perPage,\"filter\":_vm.filter,\"filter-included-fields\":_vm.filterOn,\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"sort-direction\":_vm.sortDirection,\"show-empty\":\"\"},on:{\"update:sortBy\":function($event){_vm.sortBy=$event},\"update:sort-by\":function($event){_vm.sortBy=$event},\"update:sortDesc\":function($event){_vm.sortDesc=$event},\"update:sort-desc\":function($event){_vm.sortDesc=$event},\"filtered\":_vm.onFiltered},scopedSlots:_vm._u([{key:\"cell(actions)\",fn:function(row){return [_c('b-button-group',[_c('Can',{attrs:{\"i\":\"update\",\"a\":\"ticket_subtag\"}},[_c('b-btn',{attrs:{\"variant\":\"outline-primary\"},on:{\"click\":function($event){return _vm.editItem(row.item)}}},[_c('feather-icon',{attrs:{\"icon\":\"Edit2Icon\"}})],1)],1),_c('Can',{attrs:{\"i\":\"delete\",\"a\":\"ticket_subtag\"}},[_c('b-btn',{attrs:{\"variant\":\"outline-primary\"},on:{\"click\":function($event){return _vm.deleteItem(row.item)}}},[_c('feather-icon',{attrs:{\"icon\":\"TrashIcon\"}})],1)],1)],1)]}}])}),_c('b-row',[_c('b-col',{staticClass:\"my-1\",attrs:{\"sm\":\"5\",\"md\":\"2\"}},[_c('b-form-group',{staticClass:\"mb-0\",attrs:{\"label\":_vm.$t('Per page'),\"label-for\":\"per-page-select\",\"label-cols-sm\":\"6\",\"label-cols-md\":\"4\",\"label-cols-lg\":\"3\",\"label-align-sm\":\"right\",\"label-size\":\"sm\"}},[_c('b-form-select',{attrs:{\"id\":\"per-page-select\",\"options\":_vm.pageOptions,\"size\":\"sm\"},model:{value:(_vm.perPage),callback:function ($$v) {_vm.perPage=$$v},expression:\"perPage\"}})],1)],1),_c('b-col',{staticClass:\"my-1\",attrs:{\"sm\":\"7\",\"md\":\"10\"}},[_c('b-pagination',{staticClass:\"my-0\",attrs:{\"total-rows\":_vm.totalRows,\"per-page\":_vm.perPage,\"align\":\"fill\",\"size\":\"sm\"},model:{value:(_vm.currentPage),callback:function ($$v) {_vm.currentPage=$$v},expression:\"currentPage\"}})],1)],1),_c('b-modal',{ref:\"modal\",attrs:{\"id\":\"modal-prevent-closing\",\"title\":_vm.formTitle,\"hide-footer\":\"\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('validation-observer',{ref:\"form\"},[_c('b-form',{staticClass:\"auth-login-form mt-2\",on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('Nom'),\"label-for\":\"name\"}},[_c('validation-provider',{attrs:{\"name\":_vm.$t('Nom'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-input',{attrs:{\"id\":\"name\",\"state\":errors.length > 0 ? false : null,\"name\":\"name\"},model:{value:(_vm.editedItem.name),callback:function ($$v) {_vm.$set(_vm.editedItem, \"name\", $$v)},expression:\"editedItem.name\"}}),_c('small',{staticClass:\"text-danger\"},[_vm._v(_vm._s(errors[0]))])]}}])})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('Description'),\"label-for\":\"description\"}},[_c('validation-provider',{attrs:{\"name\":_vm.$t('Description'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-textarea',{attrs:{\"id\":\"description\",\"state\":errors.length > 0 ? false : null,\"name\":\"description\"},model:{value:(_vm.editedItem.description),callback:function ($$v) {_vm.$set(_vm.editedItem, \"description\", $$v)},expression:\"editedItem.description\"}}),_c('small',{staticClass:\"text-danger\"},[_vm._v(_vm._s(errors[0]))])]}}])})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('Categorie'),\"label-for\":\"category\"}},[_c('validation-provider',{attrs:{\"name\":_vm.$t('Categorie'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-select',{attrs:{\"id\":\"category\",\"options\":_vm.tags,\"text-field\":\"name\",\"value-field\":\"id\",\"state\":errors.length > 0 ? false : null,\"name\":\"category\"},model:{value:(_vm.editedItem.tag_id),callback:function ($$v) {_vm.$set(_vm.editedItem, \"tag_id\", $$v)},expression:\"editedItem.tag_id\"}}),_c('small',{staticClass:\"text-danger\"},[_vm._v(_vm._s(errors[0]))])]}}])})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('Type'),\"label-for\":\"type\"}},[_c('validation-provider',{attrs:{\"name\":_vm.$t('Type'),\"rules\":\"required\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b-form-select',{attrs:{\"id\":\"type\",\"options\":_vm.types,\"text-field\":\"name\",\"value-field\":\"id\",\"state\":errors.length > 0 ? false : null,\"name\":\"type\"},model:{value:(_vm.editedItem.type_id),callback:function ($$v) {_vm.$set(_vm.editedItem, \"type_id\", $$v)},expression:\"editedItem.type_id\"}}),_c('small',{staticClass:\"text-danger\"},[_vm._v(_vm._s(errors[0]))])]}}])})],1),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\",\"block\":\"\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t(\"Enregistrer\"))+\" \")])],1)],1)],1),_c('b-modal',{attrs:{\"hide-footer\":\"\",\"max-width\":\"500px\"},on:{\"OK\":_vm.deleteItemConfirm,\"cancel\":_vm.closeDelete},model:{value:(_vm.dialogDelete),callback:function ($$v) {_vm.dialogDelete=$$v},expression:\"dialogDelete\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Are you sure you want to delete this item'))+\"? \"),_c('b-button',{staticClass:\"mt-2\",attrs:{\"variant\":\"outline-danger\",\"block\":\"\"},on:{\"click\":_vm.deleteItemConfirm}},[_vm._v(_vm._s(_vm.$t('Delete')))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <b-card :title=\"$t('Sous catégories des tickets')\">\n    <!-- User Interface controls -->\n    <b-row>\n      <Can\n        i=\"create\"\n        a=\"ticket_subtag\"\n      >\n        <b-col\n          sm=\"5\"\n          md=\"2\"\n          class=\"my-1\"\n        >\n          <b-button\n            variant=\"outline-primary\"\n            @click=\"dialog = !dialog\"\n          >\n            Ajouter\n          </b-button>\n        </b-col>\n      </Can>\n      <b-col\n        sm=\"7\"\n        md=\"10\"\n        class=\"my-1\"\n      >\n        <b-form-group\n          :label=\"$t('Filtrer')\"\n          label-for=\"filter-input\"\n          label-cols-sm=\"3\"\n          label-align-sm=\"right\"\n          label-size=\"sm\"\n          class=\"mb-0\"\n        >\n          <b-input-group size=\"sm\">\n            <b-form-input\n              id=\"filter-input\"\n              v-model=\"filter\"\n              type=\"search\"\n              placeholder=\"Filtrez vos résultats\"\n            />\n\n            <b-input-group-append>\n              <b-button\n                :disabled=\"!filter\"\n                @click=\"filter = ''\"\n              >Clear</b-button>\n            </b-input-group-append>\n          </b-input-group>\n        </b-form-group>\n      </b-col>\n    </b-row>\n    <!-- Main table element -->\n    <b-table\n      :items=\"items\"\n      :fields=\"fields\"\n      :current-page=\"currentPage\"\n      :per-page=\"perPage\"\n      :filter=\"filter\"\n      :filter-included-fields=\"filterOn\"\n      :sort-by.sync=\"sortBy\"\n      :sort-desc.sync=\"sortDesc\"\n      :sort-direction=\"sortDirection\"\n      show-empty\n      @filtered=\"onFiltered\"\n    >\n      <template #cell(actions)=\"row\">\n        <!-- <Can I=\"delete\" a=\"ticket_subtag\"> -->\n        <!-- <span class=\"mdi mdi-cog-play\" @click=\"syncAction(row.item)\"></span> -->\n        <!-- </Can> -->\n        <b-button-group>\n          <Can\n            i=\"update\"\n            a=\"ticket_subtag\"\n          >\n            <b-btn\n              variant=\"outline-primary\"\n              @click=\"editItem(row.item)\"\n            >\n              <feather-icon icon=\"Edit2Icon\" />\n            </b-btn>\n          </Can>\n          <Can\n            i=\"delete\"\n            a=\"ticket_subtag\"\n          >\n            <b-btn\n              variant=\"outline-primary\"\n              @click=\"deleteItem(row.item)\"\n            >\n              <feather-icon icon=\"TrashIcon\" />\n            </b-btn>\n          </Can>\n        </b-button-group>\n      </template>\n    </b-table>\n    <b-row>\n      <b-col\n        sm=\"5\"\n        md=\"2\"\n        class=\"my-1\"\n      >\n        <b-form-group\n          :label=\"$t('Per page')\"\n          label-for=\"per-page-select\"\n          label-cols-sm=\"6\"\n          label-cols-md=\"4\"\n          label-cols-lg=\"3\"\n          label-align-sm=\"right\"\n          label-size=\"sm\"\n          class=\"mb-0\"\n        >\n          <b-form-select\n            id=\"per-page-select\"\n            v-model=\"perPage\"\n            :options=\"pageOptions\"\n            size=\"sm\"\n          />\n        </b-form-group>\n      </b-col>\n\n      <b-col\n        sm=\"7\"\n        md=\"10\"\n        class=\"my-1\"\n      >\n        <b-pagination\n          v-model=\"currentPage\"\n          :total-rows=\"totalRows\"\n          :per-page=\"perPage\"\n          align=\"fill\"\n          size=\"sm\"\n          class=\"my-0\"\n        />\n      </b-col>\n    </b-row>\n\n    <!-- Info modal -->\n    <b-modal\n      id=\"modal-prevent-closing\"\n      ref=\"modal\"\n      v-model=\"dialog\"\n      :title=\"formTitle\"\n      hide-footer\n    >\n      <validation-observer ref=\"form\">\n        <b-form\n          class=\"auth-login-form mt-2\"\n          @submit.stop.prevent=\"save\"\n        >\n          <!-- Nom -->\n          <b-form-group\n            :label=\"$t('Nom')\"\n            label-for=\"name\"\n          >\n            <validation-provider\n              v-slot=\"{ errors }\"\n              :name=\"$t('Nom')\"\n              rules=\"required\"\n            >\n              <b-form-input\n                id=\"name\"\n                v-model=\"editedItem.name\"\n                :state=\"errors.length > 0 ? false : null\"\n                name=\"name\"\n              />\n              <small class=\"text-danger\">{{ errors[0] }}</small>\n            </validation-provider>\n          </b-form-group>\n          <!-- Nom -->\n          <b-form-group\n            :label=\"$t('Description')\"\n            label-for=\"description\"\n          >\n            <validation-provider\n              v-slot=\"{ errors }\"\n              :name=\"$t('Description')\"\n              rules=\"required\"\n            >\n              <b-form-textarea\n                id=\"description\"\n                v-model=\"editedItem.description\"\n                :state=\"errors.length > 0 ? false : null\"\n                name=\"description\"\n              />\n              <small class=\"text-danger\">{{ errors[0] }}</small>\n            </validation-provider>\n          </b-form-group>\n          <!-- Tags -->\n          <b-form-group\n            :label=\"$t('Categorie')\"\n            label-for=\"category\"\n          >\n            <validation-provider\n              v-slot=\"{ errors }\"\n              :name=\"$t('Categorie')\"\n              rules=\"required\"\n            >\n              <b-form-select\n                id=\"category\"\n                v-model=\"editedItem.tag_id\"\n                :options=\"tags\"\n                text-field=\"name\"\n                value-field=\"id\"\n                :state=\"errors.length > 0 ? false : null\"\n                name=\"category\"\n              />\n              <small class=\"text-danger\">{{ errors[0] }}</small>\n            </validation-provider>\n          </b-form-group>\n\n          <!-- Tags -->\n          <b-form-group\n            :label=\"$t('Type')\"\n            label-for=\"type\"\n          >\n            <validation-provider\n              v-slot=\"{ errors }\"\n              :name=\"$t('Type')\"\n              rules=\"required\"\n            >\n              <b-form-select\n                id=\"type\"\n                v-model=\"editedItem.type_id\"\n                :options=\"types\"\n                text-field=\"name\"\n                value-field=\"id\"\n                :state=\"errors.length > 0 ? false : null\"\n                name=\"type\"\n              />\n              <small class=\"text-danger\">{{ errors[0] }}</small>\n            </validation-provider>\n          </b-form-group>\n\n          <b-button\n            type=\"submit\"\n            variant=\"primary\"\n            block\n            @click=\"save\"\n          >\n            {{ $t(\"Enregistrer\") }}\n          </b-button>\n        </b-form>\n      </validation-observer>\n    </b-modal>\n    <b-modal\n      v-model=\"dialogDelete\"\n      hide-footer\n      max-width=\"500px\"\n      @OK=\"deleteItemConfirm\"\n      @cancel=\"closeDelete\"\n    >\n    {{$t('Are you sure you want to delete this item')}}?\n      <b-button\n        class=\"mt-2\"\n        variant=\"outline-danger\"\n        block\n        @click=\"deleteItemConfirm\"\n      >{{$t('Delete')}}</b-button>\n    </b-modal>\n  </b-card>\n</template>\n\n<script>\nimport { ValidationProvider, ValidationObserver } from 'vee-validate'\n\nimport { mapActions } from 'vuex'\n\nimport ToastificationContent from '@core/components/toastification/ToastificationContent.vue'\n\nexport default {\n  components: {\n    ValidationProvider,\n    ValidationObserver,\n  },\n  data() {\n    return {\n      tags: [],\n      editedIndex: -1,\n      editedItem: {\n        name: '',\n        tag_id: '',\n      },\n      defaultItem: {\n        name: '',\n        tag_id: '',\n      },\n      items: [],\n      fields: [\n        {\n          key: 'name',\n          label: 'Nom',\n          sortable: true,\n          sortDirection: 'desc',\n        },\n        {\n          key: 'description',\n          label: 'Description',\n          sortable: true,\n          class: 'text-center',\n        },\n        {\n          key: 'tag.name',\n          label: 'category',\n          sortable: true,\n          sortDirection: 'desc',\n        },\n        {\n          key: 'type.name',\n          label: 'Type',\n          sortable: true,\n          sortDirection: 'desc',\n        },\n        {\n          key: 'created_at',\n          label: 'Créé à',\n          sortable: true,\n          formatter: value => (value\n            ? this.$moment(value).format('DD/MM/YYYY')\n            : this.$moment(new Date()).format('DD/MM/YYYY')),\n        },\n        { key: 'actions', label: 'Actions' },\n      ],\n      totalRows: 1,\n      currentPage: 1,\n      perPage: 15,\n      pageOptions: [5, 10, 15, { value: 100, text: 'Show a lot' }],\n      sortBy: '',\n      sortDesc: false,\n      sortDirection: 'asc',\n      filter: null,\n      filterOn: [],\n      infoModal: {\n        id: 'info-modal',\n        title: '',\n        content: '',\n      },\n      dialog: false,\n      dialogDelete: false,\n    }\n  },\n  computed: {\n    formTitle() {\n      return this.editedIndex === -1\n        ? this.$t('New Item')\n        : this.$t('Edit Item')\n    },\n  },\n  computed: {\n    sortOptions() {\n      // Create an options list from our fields\n      return this.fields\n        .filter(f => f.sortable)\n        .map(f => ({ text: f.label, value: f.key }))\n    },\n  },\n  watch: {\n    dialog(val) {\n      val || this.close()\n    },\n    dialogDelete(val) {\n      val || this.closeDelete()\n    },\n  },\n  async mounted() {\n    await this.initialize()\n    // Set the initial number of items\n    //  {\n    //       id: 25,\n    //       name: \"Welcome Call (BackOffice)\",\n    //       display_name: \"Welcome Call (BackOffice)\",\n    //       type: \"category\",\n    //       created_at: \"2021-11-12T11:23:33.000000Z\",\n    //       updated_at: \"2021-11-12T11:23:33.000000Z\",\n    //       tags_count: 0,\n    //       tags: [],\n    //     },\n  },\n  methods: {\n    ...mapActions('uhub', [\n      'GET_TAGS',\n      'GET_SUBTAGS',\n      'ADD_SUBTAG',\n      'EDIT_SUBTAG',\n      'DELETE_SUBTAG',\n      'GET_TYPES',\n    ]),\n    async initialize() {\n      this.GET_SUBTAGS().then(res => {\n        this.items = res\n\n        this.totalRows = this.items.length\n        // this.currentPage = json.current_page;\n        // this.perPage = json.per_page;\n      })\n      this.GET_TYPES().then(res => {\n        this.types = res\n\n        this.totalRows = this.items.length\n        // this.currentPage = json.current_page;\n        // this.perPage = json.per_page;\n      })\n      this.GET_TAGS().then(res => {\n        this.tags = res\n\n        this.totalRows = this.items.length\n        // this.currentPage = json.current_page;\n        // this.perPage = json.per_page;\n      })\n      // this.items=[]\n      // this.tags=[{\n      //   id:1,\n      //   name:\"Categorie 1\",\n\n      // }]\n      // this.totalRows = this.items.length;\n    },\n    info(item, msg) {\n      // this.infoModal.title = `Row index: ${index}`;\n      // this.infoModal.content = JSON.stringify(item, null, 2);\n      // this.$root.$emit(\"bv::show::modal\", this.infoModal.id, button);\n      this.infoModal.title = msg\n      this.dialog = true\n    },\n    deleteItem(item) {\n      this.editedIndex = this.items.indexOf(item)\n      this.editedItem = { ...item }\n      this.dialogDelete = true\n    },\n\n    deleteItemConfirm() {\n      // this.items.splice(this.editedIndex, 1);\n      this.DELETE_SUBTAG(this.editedItem.id).then(() => {\n        this.$toast({\n          component: ToastificationContent,\n          props: {\n            title: this.$t('Sous Catégorie supprimé avec success'),\n            variant: 'success',\n          },\n        })\n        // this.items.splice(this.editedIndex, 1);\n        this.initialize()\n      })\n\n      this.closeDelete()\n    },\n    closeDelete() {\n      this.dialogDelete = false\n      this.$nextTick(() => {\n        this.editedItem = { ...this.defaultItem }\n        this.editedIndex = -1\n      })\n    },\n    editItem(item) {\n      this.editedIndex = this.items.indexOf(item)\n      this.editedItem = { ...item }\n      this.dialog = true\n    },\n    close() {\n      this.dialog = false\n      this.$nextTick(() => {\n        this.editedItem = { ...this.defaultItem }\n        this.editedIndex = -1\n      })\n    },\n    save() {\n      this.$refs.form.validate().then(async success => {\n        if (success) {\n          if (this.editedIndex > -1) {\n            this.EDIT_SUBTAG({\n              id: this.editedItem.id,\n              payload: this.editedItem,\n            }).then(() => {\n              // Object.assign(this.items[this.editedIndex], res);\n              this.$toast({\n                component: ToastificationContent,\n                props: {\n                  title: this.$t('Sous Catégorie modifié avec success'),\n                  variant: 'success',\n                },\n              })\n              this.initialize()\n            })\n          } else {\n            this.ADD_SUBTAG(this.editedItem).then(() => {\n              this.$toast({\n                component: ToastificationContent,\n                props: {\n                  title: this.$t('Sous Catégorie ajouté avec success'),\n                  variant: 'success',\n                },\n              })\n              this.initialize()\n            })\n            // this.items.push(this.editedItem);\n          }\n          this.close()\n        }\n      })\n    },\n    onFiltered(filteredItems) {\n      // Trigger pagination to update the number of buttons/pages due to filtering\n      this.totalRows = filteredItems.length\n      this.currentPage = 1\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!./List.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!./List.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=6a2bcf10&\"\nimport script from \"./List.vue?vue&type=script&lang=js&\"\nexport * from \"./List.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":""}