{"version":3,"file":"LogoSpline.mjs","names":[],"sources":["../../../src/brand/LogoThree/LogoSpline.tsx"],"sourcesContent":["import { useThemeMode } from 'antd-style';\nimport { type CSSProperties, memo, useState } from 'react';\n\nimport Spline, { type SplineProps } from '@/awesome/Spline';\n\nimport Loading from './Loading';\n\nconst LIGHT = 'https://hub-apac-1.lobeobjects.space/light.splinecode';\nconst DARK = 'https://hub-apac-1.lobeobjects.space/dark.splinecode';\n\nexport interface LogoSplineProps extends Partial<SplineProps> {\n  className?: string;\n  height?: number | string;\n  style?: CSSProperties;\n  width?: number | string;\n}\n\nconst LogoSpline = memo<LogoSplineProps>(({ className, style, width, height, onLoad, ...rest }) => {\n  const { isDarkMode } = useThemeMode();\n  const [loading, setLoading] = useState(true);\n  return (\n    <div\n      className={className}\n      style={{ height: height, position: 'relative', width: width, ...style }}\n    >\n      {loading && <Loading />}\n      <Spline\n        scene={isDarkMode ? DARK : LIGHT}\n        onLoad={(splineApp) => {\n          setLoading(false);\n          onLoad?.(splineApp);\n        }}\n        {...rest}\n      />\n    </div>\n  );\n});\n\nexport default LogoSpline;\n"],"mappings":";;;;;;AAOA,MAAM,QAAQ;AACd,MAAM,OAAO;AASb,MAAM,aAAa,MAAuB,EAAE,WAAW,OAAO,OAAO,QAAQ,QAAQ,GAAG,WAAW;CACjG,MAAM,EAAE,eAAe,cAAc;CACrC,MAAM,CAAC,SAAS,cAAc,SAAS,KAAK;AAC5C,QACE,qBAAC,OAAD;EACa;EACX,OAAO;GAAU;GAAQ,UAAU;GAAmB;GAAO,GAAG;GAAO;YAFzE,CAIG,WAAW,oBAAC,SAAD,EAAW,CAAA,EACvB,oBAAC,QAAD;GACE,OAAO,aAAa,OAAO;GAC3B,SAAS,cAAc;AACrB,eAAW,MAAM;AACjB,aAAS,UAAU;;GAErB,GAAI;GACJ,CAAA,CACE;;EAER"}