{"version":3,"file":"form-base-search-item.mjs","names":[],"sources":["../../../../../../packages/components/form-base/src/form-base-search-item.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref } from 'vue'\n\ndefineOptions({\n  name: 'formBaseSearchItem',\n})\n\nconst visible = ref(false)\nconst visible2 = ref(false)\n\nconst props = defineProps({\n  itemData: {\n    type: Object,\n    default: {},\n  },\n  state1: {\n    type: Object,\n    default: {},\n  },\n  dataList: {\n    type: Array,\n    default: () => [],\n  },\n})\n\nconst emit = defineEmits({\n  add: (value) => value,\n  group: (value) => value,\n  changeCheckbox: (value) => value,\n})\n\nconst methods = {\n  add(item: any) {\n    emit('add', item)\n  },\n  group(item: any) {\n    emit('group', item)\n  },\n  hanldeCheckbox(item: any) {\n    emit('changeCheckbox', item)\n  },\n  hanldeClickVisible2(item: any) {\n    visible2.value = !visible2.value\n  },\n}\n</script>\n\n<template>\n  <div class=\"form-base-search-item\">\n    <template v-if=\"!itemData.isGroup\">\n      <div\n        class=\"form-base-search-item-top\"\n        :class=\"{\n          'form-base-search-item-top-checkbox': itemData.checkboxValue,\n        }\"\n      >\n        <el-checkbox\n          class=\"form-base-search-item-checkbox\"\n          v-model=\"itemData.checkboxValue\"\n          size=\"small\"\n          @change=\"methods.hanldeCheckbox(itemData)\"\n        />\n\n        <el-popover\n          placement=\"bottom-start\"\n          :visible=\"visible\"\n          :width=\"300\"\n          trigger=\"click\"\n        >\n          <div class=\"form-base-search-state\">\n            <div v-for=\"(item, index) in state1\" :key=\"index\">{{ item }}</div>\n          </div>\n          <div>\n            <el-button @click=\"visible = false\">取消</el-button>\n            <el-button type=\"colour-10\" @click=\"visible = false\"\n              >确定</el-button\n            >\n          </div>\n          <template #reference>\n            <div\n              class=\"form-base-search-item-label1\"\n              :style=\"{ marginLeft: itemData.level * 10 + 10 + 'px' }\"\n              @click=\"visible = !visible\"\n            >\n              {{ itemData.fieldName }}\n            </div>\n          </template>\n        </el-popover>\n\n        <el-popover\n          placement=\"bottom-start\"\n          :visible=\"visible2\"\n          :width=\"300\"\n          trigger=\"click\"\n        >\n          <div class=\"form-base-search-state\">\n            <div v-for=\"(item, index) in state1\" :key=\"index\">{{ item }}</div>\n          </div>\n          <div>\n            <el-button @click=\"visible2 = false\">取消</el-button>\n            <el-button type=\"colour-10\" @click=\"visible2 = false\"\n              >确定</el-button\n            >\n          </div>\n          <template #reference>\n            <div\n              class=\"form-base-search-item-label2\"\n              @click=\"methods.hanldeClickVisible2(itemData)\"\n            >\n              包含\n            </div>\n          </template>\n        </el-popover>\n\n        <div class=\"form-base-search-item-label3\"><span>&lt;?&gt;</span></div>\n        <div class=\"form-base-search-item-btn\" @click=\"methods.add(itemData)\">\n          +\n        </div>\n        <div class=\"form-base-search-item-btn\" @click=\"methods.group(itemData)\">\n          <span>()</span>\n          <span>+</span>\n        </div>\n      </div>\n    </template>\n    <template v-if=\"itemData.isGroup\">\n      <div\n        class=\"form-base-search-item-top\"\n        :class=\"{\n          'form-base-search-item-top-checkbox': itemData.checkboxValue,\n        }\"\n      >\n        <el-checkbox\n          class=\"form-base-search-item-checkbox\"\n          v-model=\"itemData.checkboxValue\"\n          size=\"small\"\n          @change=\"methods.hanldeCheckbox(itemData)\"\n        />\n        <div\n          class=\"form-base-search-item-label6\"\n          :style=\"{ marginLeft: itemData.level * 10 + 'px' }\"\n        >\n          （\n        </div>\n      </div>\n\n      <form-base-search-item\n        v-for=\"(item2, index2) in itemData.children\"\n        :key=\"index2\"\n        :item-data=\"item2\"\n        :state1=\"props.state1\"\n        :dataList=\"props.dataList\"\n        @add=\"methods.add\"\n        @group=\"methods.group\"\n        @changeCheckbox=\"methods.hanldeCheckbox\"\n      ></form-base-search-item>\n\n      <div\n        class=\"form-base-search-item-top\"\n        :class=\"{\n          'form-base-search-item-top-checkbox': itemData.checkboxValue,\n        }\"\n      >\n        <div\n          class=\"form-base-search-item-label6\"\n          :style=\"{ marginLeft: itemData.level * 10 + 14 + 'px' }\"\n        >\n          &nbsp;&nbsp;）\n        </div>\n        <div class=\"form-base-search-item-btn\" @click=\"methods.add(itemData)\">\n          +\n        </div>\n        <div class=\"form-base-search-item-btn\" @click=\"methods.group(itemData)\">\n          <span>()</span>\n          <span>+</span>\n        </div>\n      </div>\n    </template>\n  </div>\n</template>\n"],"mappings":""}