{"version":3,"file":"BookReviewLink-uExOZjfM.js","sources":["../../../app/javascript/icons/solid/photo-film.svg","../../../app/javascript/components/BookReview/MediaLink.tsx","../../../app/javascript/components/BookReview/BookReviewLink.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgPhotoFilm = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", viewBox: \"0 0 640 512\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M256 0h320c35.3 0 64 28.7 64 64v224c0 35.3-28.7 64-64 64H256c-35.3 0-64-28.7-64-64V64c0-35.3 28.7-64 64-64m220 106.7C471.5 100 464 96 456 96s-15.5 4-20 10.7l-56 84-17.3-21.7c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80a24.01 24.01 0 0 0 18.7 39h272c8.9 0 17-4.9 21.2-12.7s3.7-17.3-1.2-24.6zM336 96a32 32 0 1 0-64 0 32 32 0 1 0 64 0M64 128h96v288c0 17.7 14.3 32 32 32h128c17.7 0 32-14.3 32-32v-32h160v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V192c0-35.3 28.7-64 64-64m8 64c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm0 104c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm0 104c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm336 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16\" }));\nexport default SvgPhotoFilm;\n","import { Link } from \"@inertiajs/react\";\nimport Icon from \"hardcover-ui/components/Icon\";\nimport faTiktok from \"icons/brands/tiktok.svg\";\nimport faYoutube from \"icons/brands/youtube.svg\";\nimport faInstagram from \"icons/brands/instagram.svg\";\nimport faPhotoVideo from \"icons/solid/photo-film.svg\";\n\nexport interface MediaLinkProps {\n url: string;\n}\n\nconst iconForUrl = (url): any => {\n try {\n const parsedUrl = new URL(url);\n\n if (parsedUrl.host.indexOf(\"youtube\") !== -1) {\n return faYoutube;\n }\n if (parsedUrl.host.indexOf(\"tiktok\") !== -1) {\n return faTiktok;\n }\n if (parsedUrl.host.indexOf(\"instagram\") !== -1) {\n return faInstagram;\n }\n return faPhotoVideo;\n } catch {\n return faPhotoVideo;\n }\n};\n\nconst MediaLink = ({ url }: MediaLinkProps) => {\n const icon = iconForUrl(url);\n\n return (\n \n \n \n );\n};\n\nexport default MediaLink;\n","import MediaLink from \"./MediaLink\";\nimport SlateDocument from \"types/SlateDocument\";\n\nconst parseUrl = (url, mediaUrl) => {\n if (url?.length > 0) {\n return url;\n }\n if (mediaUrl?.length > 0) {\n return mediaUrl;\n }\n return null;\n};\n\nconst domainFor = (url) => {\n try {\n const parsedUrl = new URL(url);\n return parsedUrl.hostname;\n } catch {\n return url;\n }\n};\n\nexport interface BookReviewLinkProps {\n userBook: {\n url?: string;\n mediaUrl?: string;\n reviewSlate: SlateDocument | null;\n };\n}\nconst BookReviewLink = ({ userBook }: BookReviewLinkProps) => {\n const url = parseUrl(userBook.url, userBook.mediaUrl);\n const displayUrl = domainFor(parseUrl(userBook.url, userBook.mediaUrl));\n\n // No review means no link\n if (!userBook.reviewSlate || !url || url.length === 0) {\n return <>;\n }\n\n return (\n

\n Originally posted at{\" \"}\n \n {displayUrl}\n \n .\n {userBook.mediaUrl && (\n \n \n \n )}\n

\n );\n};\n\nexport default BookReviewLink;\n"],"names":["SvgPhotoFilm","props","React.createElement","iconForUrl","url","parsedUrl","faYoutube","faTiktok","faInstagram","faPhotoVideo","MediaLink","icon","jsx","Link","Icon","parseUrl","mediaUrl","domainFor","BookReviewLink","userBook","displayUrl","Fragment","jsxs"],"mappings":"+LACA,MAAMA,EAAgBC,GAA0BC,EAAmB,cAAC,MAAO,CAAE,MAAO,6BAA8B,QAAS,cAAe,GAAGD,CAAO,EAAkBC,gBAAoB,OAAQ,CAAE,EAAG,w1BAAw1B,CAAE,CAAC,ECU5hCC,EAAcC,GAAa,CAC3B,GAAA,CACI,MAAAC,EAAY,IAAI,IAAID,CAAG,EAE7B,OAAIC,EAAU,KAAK,QAAQ,SAAS,IAAM,GACjCC,EAELD,EAAU,KAAK,QAAQ,QAAQ,IAAM,GAChCE,EAELF,EAAU,KAAK,QAAQ,WAAW,IAAM,GACnCG,EAEFC,CAAA,MACD,CACC,OAAAA,CACT,CACF,EAEMC,EAAY,CAAC,CAAE,IAAAN,KAA0B,CACvC,MAAAO,EAAOR,EAAWC,CAAG,EAGzB,OAAAQ,EAAA,IAACC,EAAA,CACC,KAAMT,EACN,OAAO,+BACP,IAAI,sBAEJ,SAAAQ,EAAA,IAACE,EAAA,CACC,KAAAH,EACA,KAAK,KACL,UAAU,qCAAA,CACZ,CAAA,CAAA,CAGN,EC3CMI,EAAW,CAACX,EAAKY,KACjBZ,GAAA,YAAAA,EAAK,QAAS,EACTA,GAELY,GAAA,YAAAA,EAAU,QAAS,EACdA,EAEF,KAGHC,EAAab,GAAQ,CACrB,GAAA,CAEF,OADkB,IAAI,IAAIA,CAAG,EACZ,QAAA,MACX,CACC,OAAAA,CACT,CACF,EASMc,EAAiB,CAAC,CAAE,SAAAC,KAAoC,CAC5D,MAAMf,EAAMW,EAASI,EAAS,IAAKA,EAAS,QAAQ,EAC9CC,EAAaH,EAAUF,EAASI,EAAS,IAAKA,EAAS,QAAQ,CAAC,EAGtE,MAAI,CAACA,EAAS,aAAe,CAACf,GAAOA,EAAI,SAAW,EACzCQ,EAAA,IAAAS,WAAA,CAAA,CAAA,EAITC,EAAA,KAAC,IAAE,CAAA,UAAU,2CAA2C,SAAA,CAAA,uBACjC,IACrBV,EAAA,IAAC,IAAA,CACC,KAAMR,EACN,OAAO,SACP,UAAU,uDACV,IAAI,aAEH,SAAAgB,CAAA,CACH,EAAI,IAEHD,EAAS,UACRP,EAAA,IAAC,OAAK,CAAA,UAAU,OACd,SAAAA,EAAAA,IAACF,EAAU,CAAA,IAAKS,EAAS,QAAA,CAAU,CACrC,CAAA,CAEJ,CAAA,CAAA,CAEJ"}