{"version":3,"file":"index.DziXQx5J.js","sources":["../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/styled.js","../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/views/desktop/index.js","../../../../../../../node_modules/@babylon/ui-kit-structures/components/others/reviews-summary/views/mobile/index.js","../../../../../../../node_modules/@babylon/ui-kit-structures/components/others/reviews-summary/index.js","../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/hook/useReviews.js","../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/views/mobile/styled.js","../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/views/mobile/components/review-item/index.js","../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/views/mobile/components/modal-content/index.js","../../../../../../../node_modules/@babylon/ui-kit-common/components/others/reviews/views/mobile/index.js"],"sourcesContent":["import { switchColor } from '@babylon/ui-kit-base/components/others/rating/styled';\nimport { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { Margin } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\n\nconst ReviewsContainer = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsContainer\"\n})([\n ``\n]);\nconst ReviewsScoreHeaderValueContent = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsScoreHeaderValueContent\"\n})([\n ``,\n ``\n], Margin({\n left: '20px'\n}));\nconst ReviewsScoreHeaderValueTitle = /*#__PURE__*/ styled.p.withConfig({\n displayName: \"ReviewsScoreHeaderValueTitle\"\n})([\n ``,\n ` `,\n ` color:`,\n `;`\n], Margin({\n bottom: '8px'\n}), FontMixin({\n weight: 'medium',\n size: 'large'\n}), ({ theme, $value })=>switchColor($value, theme));\nconst ReviewsScoreHeaderValueText = /*#__PURE__*/ styled.p.withConfig({\n displayName: \"ReviewsScoreHeaderValueText\"\n})([\n ``,\n ` `,\n ` color:`,\n `;`\n], FontMixin({\n size: 'medium',\n weight: 'light'\n}), Margin({\n all: '0px'\n}), ({ theme })=>theme.colors.grays.dark);\nconst ReviewsList = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsList\"\n})([\n ``\n]);\nconst ReviewsListItemAvatar = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsListItemAvatar\"\n})([\n `position:relative;`\n]);\n\nexport { ReviewsContainer, ReviewsList, ReviewsListItemAvatar, ReviewsScoreHeaderValueContent, ReviewsScoreHeaderValueText, ReviewsScoreHeaderValueTitle };\n","import { jsxs, jsx } from 'react/jsx-runtime';\nimport JsonLd from '@babylon/ui-kit-base/components/others/json-ld';\nimport Title from '@babylon/ui-kit-base/components/text/title/views/desktop';\nimport ReviewsBase from '@babylon/ui-kit-structures/components/others/reviews-base';\nimport { ReviewsContainer } from '../../styled.js';\n\nconst ReviewsDesktop = (props)=>{\n const { title, subtitle, pagination = {}, items, score } = props;\n return /*#__PURE__*/ jsxs(ReviewsContainer, {\n \"data-testid\": \"Reviews\",\n children: [\n /*#__PURE__*/ jsx(Title, {\n title: title,\n subTitle: subtitle,\n \"data-testid\": \"title\"\n }),\n /*#__PURE__*/ jsx(ReviewsBase, {\n score: score,\n config: props.config,\n ldjson: props.ldjson,\n pagination: pagination,\n items: items\n }),\n props.ldjson && /*#__PURE__*/ jsx(JsonLd, {\n structuredData: props.ldjson\n })\n ]\n });\n};\n\nexport { ReviewsDesktop as default };\n","import { jsx } from 'react/jsx-runtime';\nimport Summary from '../../components/summary/index.js';\n\nconst ReviewsSummaryMobile = (props)=>{\n const { score, literals } = props;\n return /*#__PURE__*/ jsx(Summary, {\n literals: literals,\n score: score\n });\n};\n\nexport { ReviewsSummaryMobile as default };\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\nimport ReviewsSummaryDesktop from './views/desktop/index.js';\nimport ReviewsSummaryMobile from './views/mobile/index.js';\n\nconst ReviewsSummary = generateViewsComponent(ReviewsSummaryDesktop, ReviewsSummaryMobile);\n\nexport { ReviewsSummary as default };\n","import contextBabylon from '@babylon/ui-kit-context';\nimport useIsDesktop from '@babylon/ui-kit-hooks/device/useIsDesktop';\nimport useLoading from '@babylon/ui-kit-searchers/hooks/useLoading';\nimport { getPaginationPage } from '@babylon/ui-kit-structures/components/others/reviews-base/service';\nimport { useContext, useState, useRef, useCallback, useEffect } from 'react';\n\nconst useReviews = (props)=>{\n const { size, endpoint, reviews } = props;\n const { ApplicationName, LanguageValue } = useContext(contextBabylon);\n const [results, setResults] = useState(reviews ?? []);\n const [page, setPage] = useState(1);\n const callLock = useRef(false);\n const modalRef = useRef(null);\n const { isLoading, doFetchLoading } = useLoading([\n callLock\n ], false);\n const isDesktop = useIsDesktop();\n const getData = useCallback(async (page)=>{\n const data = await doFetchLoading(callLock, async ()=>await getPaginationPage({\n code: endpoint?.code,\n type: endpoint?.type,\n size: size,\n page: page,\n ApplicationName: ApplicationName,\n LanguageValue: LanguageValue,\n reviews: endpoint?.reviews\n }));\n if (data) {\n if (isDesktop) {\n setResults(data);\n } else {\n setResults([\n ...results,\n ...data\n ]);\n }\n }\n }, [\n ApplicationName,\n LanguageValue,\n doFetchLoading,\n endpoint?.code,\n endpoint?.reviews,\n endpoint?.type,\n isDesktop,\n results,\n size\n ]);\n // only for first load mobile\n useEffect(()=>{\n if (!isDesktop) {\n getData(page).catch(console.error);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n const handleClickPagination = (page)=>getData(page).catch(console.error);\n const handleScroll = ()=>{\n const element = modalRef.current;\n if (element && Math.round(element.scrollTop) + element.clientHeight >= element.scrollHeight - 3) {\n setPage(page + 1);\n getData(page + 1).catch(console.error);\n }\n };\n return {\n isLoading,\n results,\n handleClickPagination,\n modalRef,\n handleScroll,\n setPage\n };\n};\n\nexport { useReviews as default };\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport { RatingHorizontalText, RatingHorizontalValue, switchColor } from '@babylon/ui-kit-base/components/others/rating/styled';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { BorderRadius, Margin, Size } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\n\nconst ReviewsWrapper = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsWrapper\"\n})([\n `background-color:`,\n `;`\n], ({ theme })=>theme.colors.white.base);\nconst ReviewsScoreWrapperMobile = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsScoreWrapperMobile\"\n})([\n ``,\n ` `,\n ` background-color:`,\n `;border-top:1px solid `,\n `;border-bottom:1px solid `,\n `;`\n], BorderRadius({\n topLeft: '4px',\n topRight: '4px'\n}), FlexMixin({\n align: 'center',\n wrap: true,\n justify: 'space-between'\n}), ({ theme })=>theme.bodyBgColor, ({ theme })=>theme.colors.grays.light, ({ theme })=>theme.colors.grays.light);\nconst ReviewsScoreHeaderMobile = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsScoreHeaderMobile\"\n})([\n ``,\n ` margin-bottom:0px;border:0px;width:100%;& svg{width:83px;}`\n], FlexMixin({\n align: 'center',\n justify: 'center'\n}));\nconst ReviewsScoreBodyMobile = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsScoreBodyMobile\"\n})([\n `margin:0 16px;padding:0;border-top:1px solid `,\n `;`\n], ({ theme })=>theme.colors.grays.light);\nconst ReviewsScoreBodyListMobile = /*#__PURE__*/ styled.ul.withConfig({\n displayName: \"ReviewsScoreBodyListMobile\"\n})([\n ``,\n ` `,\n ` & li{max-width:none;}`,\n `:first-child,`,\n `{flex-basis:calc(45% - 8px);max-width:calc(45% - 8px);`,\n `}`,\n `:last-child{flex-basis:auto;}`\n], FlexMixin({\n align: 'center',\n wrap: true,\n justify: 'flex-start'\n}), Margin({\n all: '0px',\n bottom: '18px',\n top: '10px'\n}), RatingHorizontalText, RatingHorizontalValue, FontMixin({\n size: 'medium'\n}), RatingHorizontalText);\nconst ReviewsListItem = /*#__PURE__*/ styled.article.withConfig({\n displayName: \"ReviewsListItem\"\n})([\n ``,\n ` padding:16px 12px;background-color:`,\n `;border-bottom:1px solid `,\n `;`\n], FlexMixin({\n align: 'center',\n justify: 'space-between',\n direction: 'column'\n}), ({ theme })=>theme.colors.white.base, ({ theme })=>theme.colors.grays.light);\nconst ReviewsListItemHeader = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsListItemHeader\"\n})([\n ``,\n ` width:100%;flex-basis:calc(20% - 8px);`\n], FlexMixin({\n align: 'center',\n justify: 'space-between'\n}));\nconst ReviewsHeaderContent = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsHeaderContent\"\n})([\n ``,\n ``\n], FontMixin({\n size: 'medium',\n height: 'base'\n}));\nconst ReviewsListItemAvatarValue = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsListItemAvatarValue\"\n})([\n `color:`,\n `;`,\n ` `,\n ` `,\n ` `,\n ` `,\n ` background-color:`,\n `;`\n], ({ theme })=>theme.colors.white.base, FontMixin({\n size: 'base',\n weight: 'bold'\n}), Margin({\n all: '0'\n}), Size({\n height: '32px',\n width: '32px'\n}), BorderRadius({\n all: '50%'\n}), FlexMixin({\n align: 'center',\n justify: 'center'\n}), ({ theme, $value })=>switchColor($value, theme));\nconst ReviewsListItemContentDescription = /*#__PURE__*/ styled.p.withConfig({\n displayName: \"ReviewsListItemContentDescription\"\n})([\n ``,\n ` `,\n ` color:`,\n `;`,\n ``\n], FlexMixin({\n align: 'center',\n justify: 'flex-start'\n}), Margin({\n all: '0px'\n}), ({ theme })=>theme.colors.grays.darker, FontMixin({\n size: 'medium',\n weight: 'light'\n}));\nconst ReviewsListItemContentUser = /*#__PURE__*/ styled(ReviewsListItemContentDescription).withConfig({\n displayName: \"ReviewsListItemContentUser\"\n})([\n ``,\n ``\n], FontMixin({\n size: 'base',\n weight: 'medium',\n height: 'base'\n}));\nconst ReviewsListItemHeaderContentDescription = /*#__PURE__*/ styled(ReviewsListItemContentDescription).withConfig({\n displayName: \"ReviewsListItemHeaderContentDescription\"\n})([\n ``,\n ` color:`,\n `;`\n], FontMixin({\n size: 'small'\n}), ({ theme })=>theme.colors.grays.base);\nconst ReviewsListItemBody = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsListItemBody\"\n})([\n `flex-basis:calc(80% - 8px);width:100%;`,\n ``\n], Margin({\n top: '8px'\n}));\nconst ReviewsItemListBodyContent = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsItemListBodyContent\"\n})([\n ``,\n ``\n], FontMixin({\n size: 'medium',\n height: 'base'\n}));\nconst ReviewsItemText = /*#__PURE__*/ styled(ReviewsListItemContentDescription).withConfig({\n displayName: \"ReviewsItemText\"\n})([\n `&:not(:last-child){`,\n `}`\n], Margin({\n bottom: '12px'\n}));\nconst ReviewsItemTextIcon = /*#__PURE__*/ styled.span.withConfig({\n displayName: \"ReviewsItemTextIcon\"\n})([\n ``,\n `{color:`,\n `;`,\n ` `,\n `}`\n], Icon, ({ theme, $state })=>$state === 'negative' ? theme.colors.grays.base : theme.colors.primary.lighter, FontMixin({\n size: 'large'\n}), Margin({\n right: '16px'\n}));\nconst ReviewsItemFooter = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ReviewsItemFooter\"\n})([\n ``,\n ` width:100%;`,\n ``\n], FlexMixin({\n justify: 'center'\n}), Margin({\n top: '16px'\n}));\nconst Loader = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"Loader\"\n})([\n `padding:16px;&::before{animation:spinner 1s infinite linear;border:2px solid `,\n `;border-left-color:rgba(0,0,0,0);`,\n ` content:\"\";display:block;height:50px;width:50px;z-index:10;margin:0 auto;}`\n], ({ theme })=>theme.colors.grays.base, BorderRadius({\n all: '50%'\n}));\n\nexport { Loader, ReviewsHeaderContent, ReviewsItemFooter, ReviewsItemListBodyContent, ReviewsItemText, ReviewsItemTextIcon, ReviewsListItem, ReviewsListItemAvatarValue, ReviewsListItemBody, ReviewsListItemContentUser, ReviewsListItemHeader, ReviewsListItemHeaderContentDescription, ReviewsScoreBodyListMobile, ReviewsScoreBodyMobile, ReviewsScoreHeaderMobile, ReviewsScoreWrapperMobile, ReviewsWrapper };\n","import { jsxs, jsx } from 'react/jsx-runtime';\nimport Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport { ReviewsListItemAvatar } from '../../../../styled.js';\nimport { ReviewsListItem, ReviewsListItemHeader, ReviewsHeaderContent, ReviewsListItemContentUser, ReviewsListItemHeaderContentDescription, ReviewsListItemAvatarValue, ReviewsListItemBody, ReviewsItemListBodyContent, ReviewsItemText, ReviewsItemTextIcon } from '../../styled.js';\n\nconst ReviewItem = (props)=>{\n const { date, negative, positive, user, value } = props;\n return /*#__PURE__*/ jsxs(ReviewsListItem, {\n \"data-testid\": \"reviewItem\",\n children: [\n /*#__PURE__*/ jsxs(ReviewsListItemHeader, {\n children: [\n /*#__PURE__*/ jsxs(ReviewsHeaderContent, {\n children: [\n /*#__PURE__*/ jsx(ReviewsListItemContentUser, {\n children: user\n }),\n /*#__PURE__*/ jsx(ReviewsListItemHeaderContentDescription, {\n children: date\n })\n ]\n }),\n /*#__PURE__*/ jsx(ReviewsListItemAvatar, {\n children: /*#__PURE__*/ jsx(ReviewsListItemAvatarValue, {\n $value: value ?? 0,\n children: value\n })\n })\n ]\n }),\n /*#__PURE__*/ jsx(ReviewsListItemBody, {\n children: /*#__PURE__*/ jsxs(ReviewsItemListBodyContent, {\n children: [\n /*#__PURE__*/ jsxs(ReviewsItemText, {\n children: [\n /*#__PURE__*/ jsx(ReviewsItemTextIcon, {\n $state: \"positive\",\n children: /*#__PURE__*/ jsx(Icon, {\n className: \"nico-thumbs-up\"\n })\n }),\n /*#__PURE__*/ jsx(\"span\", {\n children: positive\n })\n ]\n }),\n /*#__PURE__*/ jsxs(ReviewsItemText, {\n children: [\n /*#__PURE__*/ jsx(ReviewsItemTextIcon, {\n $state: \"negative\",\n children: /*#__PURE__*/ jsx(Icon, {\n className: \"nico-thumbs-down\"\n })\n }),\n /*#__PURE__*/ jsx(\"span\", {\n children: negative\n })\n ]\n })\n ]\n })\n })\n ]\n });\n};\n\nexport { ReviewItem as default };\n","import { jsxs, Fragment, jsx } from 'react/jsx-runtime';\nimport { useEffect, createElement } from 'react';\nimport Rating from '@babylon/ui-kit-base/components/others/rating';\nimport InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { genKey } from '@babylon/ui-kit-helpers/keys';\nimport { ReviewsScoreHeaderValueContent, ReviewsScoreHeaderValueTitle, ReviewsScoreHeaderValueText } from '../../../../styled.js';\nimport { Loader, ReviewsScoreWrapperMobile, ReviewsScoreHeaderMobile } from '../../styled.js';\nimport ReviewItem from '../review-item/index.js';\n\nconst ModalContent = (props)=>{\n const { score, results, setPage, isLoading } = props;\n useEffect(()=>{\n setPage(1);\n }, [\n setPage\n ]);\n const renderScore = ()=>/*#__PURE__*/ jsx(ReviewsScoreWrapperMobile, {\n children: /*#__PURE__*/ jsxs(ReviewsScoreHeaderMobile, {\n children: [\n /*#__PURE__*/ jsx(Rating, {\n variant: \"circular\",\n value: score?.value\n }),\n /*#__PURE__*/ jsxs(ReviewsScoreHeaderValueContent, {\n children: [\n /*#__PURE__*/ jsx(ReviewsScoreHeaderValueTitle, {\n $value: score?.value,\n children: score?.title\n }),\n /*#__PURE__*/ jsx(ReviewsScoreHeaderValueText, {\n children: /*#__PURE__*/ jsx(InnerMarkdownHTML, {\n content: score?.description\n })\n })\n ]\n })\n ]\n })\n });\n return /*#__PURE__*/ jsxs(Fragment, {\n children: [\n renderScore(),\n results.map((review)=>/*#__PURE__*/ createElement(ReviewItem, {\n ...review,\n key: genKey(review)\n })),\n isLoading && /*#__PURE__*/ jsx(Loader, {})\n ]\n });\n};\n\nexport { ModalContent as default };\n","import { jsxs, jsx } from 'react/jsx-runtime';\nimport { Button } from '@babylon/ui-kit-base/components/buttons/button';\nimport JsonLd from '@babylon/ui-kit-base/components/others/json-ld';\nimport Title from '@babylon/ui-kit-base/components/text/title/views/mobile';\nimport Modal from '@babylon/ui-kit-structures/components/others/modal';\nimport ReviewsSummary from '@babylon/ui-kit-structures/components/others/reviews-summary';\nimport { useBoolean } from 'usehooks-ts';\nimport useReviews from '../../hook/useReviews.js';\nimport { ReviewsContainer, ReviewsList } from '../../styled.js';\nimport ModalContent from './components/modal-content/index.js';\nimport ReviewItem from './components/review-item/index.js';\nimport { ReviewsWrapper, ReviewsItemFooter } from './styled.js';\n\nconst ReviewsMobile = (props)=>{\n const { value: isVisible, toggle: toggleVisibility } = useBoolean();\n const { title, subtitle, review, score, config } = props ?? {};\n const { literals, endpoints } = config ?? {};\n const { seeAllOpinions = '' } = literals ?? {};\n const { results, handleScroll, modalRef, setPage, isLoading } = useReviews({\n endpoint: endpoints,\n size: 5\n });\n const modalProps = {\n score: score,\n results: results,\n setPage: setPage,\n isLoading: isLoading\n };\n return /*#__PURE__*/ jsxs(ReviewsContainer, {\n \"data-testid\": \"Reviews\",\n children: [\n /*#__PURE__*/ jsx(Title, {\n title: title,\n subTitle: subtitle,\n \"data-testid\": \"title\",\n tag: \"h3\"\n }),\n /*#__PURE__*/ jsxs(ReviewsWrapper, {\n children: [\n /*#__PURE__*/ jsx(ReviewsSummary, {\n literals: literals,\n score: score\n }),\n /*#__PURE__*/ jsxs(ReviewsList, {\n children: [\n review && /*#__PURE__*/ jsx(ReviewItem, {\n ...review\n }),\n /*#__PURE__*/ jsxs(ReviewsItemFooter, {\n children: [\n /*#__PURE__*/ jsx(Button, {\n \"data-testid\": \"openModal\",\n onClick: toggleVisibility,\n variant: \"negative\",\n p: \"8px 16px\",\n size: \"small\",\n children: seeAllOpinions\n }),\n /*#__PURE__*/ jsx(Modal, {\n content: /*#__PURE__*/ jsx(ModalContent, {\n ...modalProps\n }),\n header: title,\n visible: isVisible,\n hide: toggleVisibility,\n variant: \"fullScreen\",\n contentRef: modalRef,\n onScroll: handleScroll\n })\n ]\n })\n ]\n })\n ]\n }),\n props.ldjson && /*#__PURE__*/ jsx(JsonLd, {\n structuredData: props.ldjson\n })\n ]\n });\n};\n\nexport { ReviewsMobile as default };\n"],"names":["ReviewsContainer","styled","ReviewsScoreHeaderValueContent","Margin","ReviewsScoreHeaderValueTitle","FontMixin","theme","$value","switchColor","ReviewsScoreHeaderValueText","ReviewsList","ReviewsListItemAvatar","ReviewsDesktop","props","title","subtitle","pagination","items","score","jsxs","jsx","Title","ReviewsBase","JsonLd","ReviewsSummaryMobile","literals","Summary","ReviewsSummary","generateViewsComponent","ReviewsSummaryDesktop","useReviews","size","endpoint","reviews","ApplicationName","LanguageValue","useContext","contextBabylon","results","setResults","useState","page","setPage","callLock","useRef","modalRef","isLoading","doFetchLoading","useLoading","isDesktop","useIsDesktop","getData","useCallback","data","getPaginationPage","useEffect","element","ReviewsWrapper","ReviewsScoreWrapperMobile","BorderRadius","FlexMixin","ReviewsScoreHeaderMobile","ReviewsListItem","ReviewsListItemHeader","ReviewsHeaderContent","ReviewsListItemAvatarValue","Size","ReviewsListItemContentDescription","ReviewsListItemContentUser","ReviewsListItemHeaderContentDescription","ReviewsListItemBody","ReviewsItemListBodyContent","ReviewsItemText","ReviewsItemTextIcon","Icon","$state","ReviewsItemFooter","Loader","ReviewItem","date","negative","positive","user","value","ModalContent","renderScore","Rating","InnerMarkdownHTML","Fragment","review","createElement","genKey","ReviewsMobile","isVisible","toggleVisibility","useBoolean","config","endpoints","seeAllOpinions","handleScroll","modalProps","Button","Modal"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}