{"version":3,"file":"tree-select-option.mjs","names":[],"sources":["../../../../../../packages/components/tree-select/src/tree-select-option.ts"],"sourcesContent":["import { defineComponent, getCurrentInstance, nextTick, watch } from 'vue'\nimport { ElOption } from '@element-plus/components/select'\n\nconst component = defineComponent({\n  extends: ElOption,\n  setup(props, ctx) {\n    const result = (ElOption.setup as NonNullable<any>)(props, ctx)\n\n    // use methods.selectOptionClick\n    delete result.selectOptionClick\n\n    const vm = (getCurrentInstance() as NonNullable<any>).proxy\n\n    // Fix: https://github.com/element-plus/element-plus/issues/7917\n    // `el-option` will delete the cache before unmount,\n    // This is normal for flat arrays `<el-select><el-option v-for=\"3\"></el-select>`,\n    // Because the same node key does not create a difference node,\n    // But in tree data, the same key at different levels will create diff nodes,\n    // So the destruction of `el-option` in `nextTick` will be slower than\n    // the creation of new `el-option`, which will delete the new node,\n    // here restore the deleted node.\n    // @link https://github.com/element-plus/element-plus/blob/6df6e49db07b38d6cc3b5e9a960782bd30879c11/packages/components/select/src/option.vue#L78\n    nextTick(() => {\n      if (!result.select.states.cachedOptions.get(vm.value)) {\n        result.select.onOptionCreate(vm)\n      }\n    })\n\n    watch(\n      () => ctx.attrs.visible,\n      (val) => {\n        nextTick(() => {\n          result.states.visible = val\n        })\n      },\n      {\n        immediate: true,\n      }\n    )\n\n    return result\n  },\n  methods: {\n    selectOptionClick() {\n      // $el.parentElement => el-tree-node__content\n      this.$el.parentElement.click()\n    },\n  },\n})\n\nexport default component\n"],"mappings":";;;;AAGA,MAAM,YAAY,gBAAgB;CAChC,SAAS;CACT,MAAM,OAAO,KAAK;EAChB,MAAM,SAAU,SAAS,MAA2B,OAAO,IAAI;AAG/D,SAAO,OAAO;EAEd,MAAM,KAAM,oBAAoB,CAAsB;AAWtD,iBAAe;AACb,OAAI,CAAC,OAAO,OAAO,OAAO,cAAc,IAAI,GAAG,MAAM,CACnD,QAAO,OAAO,eAAe,GAAG;IAElC;AAEF,cACQ,IAAI,MAAM,UACf,QAAQ;AACP,kBAAe;AACb,WAAO,OAAO,UAAU;KACxB;KAEJ,EACE,WAAW,MACZ,CACF;AAED,SAAO;;CAET,SAAS,EACP,oBAAoB;AAElB,OAAK,IAAI,cAAc,OAAO;IAEjC;CACF,CAAC"}