// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.

import type { SkeletonProps } from "@coreai-ds/react-components";
import type { JSXElement } from "@coreai-ds/react-components";
import { makeStyles } from "@coreai-ds/react-components";
import { tokens } from "@coreai-ds/react-components";
import { Skeleton } from "@coreai-ds/react-components";
import { SkeletonItem } from "@coreai-ds/react-components";
import * as React from 'react';

const useStyles = makeStyles({
    invertedWrapper: {
        backgroundColor: tokens.colorNeutralBackground1,
    },
    firstRow: {
        alignItems: 'center',
        display: 'grid',
        paddingBottom: '10px',
        position: 'relative',
        gap: '10px',
        gridTemplateColumns: 'min-content 80%',
    },
    secondThirdRow: {
        alignItems: 'center',
        display: 'grid',
        paddingBottom: '10px',
        position: 'relative',
        gap: '10px',
        gridTemplateColumns: 'min-content 20% 20% 15% 15%',
    },
});

export const Row = (props: Partial<SkeletonProps>): JSXElement => {
    const styles = useStyles();
    return (<div className={styles.invertedWrapper}>
      <Skeleton {...props} size={20} aria-label="Loading Content">
        <div className={styles.firstRow}>
          <SkeletonItem shape="circle" size={24}/>
          <SkeletonItem shape="rectangle"/>
        </div>
        <div className={styles.secondThirdRow}>
          <SkeletonItem shape="circle" size={24}/>
          <SkeletonItem />
          <SkeletonItem />
          <SkeletonItem />
          <SkeletonItem />
        </div>
        <div className={styles.secondThirdRow}>
          <SkeletonItem shape="square" size={24}/>
          <SkeletonItem />
          <SkeletonItem />
          <SkeletonItem />
          <SkeletonItem />
        </div>
      </Skeleton>
    </div>);
};

export default Row;
