Advertisement
danine1

Entry point

Mar 12th, 2018
341
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* eslint camelcase:0 */
  2. import React from "react";
  3. import PropTypes from "prop-types";
  4. import { QueryRenderer, graphql } from "react-relay";
  5. import { environment } from "@graphql";
  6. import { Loader } from "@ematix/tesseract-component-library";
  7.  
  8. import EmployeeDetailsContainer from "./fragments/EmployeeDetails";
  9.  
  10. const query = graphql`
  11.   query EmployeeDetailsQuery($globalId: String!) {
  12.     ...EmployeeDetails_employeeData @arguments(globalId: $globalId)
  13.   }
  14. `;
  15.  
  16. const EmployeeDetails = (props) => {
  17.   const { match: { params: { id: urlEmployeeId } } } = props;
  18.   return (
  19.     <QueryRenderer
  20.       environment={environment}
  21.       query={query}
  22.       variables={{ globalId: urlEmployeeId }}
  23.       render={({ error, props: gqlProps }) => {
  24.         if (error) {
  25.           return null;
  26.         }
  27.         if (!gqlProps) {
  28.           return <Loader />;
  29.         }
  30.         return <EmployeeDetailsContainer employeeData={gqlProps} {...props} />;
  31.       }}
  32.     />
  33.   );
  34. };
  35.  
  36. EmployeeDetails.propTypes = {
  37.   match: PropTypes.shape({
  38.     params: PropTypes.shape({
  39.       id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
  40.     }),
  41.   }).isRequired,
  42. };
  43.  
  44. export default EmployeeDetails;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement