{"version":3,"file":"index.jsx","sourceRoot":"lib/","sources":["widgets/ViewToolsWidget/index.tsx"],"names":[],"mappings":";;;;;;AAAA,sDAA2D;AAC3D,sDAAgD;AAEhD,4CAA0C;AAC1C,qCAAqD;AACrD,qCAA0C;AAE1C,0DAA4B;AAQ5B,IAAM,wBAAwB,GAAG,IAAA,0BAAe,EAAC;IAC/C,KAAK,EAAE;QACL,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,cAAM,OAAA,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,EAArC,CAAqC,EAAE;KAC3E;IACD,KAAK,YAAC,KAAK;QACT,IAAM,YAAY,GAAG,IAAA,oBAAY,GAAE,CAAA;QACnC,IAAM,SAAS,GAAG,IAAA,iBAAS,EAAC,YAAY,CAAC,CAAA;QAEzC,OAAO;;YAAM,OAAA,CACX,CAAC,0BAAW,CAAC,KAAK,CAAC,CAAC,IAAA,oBAAG,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CACvC;QAAA,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CACnC,CAAC,qBAAM,CACL,QAAQ,CAAC,CAAC,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,MAAK,YAAY,CAAC,CACpD,OAAO,CAAC,CAAC;wBACP,YAAY,CAAC,KAAK,CAAC,IAAI,GAAG,YAAY,CAAA;oBACxC,CAAC,CAAC,CACF,IAAI,CAAC,OAAO,CAEZ;YAAA,CAAC,uBAAU,CAAC,KAAK,CAAC,QAAQ,EAC5B;UAAA,EAAE,qBAAM,CAAC,CACV,CACD;QAAA,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CACjC,CAAC,qBAAM,CACL,QAAQ,CAAC,CAAC,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,MAAK,UAAU,CAAC,CAClD,OAAO,CAAC,CAAC;wBACP,YAAY,CAAC,KAAK,CAAC,IAAI,GAAG,UAAU,CAAA;oBACtC,CAAC,CAAC,CACF,IAAI,CAAC,OAAO,CAEZ;YAAA,CAAC,uBAAU,CAAC,KAAK,CAAC,MAAM,EAC1B;UAAA,EAAE,qBAAM,CAAC,CACV,CACD;QAAA,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAC/B,CAAC,qBAAM,CACL,QAAQ,CAAC,CAAC,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,MAAK,QAAQ,CAAC,CAChD,OAAO,CAAC,CAAC;wBACP,YAAY,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAA;oBACpC,CAAC,CAAC,CACF,IAAI,CAAC,OAAO,CAEZ;YAAA,CAAC,uBAAU,CAAC,KAAK,CAAC,MAAM,EAC1B;UAAA,EAAE,qBAAM,CAAC,CACV,CACD;QAAA,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAChC,CAAC,qBAAM,CACL,QAAQ,CAAC,CAAC,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,MAAK,SAAS,CAAC,CACjD,OAAO,CAAC,CAAC;wBACP,YAAY,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAA;oBACrC,CAAC,CAAC,CACF,IAAI,CAAC,OAAO,CAEZ;YAAA,CAAC,uBAAU,CAAC,KAAK,CAAC,MAAM,EAC1B;UAAA,EAAE,qBAAM,CAAC,CACV,CACH;MAAA,EAAE,0BAAW,CAAC,CACf,CAAA;SAAA,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEW,QAAA,eAAe,GAAG,IAAA,uBAAQ,EACrC,wBAAwB,CACzB,CAAA","sourcesContent":["import { Button, ButtonGroup } from '@gaoding/gd-antd-plus'\nimport { observer } from '@formily/reactive-vue'\nimport { WorkbenchTypes } from '@designable/core'\nimport { IconWidget } from '../IconWidget'\nimport { usePrefix, useWorkbench } from '../../hooks'\nimport { defineComponent } from 'vue-demi'\nimport { CSSProperties } from '@vue/runtime-dom'\nimport cls from 'classnames'\n\nexport interface IViewToolsWidget {\n  use?: WorkbenchTypes[]\n  style?: CSSProperties\n  className?: string\n}\n\nconst VireToolsWidgetComponent = defineComponent({\n  props: {\n    use: { type: Array, default: () => ['DESIGNABLE', 'JSONTREE', 'PREVIEW'] },\n  },\n  setup(props) {\n    const workbenchRef = useWorkbench()\n    const prefixRef = usePrefix('view-tools')\n\n    return () => (\n      <ButtonGroup class={cls(prefixRef.value)}>\n        {props.use.includes('DESIGNABLE') && (\n          <Button\n            disabled={workbenchRef.value?.type === 'DESIGNABLE'}\n            onClick={() => {\n              workbenchRef.value.type = 'DESIGNABLE'\n            }}\n            size=\"small\"\n          >\n            <IconWidget infer=\"Design\" />\n          </Button>\n        )}\n        {props.use.includes('JSONTREE') && (\n          <Button\n            disabled={workbenchRef.value?.type === 'JSONTREE'}\n            onClick={() => {\n              workbenchRef.value.type = 'JSONTREE'\n            }}\n            size=\"small\"\n          >\n            <IconWidget infer=\"JSON\" />\n          </Button>\n        )}\n        {props.use.includes('MARKUP') && (\n          <Button\n            disabled={workbenchRef.value?.type === 'MARKUP'}\n            onClick={() => {\n              workbenchRef.value.type = 'MARKUP'\n            }}\n            size=\"small\"\n          >\n            <IconWidget infer=\"Code\" />\n          </Button>\n        )}\n        {props.use.includes('PREVIEW') && (\n          <Button\n            disabled={workbenchRef.value?.type === 'PREVIEW'}\n            onClick={() => {\n              workbenchRef.value.type = 'PREVIEW'\n            }}\n            size=\"small\"\n          >\n            <IconWidget infer=\"Play\" />\n          </Button>\n        )}\n      </ButtonGroup>\n    )\n  },\n})\n\nexport const ViewToolsWidget = observer(\n  VireToolsWidgetComponent\n)\n"]}