{"version":3,"file":"table-search-wrapper.mjs","sources":["../../../../../../packages/components/page-table-v2/src/table-search-wrapper.vue"],"sourcesContent":["<template>\n  <table-search\n    v-if=\"reloaded\"\n    :show-search-bar=\"searchItems.length > 0\"\n    :show-adv-search=\"showAdvSearch\"\n    :hide-header-line=\"hideHeaderLine\"\n    :show-reset-at-simple-mode=\"showResetAtSimpleMode\"\n    @search=\"searchBarChanged\"\n    @reset=\"(...args) => $emit('reset', ...args)\"\n    @change-height=\"setContentHeight\"\n  >\n    <template #default=\"searchForm\">\n      <hl-form-item\n        v-for=\"item in searchItems\"\n        :key=\"item.name\"\n        :label=\"item.label\"\n        :prop=\"item.name\"\n      >\n        <hl-time-picker\n          v-if=\"item.type === 'timepicker'\"\n          v-model=\"searchForm[item.name]\"\n          v-bind=\"getDateTimeProps(item)\"\n        />\n        <hl-date-picker\n          v-else-if=\"isDatePicker(item.type)\"\n          v-model=\"searchForm[item.name]\"\n          :type=\"item.type\"\n          v-bind=\"getDateTimeProps(item)\"\n        />\n        <hl-input\n          v-else-if=\"item.type === 'input'\"\n          v-model=\"searchForm[item.name]\"\n          v-bind=\"getInputProps(item)\"\n        />\n        <template v-else-if=\"item.type === 'slot'\">\n          <slot\n            :name=\"item.slotName\"\n            :value=\"searchForm[item.name]\"\n            :item=\"item\"\n            :search-form=\"searchForm\"\n          >\n          </slot>\n        </template>\n        <hl-select\n          v-else-if=\"item.type === 'select' || !item.type\"\n          v-model=\"searchForm[item.name]\"\n          v-bind=\"getSelectProps(item)\"\n        >\n          <hl-option\n            v-for=\"opt in item.options\"\n            :key=\"getKey(item, opt)\"\n            :label=\"getLabel(item, opt)\"\n            :value=\"getKey(item, opt)\"\n          />\n        </hl-select>\n      </hl-form-item>\n    </template>\n  </table-search>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, onMounted, PropType, watch, ref, nextTick } from 'vue'\nimport { HlFormItem, HlDatePicker, HlTimePicker, HlInput, HlSelect, HlOption } from 'hongluan-ui'\nimport { SelectorItem } from 'hongluan-business-ui'\nimport TableSearch from './table-search'\nimport { Utils } from './utils'\nimport { TagItem } from './types'\n\nexport default defineComponent({\n  components: { HlFormItem, HlDatePicker, HlTimePicker, HlInput, HlSelect, HlOption, TableSearch },\n  props: {\n    showAdvSearch: {\n      type: Boolean,\n      default: true,\n    },\n    // 搜索条件\n    searchItems: {\n      type: Array as PropType<SelectorItem[]>,\n      default: () => [],\n    },\n    hideHeaderLine: {\n      type: Boolean,\n      default: false,\n    },\n    showResetAtSimpleMode: Boolean,\n  },\n  emits: ['search', 'reset', 'change-height'],\n  setup(props, { emit }) {\n    const reloaded = ref(true)\n    const { getKey, getLabel } = Utils\n\n    const isDatePicker = (type: string) => {\n      return 'year/month/date/dates/week/datetime/datetimerange/daterange/monthrange'.indexOf(type) !== -1\n    }\n    const dateRangePopperProps = (type: string) => {\n      const singleList = ['year', 'month', 'date', 'dates', 'week', 'datetime']\n      const rangeList = ['datetimerange', 'daterange', 'monthrange']\n      let obj = {}\n      if (rangeList.includes(type)) {\n        obj = {\n          popperClass: 'custom-date-range-picker-popper',\n          popperOptions: {\n            modifiers: [\n              {\n                name: 'offset',\n                options: {\n                  offset: [-50, 0],\n                },\n              },\n              {\n                name: 'flip',\n                options: {\n                  fallbackPlacements: ['bottom'],\n                  allowedAutoPlacements: ['bottom'],\n                },\n              },\n            ],\n          },\n        }\n      } else if (singleList.includes(type)) {\n        obj = {\n          popperOptions: {\n            modifiers: [\n              {\n                name: 'flip',\n                options: {\n                  fallbackPlacements: ['bottom'],\n                  allowedAutoPlacements: ['bottom'],\n                },\n              },\n            ],\n          },\n        }\n      }\n      return obj\n    }\n    const getDateTimeProps = (item: SelectorItem) => {\n      // eslint-disable-next-line @typescript-eslint/no-unused-vars\n      const { span: _, value: __, ...others } = item\n      return {\n        ...others,\n        ...dateRangePopperProps(item.type),\n      }\n    }\n    const getInputProps = (item: SelectorItem) => {\n      // eslint-disable-next-line @typescript-eslint/no-unused-vars\n      const { span: _, value: __, ...others } = item\n      return others\n    }\n    const getSelectProps = (item: SelectorItem) => {\n      // eslint-disable-next-line @typescript-eslint/no-unused-vars\n      const { options: _, value: __, prop: ___, ...others } = item\n      return others\n    }\n\n    const searchBarChanged = (searchArr: TagItem[], searchType: number) => {\n      const result = Utils.getSearchTags(searchArr, props.searchItems)\n      emit('search', result, searchType)\n    }\n    const setContentHeight = (val: number) => {\n      emit('change-height', val)\n    }\n\n    const initChange = () => {\n      const searchArr = props.searchItems.filter(si => Array.isArray(si.value) ? si.value.length : (si.value || si.value === 0)).map(si => ({\n        key: si.name,\n        label: si.label,\n        value: si.value,\n        valueName: '',\n      }))\n      searchBarChanged(searchArr as TagItem[], 2)\n    }\n\n    watch(() => props.searchItems, async () => {\n      reloaded.value = false\n      await nextTick()\n      reloaded.value = true\n      initChange()\n    }, {\n      deep: true,\n    })\n\n    onMounted(() => {\n      initChange()\n    })\n\n    return {\n      reloaded,\n      getKey,\n      getLabel,\n      isDatePicker,\n      getDateTimeProps,\n      getInputProps,\n      getSelectProps,\n      setContentHeight,\n      searchBarChanged,\n    }\n  },\n})\n</script>\n"],"names":["_openBlock","_createBlock","_withCtx","_createElementBlock","_Fragment","_renderList","_mergeProps","_renderSlot"],"mappings":"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"}