{"version":3,"file":"VirtualTableSidePanel.mjs","names":["Divider","makeStyles","PropTypes","React","useMemo","useUser","DndProvider","HTML5Backend","PageContainer","useAxiosGet","Skeleton","LayoutUnit","VirtualForm","ConfigService","useStyles","theme","root","divider","marginTop","spacing","FIELD_NUMBER","VirtualTableSidePanel","props","$","_c","tableDescription","value","crudTableEditionData","closeSideSheet","onCreate","onUpdate","pageId","setSideSheetWidth","setSideSheetButtonLabel","setSideSheetOnSubmit","setSideSheetProps","user","classes","t0","Symbol","for","t1","tenantV1ApiUrl","data","page","loading","loadingPage","skeletonArr","i","push","skeleton","t2","t3","t4","nodeObj","t5","t6","sideSheetContent","map","_temp","skeletonButton","propTypes","array","func","sk"],"sources":["../../../src/maintenanceEngine/virtualBrowser/VirtualTableSidePanel.jsx"],"sourcesContent":["import { Divider, makeStyles } from '@material-ui/core';\nimport PropTypes from 'prop-types';\nimport React, { useMemo } from 'react';\nimport { useUser } from '../../utilities/auth/useUser';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { PageContainer } from '../../page/PageContainer';\nimport { useAxiosGet } from '../../utilities/useAxiosGet';\nimport { Skeleton } from '@material-ui/lab';\nimport { LayoutUnit } from '../../layout/LayoutUnit';\nimport { VirtualForm } from '../../UI/forms/VirtualForm';\nimport { ConfigService } from '../../configService';\n\nconst useStyles = makeStyles((theme) => ({\n  root: {},\n  divider: {\n    marginTop: theme.spacing(2)\n  }\n}));\n\nconst FIELD_NUMBER = 10;\n\nexport const VirtualTableSidePanel = (props) => {\n  const {\n    tableDescription,\n    value,\n    crudTableEditionData,\n    closeSideSheet,\n    onCreate,\n    onUpdate,\n    pageId,\n    setSideSheetWidth,\n    setSideSheetButtonLabel,\n    setSideSheetOnSubmit,\n    setSideSheetProps\n  } = props;\n  const user = useUser();\n  const classes = useStyles();\n\n  const [{ data: page, loading: loadingPage }] = useAxiosGet(\n    ConfigService.tenantV1ApiUrl,\n    `page/${pageId}`,\n    {},\n    !!!pageId,\n    false\n  );\n\n  const skeleton = useMemo(() => {\n    const skeletonArr = [];\n    for (let i = 0; i < FIELD_NUMBER; i++) {\n      skeletonArr.push(\n        <>\n          <Skeleton key={i} variant='rect' className={classes.skeleton} />\n          <LayoutUnit unit='xxs' />\n        </>\n      );\n    }\n    return skeletonArr;\n  }, [classes]);\n\n  const sideSheetContent = useMemo(() => {\n    if (page) {\n      return (\n        <DndProvider backend={HTML5Backend}>\n          <PageContainer\n            user={user}\n            key={pageId}\n            pageData={page}\n            widgetParams={{\n              pageId: page?.pageId,\n              nodeObj: crudTableEditionData,\n              setSideSheetWidth: setSideSheetWidth,\n              setSideSheetButtonLabel: setSideSheetButtonLabel,\n              setSideSheetOnSubmit: setSideSheetOnSubmit,\n              closeSideSheet: closeSideSheet,\n              setSideSheetProps: setSideSheetProps,\n              onCreate: onCreate,\n              onUpdate: onUpdate\n            }}\n            disableMargins={true}\n          />\n        </DndProvider>\n      );\n    } else {\n      return (\n        <>\n          <VirtualForm\n            tableDescription={tableDescription}\n            rowValue={value}\n            closeSideSheet={closeSideSheet}\n            onCreate={onCreate}\n            onUpdate={onUpdate}\n          />\n          <div className={classes.divider}>\n            <Divider />\n          </div>\n        </>\n      );\n    }\n  }, [\n    page,\n    user,\n    pageId,\n    crudTableEditionData,\n    setSideSheetWidth,\n    setSideSheetButtonLabel,\n    setSideSheetOnSubmit,\n    setSideSheetProps,\n    closeSideSheet,\n    onCreate,\n    onUpdate,\n    classes,\n    tableDescription,\n    value\n  ]);\n\n  return (\n    <div>\n      {loadingPage ? (\n        <>\n          {skeleton.map((sk) => sk)}\n          <LayoutUnit unit='md' />\n          <Skeleton variant='rect' className={classes.skeletonButton} />\n        </>\n      ) : (\n        sideSheetContent\n      )}\n    </div>\n  );\n};\n\nVirtualTableSidePanel.propTypes = {\n  /**\n   * Description of the table\n   */\n  tableDescription: PropTypes.array,\n  /**\n   * Entity data\n   */\n  crudTableEditionData: PropTypes.array,\n  /**\n   * onClick event for closing sidesheet\n   */\n  closeSideSheet: PropTypes.func,\n  /**\n   * onClick event for creating\n   */\n  onCreate: PropTypes.func,\n  /**\n   * onClick event for updating\n   */\n  onUpdate: PropTypes.func\n};\n"],"mappings":"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"}