{"version":3,"file":"SkeletonParagraph.mjs","names":["Flexbox"],"sources":["../../src/Skeleton/SkeletonParagraph.tsx"],"sourcesContent":["'use client';\n\nimport { type FC } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport SkeletonBlock from './SkeletonBlock';\nimport type { SkeletonParagraphProps } from './type';\n\nconst DEFAULT_ROWS = 3;\n\nconst SkeletonParagraph: FC<SkeletonParagraphProps> = ({\n  active,\n  rows = DEFAULT_ROWS,\n  gap,\n  width,\n  height,\n  fontSize,\n  lineHeight,\n  style,\n  className,\n  ...rest\n}) => {\n  const rowGap = gap;\n  const rowCount = Math.max(rows, 1);\n  const baseFontSize = fontSize ?? 14;\n  const resolvedLineHeight = lineHeight ?? 1.6;\n  const computedHeight = height ? height : Math.round(baseFontSize * resolvedLineHeight);\n  const marginBlock = computedHeight - baseFontSize;\n  const widthList = Array.isArray(width) ? width : null;\n\n  const getRowWidth = (index: number): string | number => {\n    if (widthList) return widthList[index] ?? widthList.at(-1) ?? '100%';\n    if (width !== undefined) return width as string | number;\n    if (index === rowCount - 1) return '66%';\n    return '100%';\n  };\n\n  const containerStyle = { gap: rowGap, ...style };\n\n  return (\n    <Flexbox\n      className={className}\n      gap={gap || marginBlock}\n      style={containerStyle}\n      width={'100%'}\n      {...rest}\n    >\n      {Array.from({ length: rowCount }).map((_, index) => (\n        <SkeletonBlock\n          active={active}\n          height={baseFontSize}\n          key={index}\n          width={getRowWidth(index)}\n        />\n      ))}\n    </Flexbox>\n  );\n};\n\nSkeletonParagraph.displayName = 'SkeletonParagraph';\n\nexport default SkeletonParagraph;\n"],"mappings":";;;;;AASA,MAAM,eAAe;AAErB,MAAM,qBAAiD,EACrD,QACA,OAAO,cACP,KACA,OACA,QACA,UACA,YACA,OACA,WACA,GAAG,WACC;CACJ,MAAM,SAAS;CACf,MAAM,WAAW,KAAK,IAAI,MAAM,EAAE;CAClC,MAAM,eAAe,YAAY;CAGjC,MAAM,eADiB,SAAS,SAAS,KAAK,MAAM,gBADzB,cAAc,KAC6C,IACjD;CACrC,MAAM,YAAY,MAAM,QAAQ,MAAM,GAAG,QAAQ;CAEjD,MAAM,eAAe,UAAmC;AACtD,MAAI,UAAW,QAAO,UAAU,UAAU,UAAU,GAAG,GAAG,IAAI;AAC9D,MAAI,UAAU,KAAA,EAAW,QAAO;AAChC,MAAI,UAAU,WAAW,EAAG,QAAO;AACnC,SAAO;;CAGT,MAAM,iBAAiB;EAAE,KAAK;EAAQ,GAAG;EAAO;AAEhD,QACE,oBAACA,mBAAD;EACa;EACX,KAAK,OAAO;EACZ,OAAO;EACP,OAAO;EACP,GAAI;YAEH,MAAM,KAAK,EAAE,QAAQ,UAAU,CAAC,CAAC,KAAK,GAAG,UACxC,oBAAC,eAAD;GACU;GACR,QAAQ;GAER,OAAO,YAAY,MAAM;GACzB,EAFK,MAEL,CACF;EACM,CAAA;;AAId,kBAAkB,cAAc"}