koval-ui
Version:
React components collection with minimalistic design. Supports theming, layout, and input validation.
3 lines (2 loc) • 1.08 kB
JavaScript
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),R=require("classnames"),j=require("css-vars-hook"),p=require("../../internal/utils/createArray.cjs"),y=require("../../internal/hooks/useLinkRefs.cjs"),c=require("./normalizeUnit.cjs"),u=require("./Skeleton.module.css.cjs"),n=require("./SkeletonShape.cjs"),m=l.forwardRef(({className:S,width:r="fluid",height:s,lines:o=3,marginY:i=36,marginX:a=0,...h},k)=>{const{LocalRoot:f,ref:x}=j.useLocalTheme();y.useLinkRefs(k,x);const d=l.useMemo(()=>({width:c.normalizeUnit(r),height:c.normalizeUnit(s),"margin-y":i,"margin-x":a}),[s,a,i,r]),t=o===1,g=p.createArray(o-1);return e.jsxs(f,{...h,className:R(u.default.skeletonText,S),theme:d,children:[t&&e.jsx(n.SkeletonShape,{marginY:9,height:24}),!t&&g.map((T,q)=>e.jsx(n.SkeletonShape,{marginY:9,height:24},q)),!t&&e.jsx(n.SkeletonShape,{marginY:9,className:u.default.shortLine,height:24})]})});m.displayName="SkeletonText";exports.SkeletonText=m;
//# sourceMappingURL=SkeletonText.cjs.map