{"version":3,"file":"DragHandler.jsx","sourceRoot":"lib/","sources":["widgets/AuxToolWidget/DragHandler.tsx"],"names":[],"mappings":";;;AACA,sDAAgD;AAChD,4CAA0C;AAC1C,qCAAqD;AACrD,uCAAuC;AACvC,sDAA8C;AAC9C,2BAAqC;AAOxB,QAAA,WAAW,GAAG,IAAA,uBAAQ,EACjC,IAAA,qBAAe,EAAC;IACd,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAA4B,EAAE,EAAE;IACvD,KAAK,EAAL,UAAM,KAAK;QACT,IAAM,WAAW,GAAG,IAAA,mBAAW,GAAE,CAAA;QACjC,IAAM,KAAK,GAAG,IAAA,iBAAQ,GAAE,CAAA;QACxB,IAAM,SAAS,GAAG,IAAA,iBAAS,EAAC,kBAAkB,CAAC,CAAA;QAE/C,OAAO;;YACL,IAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAA;YAC9B,IAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAA;YAClC,IAAM,IAAI,GAAG,KAAK,CAAC,IAAK,CAAA;YACxB,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBAAE,OAAO,IAAI,CAAA;YACxD,IAAM,YAAY;gBAChB,GAAC,QAAQ,CAAC,KAAK,CAAC,uBAAwB,IAAG,MAAM;mBAClD,CAAA;YACD,OAAO,CACL,CAAC,qBAAM,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CACpD;YAAA,CAAC,uBAAU,CAAC,KAAK,CAAC,MAAM,EAC1B;UAAA,EAAE,qBAAM,CAAC,CACV,CAAA;QACH,CAAC,CAAA;IACH,CAAC;CACF,CAAC,CAEH,CAAA;AAED,mBAAW,CAAC,WAAW,GAAG,aAAa,CAAA","sourcesContent":["import { TreeNode } from '@designable/core'\nimport { observer } from '@formily/reactive-vue'\nimport { IconWidget } from '../IconWidget'\nimport { useDesigner, usePrefix, } from '../../hooks'\nimport { useStyle } from '../../shared'\nimport { Button } from '@gaoding/gd-antd-plus'\nimport { defineComponent } from 'vue'\nimport { PropType } from 'vue'\n\nexport interface IDragHandlerProps {\n  node: TreeNode\n}\n\nexport const DragHandler = observer(\n  defineComponent({\n    name: 'DragHandler',\n    props: { node: { type: Object as PropType<TreeNode> } },\n    setup(props) {\n      const designerRef = useDesigner()\n      const style = useStyle()\n      const prefixRef = usePrefix('aux-drag-handler')\n\n      return () => {\n        const prefix = prefixRef.value\n        const designer = designerRef.value\n        const node = props.node!\n        if (node === node.root || !node.allowDrag()) return null\n        const handlerProps = {\n          [designer.props.nodeDragHandlerAttrName!]: 'true',\n        }\n        return (\n          <Button {...handlerProps} class={prefix} style={style}>\n            <IconWidget infer=\"Move\" />\n          </Button>\n        )\n      }\n    }\n  })\n\n)\n\nDragHandler.displayName = 'DragHandler'\n"]}