@bigbinary/neeto-molecules 4.0.73 → 4.0.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"ShareViaLink.js","sources":["../../src/components/ShareViaLink/ExpiryNotice.jsx","../../src/components/ShareViaLink/utils.js","../../src/components/ShareViaLink/constants.js","../../src/components/ShareViaLink/EditURL.jsx","../../src/components/ShareViaLink/RegenerateURL.jsx","../../src/components/ShareViaLink/Link.jsx","../../src/components/ShareViaLink/Card.jsx","../../src/components/ShareViaLink/ShareBlock.jsx","../../src/components/ShareViaLink/MainPanel.jsx","../../node_modules/qrcode.react/lib/esm/index.js","../../src/components/ShareViaLink/QRCode.jsx","../../src/components/ShareViaLink/SocialMedia.jsx","../../src/components/ShareViaLink/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ExpiryNotice = ({ expiryConfiguration }) => {\n const { t } = useTranslation();\n const { daysBeforeExpiry } = expiryConfiguration;\n\n let notice = t(\"neetoMolecules.shareViaLink.expiryNotice.daysRemaining\", {\n count: daysBeforeExpiry,\n });\n if (daysBeforeExpiry < 1) {\n notice = t(\"neetoMolecules.shareViaLink.expiryNotice.expiresToday\");\n }\n\n if (daysBeforeExpiry <= 0) {\n notice = t(\"neetoMolecules.shareViaLink.expiryNotice.expired\");\n }\n\n return (\n <Typography\n data-testid=\"expiry-notice\"\n lineHeight=\"normal\"\n style=\"body3\"\n className={classNames(\"ml-1\", {\n \"neeto-ui-text-error-800\": daysBeforeExpiry <= 1,\n \"neeto-ui-text-gray-700\": daysBeforeExpiry > 1,\n })}\n >\n {notice}\n </Typography>\n );\n};\n\nexport default ExpiryNotice;\n","import { buildUrl } from \"neetocommons/utils/general\";\n\nexport const facebookShareLink = ({ url }) =>\n buildUrl(\"https://www.facebook.com/sharer/sharer.php\", { u: url });\n\nexport const linkedInShareLink = ({ url, title }) =>\n buildUrl(\"https://www.linkedin.com/sharing/share-offsite\", {\n mini: true,\n text: `${title} ${url}`,\n });\n\nexport const twitterShareLink = ({ url, title }) =>\n buildUrl(\"http://twitter.com/share\", { text: title, url });\n\nexport const downloadCanvas = (canvas, options = {}) => {\n const { name = \"image\", extension = \"png\" } = options;\n\n const canvasUrl = canvas.toDataURL(`image/${extension}`);\n const element = document.createElement(\"a\");\n element.href = canvasUrl;\n element.download = `${name}.${extension}`;\n element.click();\n element.remove();\n};\n\nexport const copyCanvasToClipboard = async (canvas, handleDownloadQRCode) => {\n if (!canvas) return;\n\n try {\n const blob = await new Promise(resolve => canvas.toBlob(resolve));\n if (!blob) return;\n\n const clipboardItem = new ClipboardItem({ [blob.type]: blob });\n navigator.clipboard.write([clipboardItem]);\n } catch {\n handleDownloadQRCode();\n }\n};\n\nexport const getPathname = url => new URL(url).pathname.slice(1);\n\nexport const getPrefixFromUrl = url => `${new URL(url).origin}/`;\n\nexport const truncatePrefix = (inputElement, prefixText) => {\n const parentElement = inputElement.parentElement;\n const prefixElement = parentElement.querySelector(\".neeto-ui-input__prefix\");\n\n const { fontSize } = getComputedStyle(inputElement);\n const averageCharWidth = parseFloat(fontSize) * 0.6;\n\n const requiredInputWidth = inputElement.value.length * averageCharWidth;\n const prefixWidth = parentElement.offsetWidth - requiredInputWidth;\n\n const maxPrefixChars = Math.max(\n Math.floor(prefixWidth / averageCharWidth),\n 5\n );\n\n prefixElement.textContent =\n maxPrefixChars < prefixText.length\n ? `...${prefixText.slice(-maxPrefixChars)}`\n : prefixText;\n};\n","import { t } from \"i18next\";\nimport { Facebook, Linkedin, Twitter } from \"neetoicons\";\nimport * as yup from \"yup\";\n\nimport {\n facebookShareLink,\n twitterShareLink,\n linkedInShareLink,\n} from \"./utils\";\n\nexport const SOCIAL_MEDIA_OPTIONS = {\n FACEBOOK: {\n label: t(\"neetoMolecules.shareViaLink.socialMediaShare.facebook\"),\n icon: Facebook,\n generateShareUrl: facebookShareLink,\n },\n LINKEDIN: {\n label: t(\"neetoMolecules.shareViaLink.socialMediaShare.linkedIn\"),\n icon: Linkedin,\n generateShareUrl: linkedInShareLink,\n },\n TWITTER: {\n label: t(\"neetoMolecules.shareViaLink.socialMediaShare.twitter\"),\n icon: Twitter,\n generateShareUrl: twitterShareLink,\n },\n};\n\nexport const PATH_VALIDATION_SCHEMA = yup.object().shape({\n path: yup\n .string()\n .required(t(\"neetoMolecules.shareViaLink.editUrl.validationError\"))\n .matches(\n /^[A-Za-z0-9]([\\w/-])*$/,\n t(\"neetoMolecules.shareViaLink.editUrl.validationError\")\n ),\n});\n","import { useCallback, useEffect, useRef } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { Typography, Pane } from \"neetoui\";\nimport { Input, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PATH_VALIDATION_SCHEMA } from \"./constants\";\nimport \"./edit-url.scss\";\nimport { getPathname, getPrefixFromUrl, truncatePrefix } from \"./utils\";\n\nconst { Header, Body, Footer } = Pane;\n\nconst EditURL = ({\n editUrlProps,\n isOpen,\n onClose,\n url,\n isLoading,\n handleEdit,\n}) => {\n const { t } = useTranslation();\n\n const focusRef = useRef(null);\n const prevIsLoadingRef = useRef(isLoading);\n\n const prefixText = editUrlProps?.prefix || getPrefixFromUrl(url);\n\n const observerRef = useRef(\n new ResizeObserver(([entry]) =>\n requestAnimationFrame(() => truncatePrefix(entry.target, prefixText))\n )\n );\n\n const inputRef = useCallback(inputElement => {\n focusRef.current = inputElement;\n\n inputElement\n ? observerRef.current.observe(inputElement)\n : observerRef.current.disconnect();\n }, []);\n\n useEffect(() => {\n if (prevIsLoadingRef.current && !isLoading) onClose();\n\n prevIsLoadingRef.current = isLoading;\n }, [isLoading]);\n\n return (\n <Pane\n {...{ isOpen, onClose }}\n data-testid=\"edit-url-modal\"\n initialFocusRef={focusRef}\n size=\"large\"\n >\n <Header>\n <Typography lineHeight=\"normal\" style=\"h2\" weight=\"semibold\">\n {t(\"neetoMolecules.shareViaLink.editUrl.title\")}\n </Typography>\n </Header>\n <Formik\n enableReinitialize\n initialValues={{ path: editUrlProps?.editablePath || getPathname(url) }}\n validationSchema={PATH_VALIDATION_SCHEMA}\n onSubmit={({ path }) => handleEdit(path)}\n >\n {({ isSubmitting, dirty }) => (\n <Form>\n <Body className=\"flex flex-col gap-y-6\">\n <Input\n className=\"no-padding w-full flex-grow-0\"\n data-testid=\"edit-url-input\"\n label={t(\"neetoMolecules.shareViaLink.editUrl.inputLabel\")}\n maxLength={editUrlProps?.maxLength}\n name=\"path\"\n prefix={prefixText}\n ref={inputRef}\n />\n <Typography\n className=\"neeto-ui-text-gray-700\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.shareViaLink.editUrl.description\")}\n </Typography>\n </Body>\n <Footer className=\"flex items-center gap-x-2\">\n <ActionBlock\n className=\"flex items-center gap-x-2\"\n cancelButtonProps={{\n onClick: onClose,\n disabled: isSubmitting,\n \"data-testid\": \"edit-url-cancel-button\",\n }}\n submitButtonProps={{\n disabled: isSubmitting || !dirty,\n loading: isLoading,\n \"data-testid\": \"edit-url-confirm-button\",\n }}\n />\n </Footer>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default EditURL;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Help } from \"neetoicons\";\nimport { Typography, Modal, Button, Input, Select, DatePicker } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst RegenerateURL = ({\n isOpen,\n onClose,\n url,\n isLoading,\n handleRegenerate,\n regenerateConfig = { expiresInOptions: [], helpUrl: null },\n}) => {\n const { t } = useTranslation();\n\n const prevIsLoadingRef = useRef(isLoading);\n const regenerateStrategy = isPresent(regenerateConfig?.expiresInOptions)\n ? \"expiryBased\"\n : \"basic\";\n\n const defaultExpiresInOption = regenerateConfig?.expiresInOptions?.[0]?.value;\n const [selectedExpiresInOption, setSelectedExpiresInOption] = useState(\n defaultExpiresInOption\n );\n\n const defaultExpiresOnDate = dayjs().add(10, \"day\").toDate();\n const [selectedExpiresOnDate, setSelectedExpiresOnDate] =\n useState(defaultExpiresOnDate);\n\n const isSelectedExpiresInOptionNever = selectedExpiresInOption === \"never\";\n const isSelectedExpiresInOptionCustom = selectedExpiresInOption === \"custom\";\n\n const isSelectedExpiresInOptionValidNumberOfDays =\n isPresent(selectedExpiresInOption) &&\n !isSelectedExpiresInOptionCustom &&\n !isSelectedExpiresInOptionNever;\n\n const isValidExpiryConfig =\n isSelectedExpiresInOptionNever ||\n (isSelectedExpiresInOptionCustom && isPresent(selectedExpiresOnDate)) ||\n isSelectedExpiresInOptionValidNumberOfDays;\n\n const expiryConfigPayload = isSelectedExpiresInOptionValidNumberOfDays\n ? { expiresInDays: selectedExpiresInOption }\n : { expiresOnDate: selectedExpiresOnDate };\n\n const onSubmit = () =>\n regenerateStrategy === \"basic\" || isSelectedExpiresInOptionNever\n ? handleRegenerate()\n : handleRegenerate({ payload: expiryConfigPayload });\n\n useEffect(() => {\n if (prevIsLoadingRef.current && !isLoading) onClose();\n\n prevIsLoadingRef.current = isLoading;\n }, [isLoading]);\n\n useEffect(() => {\n if (!isOpen) return;\n\n setSelectedExpiresInOption(defaultExpiresInOption);\n setSelectedExpiresOnDate(defaultExpiresOnDate);\n }, [isOpen]);\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n data-testid=\"regenerate-url-modal\"\n size={regenerateStrategy === \"basic\" ? \"medium\" : \"large\"}\n >\n <Modal.Header>\n <Typography lineHeight=\"normal\" style=\"h2\" weight=\"semibold\">\n {regenerateStrategy === \"expiryBased\"\n ? t(\n \"neetoMolecules.shareViaLink.regenerateUrl.titleForExpiryBasedRegeneration\"\n )\n : t(\"neetoMolecules.shareViaLink.regenerateUrl.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {regenerateStrategy === \"basic\" && (\n <Input\n disabled\n label={t(\"neetoMolecules.shareViaLink.regenerateUrl.inputLabel\")}\n value={url}\n />\n )}\n {regenerateStrategy === \"expiryBased\" && (\n <div className=\"flex flex-row gap-2\">\n <Select\n data-testid=\"expires-in-select\"\n defaultValue={regenerateConfig.expiresInOptions?.[0]}\n options={regenerateConfig.expiresInOptions}\n className={classNames({\n \"w-1/2\": isSelectedExpiresInOptionCustom,\n \"w-full\": !isSelectedExpiresInOptionCustom,\n })}\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.expiresInLabel\"\n )}\n labelProps={{\n helpIconProps: isPresent(regenerateConfig?.helpUrl) && {\n icon: Help,\n className:\n \"cursor-pointer opacity-75 hover:opacity-100 transition-opacity duration-300 ease-in-out\",\n popoverProps: {\n title: t(\n \"neetoMolecules.shareViaLink.regenerateUrl.expiresInHelpTitle\"\n ),\n helpLinkProps: {\n label: t(\n \"neetoMolecules.shareViaLink.regenerateUrl.helpLinkLabel\"\n ),\n href: regenerateConfig?.helpUrl,\n target: \"_blank\",\n },\n },\n },\n }}\n onChange={option => setSelectedExpiresInOption(option.value)}\n />\n {isSelectedExpiresInOptionCustom && (\n <DatePicker\n data-testid=\"expires-on-date-picker\"\n dateFormat={globalProps?.user?.dateFormat ?? undefined}\n disabledDate={d => !d || d.isBefore(dayjs())}\n getPopupContainer={prop(\"parentNode\")}\n picker=\"date\"\n type=\"date\"\n value={selectedExpiresOnDate}\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.expiresOnLabel\"\n )}\n onChange={setSelectedExpiresOnDate}\n />\n )}\n </div>\n )}\n <Typography\n className=\"neeto-ui-text-gray-700\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.shareViaLink.regenerateUrl.description\")}\n </Typography>\n </div>\n </Modal.Body>\n <Modal.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"regenerate-url-confirm-button\"\n data-testid=\"regenerate-url-confirm-button\"\n loading={isLoading}\n disabled={\n regenerateStrategy === \"expiryBased\" && !isValidExpiryConfig\n }\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.submitButtonLabel\"\n )}\n onClick={onSubmit}\n />\n <Button\n data-cy=\"regenerate-url-cancel-button\"\n data-testid=\"regenerate-url-cancel-button\"\n style=\"text\"\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.cancelButtonLabel\"\n )}\n onClick={onClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default RegenerateURL;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { ExternalLink, Link as LinkIcon } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport EditURL from \"./EditURL\";\nimport RegenerateURL from \"./RegenerateURL\";\n\nconst Link = ({\n editUrlProps,\n enabledOptions,\n entityName,\n handleEdit,\n handleRegenerate,\n isLoading,\n previewUrl,\n url,\n}) => {\n const [isRegenerateURLModalOpen, setIsRegenerateURLModalOpen] =\n useState(false);\n const [isEditURLModalOpen, setIsEditURLModalOpen] = useState(false);\n\n const { t } = useTranslation();\n\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const isDropdownEnabled = enabledOptions.regenerate || enabledOptions.edit;\n\n return (\n <div\n className=\"flex flex-col gap-y-4\"\n data-cy=\"link-block\"\n data-testid=\"link-block\"\n >\n <div className=\"flex items-center gap-1 sm:gap-2\">\n <div\n className=\"relative flex min-w-0 flex-grow items-stretch truncate leading-none\"\n data-cy=\"nui-input-field\"\n >\n <div className=\"neeto-ui-rounded-md neeto-ui-border-gray-300 neeto-ui-bg-gray-50 relative flex min-w-0 flex-grow items-center truncate rounded-br-none rounded-tr-none border leading-none\">\n <Button\n className=\"neeto-molecules-share-link-button relative min-w-0 flex-grow flex-row truncate px-2 py-1 leading-none\"\n href={url}\n icon={LinkIcon}\n iconPosition=\"left\"\n label={url}\n style=\"link\"\n target=\"_blank\"\n />\n </div>\n <CopyToClipboardButton\n className=\"rounded-l-none\"\n data-cy=\"link-copy-button\"\n data-testid=\"link-copy-button\"\n label={!isMobile ? t(\"neetoMolecules.shareViaLink.copyLink\") : null}\n value={url}\n />\n </div>\n <div className=\"flex flex-shrink-0 items-center gap-1 sm:gap-2\">\n <Button\n data-cy=\"preview-button\"\n data-testid=\"preview-button\"\n href={previewUrl || url}\n icon={ExternalLink}\n style=\"secondary\"\n target=\"_blank\"\n tooltipProps={{\n content: t(\"neetoMolecules.shareViaLink.view\", {\n entity: entityName,\n }),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n />\n {isDropdownEnabled && (\n <>\n <MoreDropdown\n menuItems={[\n {\n isVisible:\n enabledOptions.regenerate ||\n isPresent(enabledOptions.regenerate),\n \"data-testid\": \"regenerate-url-button\",\n \"data-cy\": \"regenerate-url-button\",\n onClick: () => setIsRegenerateURLModalOpen(true),\n label: t(\"neetoMolecules.shareViaLink.regenerateUrl.title\"),\n key: \"regenerate-url-option\",\n },\n {\n isVisible: enabledOptions.edit,\n \"data-testid\": \"edit-url-button\",\n \"data-cy\": \"edit-url-button\",\n onClick: () => setIsEditURLModalOpen(true),\n label: t(\"neetoMolecules.shareViaLink.editUrl.title\"),\n key: \"edit-url-option\",\n },\n ]}\n />\n <RegenerateURL\n {...{ handleRegenerate, isLoading, url }}\n isOpen={isRegenerateURLModalOpen}\n regenerateConfig={enabledOptions.regenerate}\n onClose={() => setIsRegenerateURLModalOpen(false)}\n />\n <EditURL\n {...{ editUrlProps, handleEdit, isLoading, url }}\n isOpen={isEditURLModalOpen}\n onClose={() => setIsEditURLModalOpen(false)}\n />\n </>\n )}\n </div>\n </div>\n </div>\n );\n};\n\nexport default Link;\n","import { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { Link } from \"react-router-dom\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nconst Card = ({\n title,\n link,\n description,\n Icon,\n onClick = noop,\n helpPopoverProps,\n ...otherProps\n}) => {\n const Component = isPresent(link) ? Link : \"div\";\n\n return (\n <Component\n {...{ onClick }}\n className=\"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-molecules-share-landing__card flex cursor-pointer flex-col gap-3 border p-3\"\n to={link}\n {...otherProps}\n >\n <div className=\"flex items-center gap-2\">\n {Icon && (\n <Icon className=\"neeto-ui-text-gray-500 flex-shrink-0\" size={24} />\n )}\n <Typography\n className=\"neeto-molecules-share-landing__card-title min-w-0 flex-grow break-words\"\n style=\"h4\"\n >\n {title}\n {helpPopoverProps && (\n <>\n {\" \"}\n <HelpPopover {...helpPopoverProps} />\n </>\n )}\n </Typography>\n </div>\n {description && (\n <Typography\n className=\"neeto-molecules-share-landing__card-desc break-words\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {description}\n </Typography>\n )}\n </Component>\n );\n};\n\nexport default Card;\n","import classNames from \"classnames\";\nimport { isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Share, QrCode } from \"neetoicons\";\nimport { __, includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Card from \"./Card\";\n\nconst ShareBlock = ({\n moreOptions,\n disableShareSocialMedia,\n disableQRDownload,\n socialMediaProps,\n qrCodeProps,\n entity,\n urls,\n}) => {\n const location = useLocation();\n const history = useHistory();\n\n const { t } = useTranslation();\n\n const handleNavigate = subPath => {\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n history.push(`${location.pathname}/${subPath}`);\n };\n\n const hasMoreOptions = isPresent(moreOptions);\n\n return (\n <div\n className={classNames(\n \"grid grid-cols-1 gap-4 sm:grid-cols-2 md:grid-cols-3\",\n {\n \"neeto-ui-border-gray-200 mt-8 border-t pt-8\": isNotEmpty(urls),\n }\n )}\n >\n {hasMoreOptions &&\n moreOptions\n .filter(\n ({ permissions }) =>\n isNotPresent(permissions) ||\n globalProps.permissions.some(includes(__, permissions))\n )\n .map(\n ({\n title,\n link,\n icon: Icon,\n onClick,\n dataCy,\n description,\n helpPopoverProps,\n }) => (\n <Card\n {...{\n Icon,\n description,\n helpPopoverProps,\n link,\n onClick,\n title,\n }}\n data-cy={dataCy}\n data-testid={dataCy}\n key={link}\n />\n )\n )}\n {!disableShareSocialMedia && (\n <Card\n Icon={Share}\n data-cy=\"social-share-card\"\n data-testid=\"social-share-card\"\n description={\n socialMediaProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.description\")\n }\n title={\n socialMediaProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.title\")\n }\n onClick={() => handleNavigate(\"social-media\")}\n />\n )}\n {!disableQRDownload && entity && (\n <Card\n Icon={QrCode}\n data-cy=\"qr-code-card\"\n data-testid=\"qr-code-card\"\n description={\n qrCodeProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.qrCode.description\")\n }\n title={\n qrCodeProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.qrCode.title\")\n }\n onClick={() => handleNavigate(\"qrcode\")}\n />\n )}\n </div>\n );\n};\n\nexport default ShareBlock;\n","import classnames from \"classnames\";\nimport { isNotEmpty, isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\n\nimport ExpiryNotice from \"./ExpiryNotice\";\nimport LinkBlock from \"./Link\";\nimport ShareBlock from \"./ShareBlock\";\n\nconst MainPanel = ({\n title,\n description,\n qrCodeProps,\n socialMediaProps,\n isLoading = false,\n enabledOptions = { regenerate: false, edit: false },\n urls = [],\n entity,\n entityName,\n handleEdit = noop,\n handleRegenerate = noop,\n moreOptions,\n disableShareSocialMedia = false,\n disableQRDownload = false,\n publicLinkExpiryConfiguration = {},\n customTopContent,\n customBottomContent,\n}) => {\n const { t } = useTranslation();\n\n const shouldShowShareBlock =\n !disableQRDownload || !disableShareSocialMedia || isPresent(moreOptions);\n\n return (\n <Container className=\"neeto-ui-bg-gray-100 neeto-molecule-share-landing-page\">\n <div className=\"mx-auto w-full max-w-5xl py-10\">\n {customTopContent}\n <Typography\n data-cy=\"share-your-meeting-heading\"\n lineHeight=\"tight\"\n style=\"h2\"\n className={classnames({\n \"mb-2\": isPresent(description),\n \"mb-6\": !isPresent(description),\n })}\n >\n {title ||\n t(\"neetoMolecules.shareViaLink.title\", {\n productName: globalProps.appName,\n })}\n </Typography>\n {description && (\n <Typography\n className=\"mb-6\"\n data-cy=\"share-your-meeting-heading\"\n lineHeight=\"normal\"\n style=\"body1\"\n >\n {description}\n </Typography>\n )}\n <div\n className=\"neeto-ui-rounded-lg neeto-ui-bg-white p-6 sm:p-8\"\n data-testid=\"share-via-link\"\n >\n {isNotEmpty(urls) && (\n <div className=\"flex flex-col gap-y-1\">\n <div className=\"inline-flex max-w-full flex-col gap-y-4\">\n {urls?.map(urlOption => (\n <LinkBlock\n {...{\n enabledOptions,\n entityName,\n handleEdit,\n handleRegenerate,\n isLoading,\n }}\n editUrlProps={omit([\"url\"], urlOption)}\n key={urlOption.url}\n previewUrl={urlOption.previewUrl}\n url={urlOption.url}\n />\n ))}\n </div>\n {isPresent(publicLinkExpiryConfiguration) && (\n <ExpiryNotice\n expiryConfiguration={publicLinkExpiryConfiguration}\n />\n )}\n </div>\n )}\n {shouldShowShareBlock && (\n <ShareBlock\n {...{\n disableQRDownload,\n disableShareSocialMedia,\n entity,\n moreOptions,\n qrCodeProps,\n socialMediaProps,\n urls,\n }}\n url={urls[0]?.url}\n />\n )}\n </div>\n {customBottomContent}\n </div>\n </Container>\n );\n};\n\nexport default MainPanel;\n","var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\n\n// src/index.tsx\nimport React from \"react\";\n\n// src/third-party/qrcodegen/index.ts\n/**\n * @license QR Code generator library (TypeScript)\n * Copyright (c) Project Nayuki.\n * SPDX-License-Identifier: MIT\n */\nvar qrcodegen;\n((qrcodegen2) => {\n const _QrCode = class {\n constructor(version, errorCorrectionLevel, dataCodewords, msk) {\n this.version = version;\n this.errorCorrectionLevel = errorCorrectionLevel;\n this.modules = [];\n this.isFunction = [];\n if (version < _QrCode.MIN_VERSION || version > _QrCode.MAX_VERSION)\n throw new RangeError(\"Version value out of range\");\n if (msk < -1 || msk > 7)\n throw new RangeError(\"Mask value out of range\");\n this.size = version * 4 + 17;\n let row = [];\n for (let i = 0; i < this.size; i++)\n row.push(false);\n for (let i = 0; i < this.size; i++) {\n this.modules.push(row.slice());\n this.isFunction.push(row.slice());\n }\n this.drawFunctionPatterns();\n const allCodewords = this.addEccAndInterleave(dataCodewords);\n this.drawCodewords(allCodewords);\n if (msk == -1) {\n let minPenalty = 1e9;\n for (let i = 0; i < 8; i++) {\n this.applyMask(i);\n this.drawFormatBits(i);\n const penalty = this.getPenaltyScore();\n if (penalty < minPenalty) {\n msk = i;\n minPenalty = penalty;\n }\n this.applyMask(i);\n }\n }\n assert(0 <= msk && msk <= 7);\n this.mask = msk;\n this.applyMask(msk);\n this.drawFormatBits(msk);\n this.isFunction = [];\n }\n static encodeText(text, ecl) {\n const segs = qrcodegen2.QrSegment.makeSegments(text);\n return _QrCode.encodeSegments(segs, ecl);\n }\n static encodeBinary(data, ecl) {\n const seg = qrcodegen2.QrSegment.makeBytes(data);\n return _QrCode.encodeSegments([seg], ecl);\n }\n static encodeSegments(segs, ecl, minVersion = 1, maxVersion = 40, mask = -1, boostEcl = true) {\n if (!(_QrCode.MIN_VERSION <= minVersion && minVersion <= maxVersion && maxVersion <= _QrCode.MAX_VERSION) || mask < -1 || mask > 7)\n throw new RangeError(\"Invalid value\");\n let version;\n let dataUsedBits;\n for (version = minVersion; ; version++) {\n const dataCapacityBits2 = _QrCode.getNumDataCodewords(version, ecl) * 8;\n const usedBits = QrSegment.getTotalBits(segs, version);\n if (usedBits <= dataCapacityBits2) {\n dataUsedBits = usedBits;\n break;\n }\n if (version >= maxVersion)\n throw new RangeError(\"Data too long\");\n }\n for (const newEcl of [_QrCode.Ecc.MEDIUM, _QrCode.Ecc.QUARTILE, _QrCode.Ecc.HIGH]) {\n if (boostEcl && dataUsedBits <= _QrCode.getNumDataCodewords(version, newEcl) * 8)\n ecl = newEcl;\n }\n let bb = [];\n for (const seg of segs) {\n appendBits(seg.mode.modeBits, 4, bb);\n appendBits(seg.numChars, seg.mode.numCharCountBits(version), bb);\n for (const b of seg.getData())\n bb.push(b);\n }\n assert(bb.length == dataUsedBits);\n const dataCapacityBits = _QrCode.getNumDataCodewords(version, ecl) * 8;\n assert(bb.length <= dataCapacityBits);\n appendBits(0, Math.min(4, dataCapacityBits - bb.length), bb);\n appendBits(0, (8 - bb.length % 8) % 8, bb);\n assert(bb.length % 8 == 0);\n for (let padByte = 236; bb.length < dataCapacityBits; padByte ^= 236 ^ 17)\n appendBits(padByte, 8, bb);\n let dataCodewords = [];\n while (dataCodewords.length * 8 < bb.length)\n dataCodewords.push(0);\n bb.forEach((b, i) => dataCodewords[i >>> 3] |= b << 7 - (i & 7));\n return new _QrCode(version, ecl, dataCodewords, mask);\n }\n getModule(x, y) {\n return 0 <= x && x < this.size && 0 <= y && y < this.size && this.modules[y][x];\n }\n getModules() {\n return this.modules;\n }\n drawFunctionPatterns() {\n for (let i = 0; i < this.size; i++) {\n this.setFunctionModule(6, i, i % 2 == 0);\n this.setFunctionModule(i, 6, i % 2 == 0);\n }\n this.drawFinderPattern(3, 3);\n this.drawFinderPattern(this.size - 4, 3);\n this.drawFinderPattern(3, this.size - 4);\n const alignPatPos = this.getAlignmentPatternPositions();\n const numAlign = alignPatPos.length;\n for (let i = 0; i < numAlign; i++) {\n for (let j = 0; j < numAlign; j++) {\n if (!(i == 0 && j == 0 || i == 0 && j == numAlign - 1 || i == numAlign - 1 && j == 0))\n this.drawAlignmentPattern(alignPatPos[i], alignPatPos[j]);\n }\n }\n this.drawFormatBits(0);\n this.drawVersion();\n }\n drawFormatBits(mask) {\n const data = this.errorCorrectionLevel.formatBits << 3 | mask;\n let rem = data;\n for (let i = 0; i < 10; i++)\n rem = rem << 1 ^ (rem >>> 9) * 1335;\n const bits = (data << 10 | rem) ^ 21522;\n assert(bits >>> 15 == 0);\n for (let i = 0; i <= 5; i++)\n this.setFunctionModule(8, i, getBit(bits, i));\n this.setFunctionModule(8, 7, getBit(bits, 6));\n this.setFunctionModule(8, 8, getBit(bits, 7));\n this.setFunctionModule(7, 8, getBit(bits, 8));\n for (let i = 9; i < 15; i++)\n this.setFunctionModule(14 - i, 8, getBit(bits, i));\n for (let i = 0; i < 8; i++)\n this.setFunctionModule(this.size - 1 - i, 8, getBit(bits, i));\n for (let i = 8; i < 15; i++)\n this.setFunctionModule(8, this.size - 15 + i, getBit(bits, i));\n this.setFunctionModule(8, this.size - 8, true);\n }\n drawVersion() {\n if (this.version < 7)\n return;\n let rem = this.version;\n for (let i = 0; i < 12; i++)\n rem = rem << 1 ^ (rem >>> 11) * 7973;\n const bits = this.version << 12 | rem;\n assert(bits >>> 18 == 0);\n for (let i = 0; i < 18; i++) {\n const color = getBit(bits, i);\n const a = this.size - 11 + i % 3;\n const b = Math.floor(i / 3);\n this.setFunctionModule(a, b, color);\n this.setFunctionModule(b, a, color);\n }\n }\n drawFinderPattern(x, y) {\n for (let dy = -4; dy <= 4; dy++) {\n for (let dx = -4; dx <= 4; dx++) {\n const dist = Math.max(Math.abs(dx), Math.abs(dy));\n const xx = x + dx;\n const yy = y + dy;\n if (0 <= xx && xx < this.size && 0 <= yy && yy < this.size)\n this.setFunctionModule(xx, yy, dist != 2 && dist != 4);\n }\n }\n }\n drawAlignmentPattern(x, y) {\n for (let dy = -2; dy <= 2; dy++) {\n for (let dx = -2; dx <= 2; dx++)\n this.setFunctionModule(x + dx, y + dy, Math.max(Math.abs(dx), Math.abs(dy)) != 1);\n }\n }\n setFunctionModule(x, y, isDark) {\n this.modules[y][x] = isDark;\n this.isFunction[y][x] = true;\n }\n addEccAndInterleave(data) {\n const ver = this.version;\n const ecl = this.errorCorrectionLevel;\n if (data.length != _QrCode.getNumDataCodewords(ver, ecl))\n throw new RangeError(\"Invalid argument\");\n const numBlocks = _QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver];\n const blockEccLen = _QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver];\n const rawCodewords = Math.floor(_QrCode.getNumRawDataModules(ver) / 8);\n const numShortBlocks = numBlocks - rawCodewords % numBlocks;\n const shortBlockLen = Math.floor(rawCodewords / numBlocks);\n let blocks = [];\n const rsDiv = _QrCode.reedSolomonComputeDivisor(blockEccLen);\n for (let i = 0, k = 0; i < numBlocks; i++) {\n let dat = data.slice(k, k + shortBlockLen - blockEccLen + (i < numShortBlocks ? 0 : 1));\n k += dat.length;\n const ecc = _QrCode.reedSolomonComputeRemainder(dat, rsDiv);\n if (i < numShortBlocks)\n dat.push(0);\n blocks.push(dat.concat(ecc));\n }\n let result = [];\n for (let i = 0; i < blocks[0].length; i++) {\n blocks.forEach((block, j) => {\n if (i != shortBlockLen - blockEccLen || j >= numShortBlocks)\n result.push(block[i]);\n });\n }\n assert(result.length == rawCodewords);\n return result;\n }\n drawCodewords(data) {\n if (data.length != Math.floor(_QrCode.getNumRawDataModules(this.version) / 8))\n throw new RangeError(\"Invalid argument\");\n let i = 0;\n for (let right = this.size - 1; right >= 1; right -= 2) {\n if (right == 6)\n right = 5;\n for (let vert = 0; vert < this.size; vert++) {\n for (let j = 0; j < 2; j++) {\n const x = right - j;\n const upward = (right + 1 & 2) == 0;\n const y = upward ? this.size - 1 - vert : vert;\n if (!this.isFunction[y][x] && i < data.length * 8) {\n this.modules[y][x] = getBit(data[i >>> 3], 7 - (i & 7));\n i++;\n }\n }\n }\n }\n assert(i == data.length * 8);\n }\n applyMask(mask) {\n if (mask < 0 || mask > 7)\n throw new RangeError(\"Mask value out of range\");\n for (let y = 0; y < this.size; y++) {\n for (let x = 0; x < this.size; x++) {\n let invert;\n switch (mask) {\n case 0:\n invert = (x + y) % 2 == 0;\n break;\n case 1:\n invert = y % 2 == 0;\n break;\n case 2:\n invert = x % 3 == 0;\n break;\n case 3:\n invert = (x + y) % 3 == 0;\n break;\n case 4:\n invert = (Math.floor(x / 3) + Math.floor(y / 2)) % 2 == 0;\n break;\n case 5:\n invert = x * y % 2 + x * y % 3 == 0;\n break;\n case 6:\n invert = (x * y % 2 + x * y % 3) % 2 == 0;\n break;\n case 7:\n invert = ((x + y) % 2 + x * y % 3) % 2 == 0;\n break;\n default:\n throw new Error(\"Unreachable\");\n }\n if (!this.isFunction[y][x] && invert)\n this.modules[y][x] = !this.modules[y][x];\n }\n }\n }\n getPenaltyScore() {\n let result = 0;\n for (let y = 0; y < this.size; y++) {\n let runColor = false;\n let runX = 0;\n let runHistory = [0, 0, 0, 0, 0, 0, 0];\n for (let x = 0; x < this.size; x++) {\n if (this.modules[y][x] == runColor) {\n runX++;\n if (runX == 5)\n result += _QrCode.PENALTY_N1;\n else if (runX > 5)\n result++;\n } else {\n this.finderPenaltyAddHistory(runX, runHistory);\n if (!runColor)\n result += this.finderPenaltyCountPatterns(runHistory) * _QrCode.PENALTY_N3;\n runColor = this.modules[y][x];\n runX = 1;\n }\n }\n result += this.finderPenaltyTerminateAndCount(runColor, runX, runHistory) * _QrCode.PENALTY_N3;\n }\n for (let x = 0; x < this.size; x++) {\n let runColor = false;\n let runY = 0;\n let runHistory = [0, 0, 0, 0, 0, 0, 0];\n for (let y = 0; y < this.size; y++) {\n if (this.modules[y][x] == runColor) {\n runY++;\n if (runY == 5)\n result += _QrCode.PENALTY_N1;\n else if (runY > 5)\n result++;\n } else {\n this.finderPenaltyAddHistory(runY, runHistory);\n if (!runColor)\n result += this.finderPenaltyCountPatterns(runHistory) * _QrCode.PENALTY_N3;\n runColor = this.modules[y][x];\n runY = 1;\n }\n }\n result += this.finderPenaltyTerminateAndCount(runColor, runY, runHistory) * _QrCode.PENALTY_N3;\n }\n for (let y = 0; y < this.size - 1; y++) {\n for (let x = 0; x < this.size - 1; x++) {\n const color = this.modules[y][x];\n if (color == this.modules[y][x + 1] && color == this.modules[y + 1][x] && color == this.modules[y + 1][x + 1])\n result += _QrCode.PENALTY_N2;\n }\n }\n let dark = 0;\n for (const row of this.modules)\n dark = row.reduce((sum, color) => sum + (color ? 1 : 0), dark);\n const total = this.size * this.size;\n const k = Math.ceil(Math.abs(dark * 20 - total * 10) / total) - 1;\n assert(0 <= k && k <= 9);\n result += k * _QrCode.PENALTY_N4;\n assert(0 <= result && result <= 2568888);\n return result;\n }\n getAlignmentPatternPositions() {\n if (this.version == 1)\n return [];\n else {\n const numAlign = Math.floor(this.version / 7) + 2;\n const step = this.version == 32 ? 26 : Math.ceil((this.version * 4 + 4) / (numAlign * 2 - 2)) * 2;\n let result = [6];\n for (let pos = this.size - 7; result.length < numAlign; pos -= step)\n result.splice(1, 0, pos);\n return result;\n }\n }\n static getNumRawDataModules(ver) {\n if (ver < _QrCode.MIN_VERSION || ver > _QrCode.MAX_VERSION)\n throw new RangeError(\"Version number out of range\");\n let result = (16 * ver + 128) * ver + 64;\n if (ver >= 2) {\n const numAlign = Math.floor(ver / 7) + 2;\n result -= (25 * numAlign - 10) * numAlign - 55;\n if (ver >= 7)\n result -= 36;\n }\n assert(208 <= result && result <= 29648);\n return result;\n }\n static getNumDataCodewords(ver, ecl) {\n return Math.floor(_QrCode.getNumRawDataModules(ver) / 8) - _QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver] * _QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver];\n }\n static reedSolomonComputeDivisor(degree) {\n if (degree < 1 || degree > 255)\n throw new RangeError(\"Degree out of range\");\n let result = [];\n for (let i = 0; i < degree - 1; i++)\n result.push(0);\n result.push(1);\n let root = 1;\n for (let i = 0; i < degree; i++) {\n for (let j = 0; j < result.length; j++) {\n result[j] = _QrCode.reedSolomonMultiply(result[j], root);\n if (j + 1 < result.length)\n result[j] ^= result[j + 1];\n }\n root = _QrCode.reedSolomonMultiply(root, 2);\n }\n return result;\n }\n static reedSolomonComputeRemainder(data, divisor) {\n let result = divisor.map((_) => 0);\n for (const b of data) {\n const factor = b ^ result.shift();\n result.push(0);\n divisor.forEach((coef, i) => result[i] ^= _QrCode.reedSolomonMultiply(coef, factor));\n }\n return result;\n }\n static reedSolomonMultiply(x, y) {\n if (x >>> 8 != 0 || y >>> 8 != 0)\n throw new RangeError(\"Byte out of range\");\n let z = 0;\n for (let i = 7; i >= 0; i--) {\n z = z << 1 ^ (z >>> 7) * 285;\n z ^= (y >>> i & 1) * x;\n }\n assert(z >>> 8 == 0);\n return z;\n }\n finderPenaltyCountPatterns(runHistory) {\n const n = runHistory[1];\n assert(n <= this.size * 3);\n const core = n > 0 && runHistory[2] == n && runHistory[3] == n * 3 && runHistory[4] == n && runHistory[5] == n;\n return (core && runHistory[0] >= n * 4 && runHistory[6] >= n ? 1 : 0) + (core && runHistory[6] >= n * 4 && runHistory[0] >= n ? 1 : 0);\n }\n finderPenaltyTerminateAndCount(currentRunColor, currentRunLength, runHistory) {\n if (currentRunColor) {\n this.finderPenaltyAddHistory(currentRunLength, runHistory);\n currentRunLength = 0;\n }\n currentRunLength += this.size;\n this.finderPenaltyAddHistory(currentRunLength, runHistory);\n return this.finderPenaltyCountPatterns(runHistory);\n }\n finderPenaltyAddHistory(currentRunLength, runHistory) {\n if (runHistory[0] == 0)\n currentRunLength += this.size;\n runHistory.pop();\n runHistory.unshift(currentRunLength);\n }\n };\n let QrCode = _QrCode;\n QrCode.MIN_VERSION = 1;\n QrCode.MAX_VERSION = 40;\n QrCode.PENALTY_N1 = 3;\n QrCode.PENALTY_N2 = 3;\n QrCode.PENALTY_N3 = 40;\n QrCode.PENALTY_N4 = 10;\n QrCode.ECC_CODEWORDS_PER_BLOCK = [\n [-1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n [-1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28],\n [-1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n [-1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30]\n ];\n QrCode.NUM_ERROR_CORRECTION_BLOCKS = [\n [-1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25],\n [-1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49],\n [-1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68],\n [-1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81]\n ];\n qrcodegen2.QrCode = QrCode;\n function appendBits(val, len, bb) {\n if (len < 0 || len > 31 || val >>> len != 0)\n throw new RangeError(\"Value out of range\");\n for (let i = len - 1; i >= 0; i--)\n bb.push(val >>> i & 1);\n }\n function getBit(x, i) {\n return (x >>> i & 1) != 0;\n }\n function assert(cond) {\n if (!cond)\n throw new Error(\"Assertion error\");\n }\n const _QrSegment = class {\n constructor(mode, numChars, bitData) {\n this.mode = mode;\n this.numChars = numChars;\n this.bitData = bitData;\n if (numChars < 0)\n throw new RangeError(\"Invalid argument\");\n this.bitData = bitData.slice();\n }\n static makeBytes(data) {\n let bb = [];\n for (const b of data)\n appendBits(b, 8, bb);\n return new _QrSegment(_QrSegment.Mode.BYTE, data.length, bb);\n }\n static makeNumeric(digits) {\n if (!_QrSegment.isNumeric(digits))\n throw new RangeError(\"String contains non-numeric characters\");\n let bb = [];\n for (let i = 0; i < digits.length; ) {\n const n = Math.min(digits.length - i, 3);\n appendBits(parseInt(digits.substr(i, n), 10), n * 3 + 1, bb);\n i += n;\n }\n return new _QrSegment(_QrSegment.Mode.NUMERIC, digits.length, bb);\n }\n static makeAlphanumeric(text) {\n if (!_QrSegment.isAlphanumeric(text))\n throw new RangeError(\"String contains unencodable characters in alphanumeric mode\");\n let bb = [];\n let i;\n for (i = 0; i + 2 <= text.length; i += 2) {\n let temp = _QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)) * 45;\n temp += _QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i + 1));\n appendBits(temp, 11, bb);\n }\n if (i < text.length)\n appendBits(_QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)), 6, bb);\n return new _QrSegment(_QrSegment.Mode.ALPHANUMERIC, text.length, bb);\n }\n static makeSegments(text) {\n if (text == \"\")\n return [];\n else if (_QrSegment.isNumeric(text))\n return [_QrSegment.makeNumeric(text)];\n else if (_QrSegment.isAlphanumeric(text))\n return [_QrSegment.makeAlphanumeric(text)];\n else\n return [_QrSegment.makeBytes(_QrSegment.toUtf8ByteArray(text))];\n }\n static makeEci(assignVal) {\n let bb = [];\n if (assignVal < 0)\n throw new RangeError(\"ECI assignment value out of range\");\n else if (assignVal < 1 << 7)\n appendBits(assignVal, 8, bb);\n else if (assignVal < 1 << 14) {\n appendBits(2, 2, bb);\n appendBits(assignVal, 14, bb);\n } else if (assignVal < 1e6) {\n appendBits(6, 3, bb);\n appendBits(assignVal, 21, bb);\n } else\n throw new RangeError(\"ECI assignment value out of range\");\n return new _QrSegment(_QrSegment.Mode.ECI, 0, bb);\n }\n static isNumeric(text) {\n return _QrSegment.NUMERIC_REGEX.test(text);\n }\n static isAlphanumeric(text) {\n return _QrSegment.ALPHANUMERIC_REGEX.test(text);\n }\n getData() {\n return this.bitData.slice();\n }\n static getTotalBits(segs, version) {\n let result = 0;\n for (const seg of segs) {\n const ccbits = seg.mode.numCharCountBits(version);\n if (seg.numChars >= 1 << ccbits)\n return Infinity;\n result += 4 + ccbits + seg.bitData.length;\n }\n return result;\n }\n static toUtf8ByteArray(str) {\n str = encodeURI(str);\n let result = [];\n for (let i = 0; i < str.length; i++) {\n if (str.charAt(i) != \"%\")\n result.push(str.charCodeAt(i));\n else {\n result.push(parseInt(str.substr(i + 1, 2), 16));\n i += 2;\n }\n }\n return result;\n }\n };\n let QrSegment = _QrSegment;\n QrSegment.NUMERIC_REGEX = /^[0-9]*$/;\n QrSegment.ALPHANUMERIC_REGEX = /^[A-Z0-9 $%*+.\\/:-]*$/;\n QrSegment.ALPHANUMERIC_CHARSET = \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:\";\n qrcodegen2.QrSegment = QrSegment;\n})(qrcodegen || (qrcodegen = {}));\n((qrcodegen2) => {\n let QrCode;\n ((QrCode2) => {\n const _Ecc = class {\n constructor(ordinal, formatBits) {\n this.ordinal = ordinal;\n this.formatBits = formatBits;\n }\n };\n let Ecc = _Ecc;\n Ecc.LOW = new _Ecc(0, 1);\n Ecc.MEDIUM = new _Ecc(1, 0);\n Ecc.QUARTILE = new _Ecc(2, 3);\n Ecc.HIGH = new _Ecc(3, 2);\n QrCode2.Ecc = Ecc;\n })(QrCode = qrcodegen2.QrCode || (qrcodegen2.QrCode = {}));\n})(qrcodegen || (qrcodegen = {}));\n((qrcodegen2) => {\n let QrSegment;\n ((QrSegment2) => {\n const _Mode = class {\n constructor(modeBits, numBitsCharCount) {\n this.modeBits = modeBits;\n this.numBitsCharCount = numBitsCharCount;\n }\n numCharCountBits(ver) {\n return this.numBitsCharCount[Math.floor((ver + 7) / 17)];\n }\n };\n let Mode = _Mode;\n Mode.NUMERIC = new _Mode(1, [10, 12, 14]);\n Mode.ALPHANUMERIC = new _Mode(2, [9, 11, 13]);\n Mode.BYTE = new _Mode(4, [8, 16, 16]);\n Mode.KANJI = new _Mode(8, [8, 10, 12]);\n Mode.ECI = new _Mode(7, [0, 0, 0]);\n QrSegment2.Mode = Mode;\n })(QrSegment = qrcodegen2.QrSegment || (qrcodegen2.QrSegment = {}));\n})(qrcodegen || (qrcodegen = {}));\nvar qrcodegen_default = qrcodegen;\n\n// src/index.tsx\n/**\n * @license qrcode.react\n * Copyright (c) Paul O'Shannessy\n * SPDX-License-Identifier: ISC\n */\nvar ERROR_LEVEL_MAP = {\n L: qrcodegen_default.QrCode.Ecc.LOW,\n M: qrcodegen_default.QrCode.Ecc.MEDIUM,\n Q: qrcodegen_default.QrCode.Ecc.QUARTILE,\n H: qrcodegen_default.QrCode.Ecc.HIGH\n};\nvar DEFAULT_SIZE = 128;\nvar DEFAULT_LEVEL = \"L\";\nvar DEFAULT_BGCOLOR = \"#FFFFFF\";\nvar DEFAULT_FGCOLOR = \"#000000\";\nvar DEFAULT_INCLUDEMARGIN = false;\nvar MARGIN_SIZE = 4;\nvar DEFAULT_IMG_SCALE = 0.1;\nfunction generatePath(modules, margin = 0) {\n const ops = [];\n modules.forEach(function(row, y) {\n let start = null;\n row.forEach(function(cell, x) {\n if (!cell && start !== null) {\n ops.push(`M${start + margin} ${y + margin}h${x - start}v1H${start + margin}z`);\n start = null;\n return;\n }\n if (x === row.length - 1) {\n if (!cell) {\n return;\n }\n if (start === null) {\n ops.push(`M${x + margin},${y + margin} h1v1H${x + margin}z`);\n } else {\n ops.push(`M${start + margin},${y + margin} h${x + 1 - start}v1H${start + margin}z`);\n }\n return;\n }\n if (cell && start === null) {\n start = x;\n }\n });\n });\n return ops.join(\"\");\n}\nfunction excavateModules(modules, excavation) {\n return modules.slice().map((row, y) => {\n if (y < excavation.y || y >= excavation.y + excavation.h) {\n return row;\n }\n return row.map((cell, x) => {\n if (x < excavation.x || x >= excavation.x + excavation.w) {\n return cell;\n }\n return false;\n });\n });\n}\nfunction getImageSettings(cells, size, includeMargin, imageSettings) {\n if (imageSettings == null) {\n return null;\n }\n const margin = includeMargin ? MARGIN_SIZE : 0;\n const numCells = cells.length + margin * 2;\n const defaultSize = Math.floor(size * DEFAULT_IMG_SCALE);\n const scale = numCells / size;\n const w = (imageSettings.width || defaultSize) * scale;\n const h = (imageSettings.height || defaultSize) * scale;\n const x = imageSettings.x == null ? cells.length / 2 - w / 2 : imageSettings.x * scale;\n const y = imageSettings.y == null ? cells.length / 2 - h / 2 : imageSettings.y * scale;\n let excavation = null;\n if (imageSettings.excavate) {\n let floorX = Math.floor(x);\n let floorY = Math.floor(y);\n let ceilW = Math.ceil(w + x - floorX);\n let ceilH = Math.ceil(h + y - floorY);\n excavation = { x: floorX, y: floorY, w: ceilW, h: ceilH };\n }\n return { x, y, h, w, excavation };\n}\nvar SUPPORTS_PATH2D = function() {\n try {\n new Path2D().addPath(new Path2D());\n } catch (e) {\n return false;\n }\n return true;\n}();\nfunction QRCodeCanvas(props) {\n const _a = props, {\n value,\n size = DEFAULT_SIZE,\n level = DEFAULT_LEVEL,\n bgColor = DEFAULT_BGCOLOR,\n fgColor = DEFAULT_FGCOLOR,\n includeMargin = DEFAULT_INCLUDEMARGIN,\n style,\n imageSettings\n } = _a, otherProps = __objRest(_a, [\n \"value\",\n \"size\",\n \"level\",\n \"bgColor\",\n \"fgColor\",\n \"includeMargin\",\n \"style\",\n \"imageSettings\"\n ]);\n const imgSrc = imageSettings == null ? void 0 : imageSettings.src;\n const _canvas = React.useRef(null);\n const _image = React.useRef(null);\n const [isImgLoaded, setIsImageLoaded] = React.useState(false);\n React.useEffect(() => {\n if (_canvas.current != null) {\n const canvas = _canvas.current;\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) {\n return;\n }\n let cells = qrcodegen_default.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]).getModules();\n const margin = includeMargin ? MARGIN_SIZE : 0;\n const numCells = cells.length + margin * 2;\n const calculatedImageSettings = getImageSettings(cells, size, includeMargin, imageSettings);\n const image = _image.current;\n const haveImageToRender = calculatedImageSettings != null && image !== null && image.complete && image.naturalHeight !== 0 && image.naturalWidth !== 0;\n if (haveImageToRender) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n }\n const pixelRatio = window.devicePixelRatio || 1;\n canvas.height = canvas.width = size * pixelRatio;\n const scale = size / numCells * pixelRatio;\n ctx.scale(scale, scale);\n ctx.fillStyle = bgColor;\n ctx.fillRect(0, 0, numCells, numCells);\n ctx.fillStyle = fgColor;\n if (SUPPORTS_PATH2D) {\n ctx.fill(new Path2D(generatePath(cells, margin)));\n } else {\n cells.forEach(function(row, rdx) {\n row.forEach(function(cell, cdx) {\n if (cell) {\n ctx.fillRect(cdx + margin, rdx + margin, 1, 1);\n }\n });\n });\n }\n if (haveImageToRender) {\n ctx.drawImage(image, calculatedImageSettings.x + margin, calculatedImageSettings.y + margin, calculatedImageSettings.w, calculatedImageSettings.h);\n }\n }\n });\n React.useEffect(() => {\n setIsImageLoaded(false);\n }, [imgSrc]);\n const canvasStyle = __spreadValues({ height: size, width: size }, style);\n let img = null;\n if (imgSrc != null) {\n img = /* @__PURE__ */ React.createElement(\"img\", {\n src: imgSrc,\n key: imgSrc,\n style: { display: \"none\" },\n onLoad: () => {\n setIsImageLoaded(true);\n },\n ref: _image\n });\n }\n return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"canvas\", __spreadValues({\n style: canvasStyle,\n height: size,\n width: size,\n ref: _canvas\n }, otherProps)), img);\n}\nfunction QRCodeSVG(props) {\n const _a = props, {\n value,\n size = DEFAULT_SIZE,\n level = DEFAULT_LEVEL,\n bgColor = DEFAULT_BGCOLOR,\n fgColor = DEFAULT_FGCOLOR,\n includeMargin = DEFAULT_INCLUDEMARGIN,\n imageSettings\n } = _a, otherProps = __objRest(_a, [\n \"value\",\n \"size\",\n \"level\",\n \"bgColor\",\n \"fgColor\",\n \"includeMargin\",\n \"imageSettings\"\n ]);\n let cells = qrcodegen_default.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]).getModules();\n const margin = includeMargin ? MARGIN_SIZE : 0;\n const numCells = cells.length + margin * 2;\n const calculatedImageSettings = getImageSettings(cells, size, includeMargin, imageSettings);\n let image = null;\n if (imageSettings != null && calculatedImageSettings != null) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n image = /* @__PURE__ */ React.createElement(\"image\", {\n xlinkHref: imageSettings.src,\n height: calculatedImageSettings.h,\n width: calculatedImageSettings.w,\n x: calculatedImageSettings.x + margin,\n y: calculatedImageSettings.y + margin,\n preserveAspectRatio: \"none\"\n });\n }\n const fgPath = generatePath(cells, margin);\n return /* @__PURE__ */ React.createElement(\"svg\", __spreadValues({\n height: size,\n width: size,\n viewBox: `0 0 ${numCells} ${numCells}`\n }, otherProps), /* @__PURE__ */ React.createElement(\"path\", {\n fill: bgColor,\n d: `M0,0 h${numCells}v${numCells}H0z`,\n shapeRendering: \"crispEdges\"\n }), /* @__PURE__ */ React.createElement(\"path\", {\n fill: fgColor,\n d: fgPath,\n shapeRendering: \"crispEdges\"\n }), image);\n}\nvar QRCode = (props) => {\n const _a = props, { renderAs } = _a, otherProps = __objRest(_a, [\"renderAs\"]);\n if (renderAs === \"svg\") {\n return /* @__PURE__ */ React.createElement(QRCodeSVG, __spreadValues({}, otherProps));\n }\n return /* @__PURE__ */ React.createElement(QRCodeCanvas, __spreadValues({}, otherProps));\n};\nexport {\n QRCodeCanvas,\n QRCodeSVG,\n QRCode as default\n};\n","import { slugify } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport QRCodeImage from \"qrcode.react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CardLayout from \"components/CardLayout\";\nimport Container from \"components/Container\";\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport Header from \"components/Header\";\n\nimport { copyCanvasToClipboard, downloadCanvas } from \"./utils\";\n\nconst QRCode = ({ entity, qrCodeProps, url, shareUrl }) => {\n const { t } = useTranslation();\n\n if (!entity) return null;\n\n const { id, name } = entity;\n const canvasId = `qrcode-share-${id}`;\n\n const handleDownloadQRCode = () => {\n const canvas = document.getElementById(canvasId);\n if (canvas) downloadCanvas(canvas, { name: slugify(name) });\n };\n\n const handleCopyQRCode = () => {\n const canvas = document.getElementById(canvasId);\n if (canvas) copyCanvasToClipboard(canvas, handleDownloadQRCode);\n };\n\n const title =\n qrCodeProps?.pageTitle ||\n qrCodeProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.qrCode.title\");\n\n const description =\n qrCodeProps?.pageDescription ||\n qrCodeProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.qrCode.description\");\n\n return (\n <Container className=\"neeto-molecules-embed-qr-code-landing-page py-8\">\n <Button\n className=\"mb-4\"\n data-cy=\"back-button\"\n data-testid=\"back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={shareUrl}\n />\n <Header\n className=\"py-0\"\n title={t(\"neetoMolecules.shareViaLink.qrCode.title\")}\n />\n <CardLayout\n {...{ description, title }}\n actionBlock={\n <div className=\"flex flex-wrap items-center gap-3\">\n <Button\n data-cy=\"qr-code-download-button\"\n data-testid=\"qr-code-download-button\"\n label={t(\"neetoMolecules.shareViaLink.qrCode.download\")}\n style=\"primary\"\n onClick={handleDownloadQRCode}\n />\n <CopyToClipboardButton\n data-cy=\"qr-code-copy-button\"\n data-testid=\"qr-code-copy-button\"\n label={t(\"neetoMolecules.shareViaLink.qrCode.copy\")}\n style=\"secondary\"\n onClick={handleCopyQRCode}\n />\n </div>\n }\n >\n <QRCodeImage\n className=\"mt-6 cursor-pointer\"\n data-cy=\"qr-code-image\"\n data-testid=\"qr-code-image\"\n id={canvasId}\n size={160}\n style={{ width: 160, height: 160 }}\n value={url}\n onClick={handleDownloadQRCode}\n />\n </CardLayout>\n </Container>\n );\n};\n\nexport default QRCode;\n","import { LeftArrow } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CardLayout from \"components/CardLayout\";\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport { SOCIAL_MEDIA_OPTIONS } from \"./constants\";\n\nconst SocialMedia = ({ socialMediaProps, url, shareUrl }) => {\n const { t } = useTranslation();\n\n const title =\n socialMediaProps?.pageTitle ||\n socialMediaProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.title\");\n\n const description =\n socialMediaProps?.pageDescription ||\n socialMediaProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.description\");\n\n return (\n <Container className=\"neeto-molecules-social-share-landing-page py-8\">\n <Button\n className=\"mb-4\"\n data-cy=\"back-button\"\n data-testid=\"back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={shareUrl}\n />\n <Header\n className=\"py-0\"\n title={t(\"neetoMolecules.shareViaLink.socialMediaShare.title\")}\n />\n <CardLayout\n {...{ description, title }}\n actionBlock={\n <div className=\"flex flex-wrap items-center gap-3\">\n {Object.entries(SOCIAL_MEDIA_OPTIONS).map(\n ([key, { label, icon: Icon, generateShareUrl }]) => (\n <Button\n {...{ label }}\n data-cy={`social-media-button-${key}`}\n data-testid={`social-media-button-${key}`}\n icon={Icon}\n iconPosition=\"right\"\n key={key}\n rel=\"noopener noreferrer\"\n style=\"tertiary\"\n target=\"_blank\"\n href={generateShareUrl({\n url,\n title: socialMediaProps?.postTitle,\n })}\n >\n <Icon size={24} />\n </Button>\n )\n )}\n </div>\n }\n />\n </Container>\n );\n};\n\nexport default SocialMedia;\n","/* eslint-disable @bigbinary/neeto/use-common-routes */\nimport { toLabelAndValue, isPresent, noop } from \"neetocist\";\nimport PrivateRoute from \"neetocommons/react-utils/PrivateRoute\";\nimport PropTypes from \"prop-types\";\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\n\nimport ErrorPage from \"components/ErrorPage\";\n\nimport MainPanel from \"./MainPanel\";\nimport QRCode from \"./QRCode\";\nimport \"./share-via-link.scss\";\nimport SocialMedia from \"./SocialMedia\";\n\nconst ShareViaLink = ({\n title,\n description,\n isLoading = false,\n enabledOptions = { regenerate: false, edit: false },\n urls = [],\n entity,\n entityName,\n handleEdit = noop,\n handleRegenerate = noop,\n disableShareSocialMedia = false,\n disableQRDownload = false,\n socialMediaProps,\n qrCodeProps,\n moreOptions,\n publicLinkExpiryConfiguration = {},\n customTopContent,\n customBottomContent,\n}) => {\n const { path: sharePath, url: shareUrl } = useRouteMatch();\n\n return (\n <Switch>\n <Route\n exact\n path={sharePath}\n render={() => (\n <MainPanel\n {...{\n customBottomContent,\n customTopContent,\n description,\n disableQRDownload,\n disableShareSocialMedia,\n enabledOptions,\n entity,\n entityName,\n handleEdit,\n handleRegenerate,\n isLoading,\n moreOptions,\n publicLinkExpiryConfiguration,\n qrCodeProps,\n socialMediaProps,\n title,\n urls,\n }}\n />\n )}\n />\n <Route\n exact\n path={`${sharePath}/qrcode`}\n render={() => (\n <QRCode {...{ entity, qrCodeProps, shareUrl }} url={urls[0]?.url} />\n )}\n />\n <Route\n exact\n path={`${sharePath}/social-media`}\n render={() => (\n <SocialMedia {...{ shareUrl, socialMediaProps }} url={urls[0]?.url} />\n )}\n />\n {isPresent(moreOptions) &&\n moreOptions.map(({ link, element, path, permissions }) => {\n if (!link && !path) return null;\n\n return (\n <PrivateRoute\n {...{ permissions }}\n exact\n component={() => element}\n key={link}\n path={path || link}\n />\n );\n })}\n <Route component={ErrorPage} path=\"*\" />\n </Switch>\n );\n};\n\nShareViaLink.propTypes = {\n /**\n * The title of the share via link component.\n */\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n /**\n * The description of the share via link component.\n */\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n /**\n * The custom content to be shown in the top of the share panel.\n */\n customTopContent: PropTypes.element,\n /**\n * The custom content to be shown in the bottom of the share panel.\n */\n customBottomContent: PropTypes.element,\n /**\n * The boolean value to check if the link is being regenerated or updated.\n */\n isLoading: PropTypes.bool,\n /**\n * An object which accepts two boolean values that decide if the dropdown options are hidden or not. If both are false, then the dropdown is hidden as well.\n */\n enabledOptions: PropTypes.shape({\n regenerate:\n PropTypes.bool ||\n PropTypes.shape({\n expiresInOptions: PropTypes.arrayOf(toLabelAndValue(PropTypes.string)),\n }),\n edit: PropTypes.bool,\n }),\n /**\n * The entity object for which the link is being shared.\n */\n entity: PropTypes.shape({\n id: PropTypes.string,\n name: PropTypes.string,\n }),\n /**\n * The type of the entity for which the link is being shared.\n */\n entityName: PropTypes.string,\n /**\n * The function that is called when the Edit URL form is submitted. It returns the updated URL value.\n */\n handleEdit: PropTypes.func,\n /**\n * The function which makes the API call to regenerate the url.\n */\n handleRegenerate: PropTypes.func,\n /**\n * To customize the social media card and its dedicated page.\n */\n socialMediaProps: PropTypes.shape({\n cardTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n cardDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n postTitle: PropTypes.string,\n }),\n /**\n * To customize the QR code card and its dedicated page.\n */\n qrCodeProps: PropTypes.shape({\n cardTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n cardDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n }),\n /**\n * The props that are passed to the edit URL field. `prefix` and `editablePath` decide\n * which part of the URL is to be added in the prefix and which part is editable. Default values are taken from `url`.\n * `maxLength` decides if the entered URL should be limited to specified number of characters.\n * `previewUrl` will be used for previewing the entity (optional).\n */\n urls: PropTypes.arrayOf(\n PropTypes.shape({\n prefix: PropTypes.string,\n editablePath: PropTypes.string,\n maxLength: PropTypes.number,\n url: PropTypes.string,\n previewUrl: PropTypes.string,\n })\n ),\n /**\n * To share using alternative options\n */\n moreOptions: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n link: PropTypes.string,\n path: PropTypes.string,\n icon: PropTypes.elementType,\n onClick: PropTypes.func,\n dataCy: PropTypes.string,\n element: PropTypes.element,\n subtitleProps: PropTypes.shape({\n subtitle: PropTypes.string,\n dataCy: PropTypes.string,\n link: PropTypes.string,\n onClick: PropTypes.func,\n }),\n })\n ),\n /**\n * To disable share social media section.\n */\n disableShareSocialMedia: PropTypes.bool,\n /**\n * To disable QR code download section.\n */\n disableQRDownload: PropTypes.bool,\n};\n\nexport default ShareViaLink;\n"],"names":["ExpiryNotice","_ref","expiryConfiguration","_useTranslation","useTranslation","t","daysBeforeExpiry","notice","count","_jsx","Typography","lineHeight","style","className","classNames","children","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","facebookShareLink","url","buildUrl","linkedInShareLink","_ref2","title","mini","text","concat","twitterShareLink","_ref3","downloadCanvas","canvas","options","arguments","undefined","_options$name","name","_options$extension","extension","canvasUrl","toDataURL","element","document","createElement","href","download","click","remove","copyCanvasToClipboard","_ref4","_asyncToGenerator","_callee","handleDownloadQRCode","blob","clipboardItem","_context","Promise","resolve","toBlob","ClipboardItem","_defineProperty","type","navigator","clipboard","write","_x","_x2","apply","getPathname","URL","pathname","slice","getPrefixFromUrl","origin","truncatePrefix","inputElement","prefixText","parentElement","prefixElement","querySelector","_getComputedStyle","getComputedStyle","fontSize","averageCharWidth","parseFloat","requiredInputWidth","prefixWidth","offsetWidth","maxPrefixChars","Math","max","floor","textContent","SOCIAL_MEDIA_OPTIONS","FACEBOOK","label","icon","Facebook","generateShareUrl","LINKEDIN","Linkedin","TWITTER","Twitter","PATH_VALIDATION_SCHEMA","yup","object","shape","path","string","required","matches","Header","Pane","Body","Footer","EditURL","editUrlProps","isOpen","onClose","isLoading","handleEdit","focusRef","useRef","prevIsLoadingRef","prefix","observerRef","ResizeObserver","_slicedToArray","entry","requestAnimationFrame","target","inputRef","useCallback","current","observe","disconnect","useEffect","_jsxs","initialFocusRef","size","weight","Formik","enableReinitialize","initialValues","editablePath","validationSchema","onSubmit","_ref5","isSubmitting","dirty","Form","Input","maxLength","ref","ActionBlock","cancelButtonProps","onClick","disabled","submitButtonProps","loading","RegenerateURL","_regenerateConfig$exp","_regenerateConfig$exp2","_globalProps$user$dat","_globalProps","handleRegenerate","_ref$regenerateConfig","regenerateConfig","expiresInOptions","helpUrl","regenerateStrategy","isPresent","defaultExpiresInOption","_useState","useState","_useState2","selectedExpiresInOption","setSelectedExpiresInOption","defaultExpiresOnDate","dayjs","add","toDate","_useState3","_useState4","selectedExpiresOnDate","setSelectedExpiresOnDate","isSelectedExpiresInOptionNever","isSelectedExpiresInOptionCustom","isSelectedExpiresInOptionValidNumberOfDays","isValidExpiryConfig","expiryConfigPayload","expiresInDays","expiresOnDate","payload","Modal","Select","defaultValue","labelProps","helpIconProps","Help","popoverProps","helpLinkProps","onChange","option","DatePicker","dateFormat","globalProps","user","disabledDate","isBefore","getPopupContainer","prop","picker","Button","Link","enabledOptions","entityName","previewUrl","isRegenerateURLModalOpen","setIsRegenerateURLModalOpen","isEditURLModalOpen","setIsEditURLModalOpen","_useBreakpoints","useBreakpoints","isSize","isMobile","isDropdownEnabled","regenerate","edit","LinkIcon","iconPosition","CopyToClipboardButton","ExternalLink","tooltipProps","content","entity","position","touch","_Fragment","MoreDropdown","menuItems","isVisible","key","Card","link","description","Icon","_ref$onClick","noop","helpPopoverProps","otherProps","_objectWithoutProperties","_excluded","Component","_objectSpread","to","HelpPopover","ShareBlock","moreOptions","disableShareSocialMedia","disableQRDownload","socialMediaProps","qrCodeProps","urls","location","useLocation","history","useHistory","handleNavigate","subPath","push","hasMoreOptions","isNotEmpty","filter","permissions","isNotPresent","some","includes","__","map","dataCy","_createElement","Share","cardDescription","cardTitle","QrCode","MainPanel","_urls$","_ref$isLoading","_ref$enabledOptions","_ref$urls","_ref$handleEdit","_ref$handleRegenerate","_ref$disableShareSoci","_ref$disableQRDownloa","_ref$publicLinkExpiry","publicLinkExpiryConfiguration","customTopContent","customBottomContent","shouldShowShareBlock","Container","classnames","productName","appName","urlOption","LinkBlock","omit","QRCode","shareUrl","id","canvasId","getElementById","slugify","handleCopyQRCode","pageTitle","pageDescription","LeftArrow","CardLayout","actionBlock","QRCodeImage","width","height","SocialMedia","entries","_ref3$","rel","postTitle","ShareViaLink","_useRouteMatch","useRouteMatch","sharePath","Switch","Route","exact","render","_urls$2","PrivateRoute","component","ErrorPage"],"mappings":"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","x_google_ignoreList":[9]}
1
+ {"version":3,"file":"ShareViaLink.js","sources":["../../src/components/ShareViaLink/ExpiryNotice.jsx","../../src/components/ShareViaLink/utils.js","../../src/components/ShareViaLink/constants.js","../../src/components/ShareViaLink/EditURL.jsx","../../src/components/ShareViaLink/RegenerateURL.jsx","../../src/components/ShareViaLink/Link.jsx","../../src/components/ShareViaLink/Card.jsx","../../src/components/ShareViaLink/ShareBlock.jsx","../../src/components/ShareViaLink/MainPanel.jsx","../../node_modules/qrcode.react/lib/esm/index.js","../../src/components/ShareViaLink/QRCode.jsx","../../src/components/ShareViaLink/SocialMedia.jsx","../../src/components/ShareViaLink/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ExpiryNotice = ({ expiryConfiguration }) => {\n const { t } = useTranslation();\n const { daysBeforeExpiry } = expiryConfiguration;\n\n let notice = t(\"neetoMolecules.shareViaLink.expiryNotice.daysRemaining\", {\n count: daysBeforeExpiry,\n });\n if (daysBeforeExpiry < 1) {\n notice = t(\"neetoMolecules.shareViaLink.expiryNotice.expiresToday\");\n }\n\n if (daysBeforeExpiry <= 0) {\n notice = t(\"neetoMolecules.shareViaLink.expiryNotice.expired\");\n }\n\n return (\n <Typography\n data-testid=\"expiry-notice\"\n lineHeight=\"normal\"\n style=\"body3\"\n className={classNames(\"ml-1\", {\n \"neeto-ui-text-error-800\": daysBeforeExpiry <= 1,\n \"neeto-ui-text-gray-700\": daysBeforeExpiry > 1,\n })}\n >\n {notice}\n </Typography>\n );\n};\n\nexport default ExpiryNotice;\n","import { buildUrl } from \"neetocommons/utils/general\";\n\nexport const facebookShareLink = ({ url }) =>\n buildUrl(\"https://www.facebook.com/sharer/sharer.php\", { u: url });\n\nexport const linkedInShareLink = ({ url, title }) =>\n buildUrl(\"https://www.linkedin.com/sharing/share-offsite\", {\n mini: true,\n text: `${title} ${url}`,\n });\n\nexport const twitterShareLink = ({ url, title }) =>\n buildUrl(\"http://twitter.com/share\", { text: title, url });\n\nexport const downloadCanvas = (canvas, options = {}) => {\n const { name = \"image\", extension = \"png\" } = options;\n\n const canvasUrl = canvas.toDataURL(`image/${extension}`);\n const element = document.createElement(\"a\");\n element.href = canvasUrl;\n element.download = `${name}.${extension}`;\n element.click();\n element.remove();\n};\n\nexport const copyCanvasToClipboard = async (canvas, handleDownloadQRCode) => {\n if (!canvas) return;\n\n try {\n const blob = await new Promise(resolve => canvas.toBlob(resolve));\n if (!blob) return;\n\n const clipboardItem = new ClipboardItem({ [blob.type]: blob });\n navigator.clipboard.write([clipboardItem]);\n } catch {\n handleDownloadQRCode();\n }\n};\n\nexport const getPathname = url => new URL(url).pathname.slice(1);\n\nexport const getPrefixFromUrl = url => `${new URL(url).origin}/`;\n\nexport const truncatePrefix = (inputElement, prefixText) => {\n const parentElement = inputElement.parentElement;\n const prefixElement = parentElement.querySelector(\".neeto-ui-input__prefix\");\n\n const { fontSize } = getComputedStyle(inputElement);\n const averageCharWidth = parseFloat(fontSize) * 0.6;\n\n const requiredInputWidth = inputElement.value.length * averageCharWidth;\n const prefixWidth = parentElement.offsetWidth - requiredInputWidth;\n\n const maxPrefixChars = Math.max(\n Math.floor(prefixWidth / averageCharWidth),\n 5\n );\n\n prefixElement.textContent =\n maxPrefixChars < prefixText.length\n ? `...${prefixText.slice(-maxPrefixChars)}`\n : prefixText;\n};\n","import { t } from \"i18next\";\nimport { RESERVED_PATHS } from \"neetocommons/constants\";\nimport { Facebook, Linkedin, Twitter } from \"neetoicons\";\nimport * as yup from \"yup\";\n\nimport {\n facebookShareLink,\n twitterShareLink,\n linkedInShareLink,\n} from \"./utils\";\n\nexport const SOCIAL_MEDIA_OPTIONS = {\n FACEBOOK: {\n label: t(\"neetoMolecules.shareViaLink.socialMediaShare.facebook\"),\n icon: Facebook,\n generateShareUrl: facebookShareLink,\n },\n LINKEDIN: {\n label: t(\"neetoMolecules.shareViaLink.socialMediaShare.linkedIn\"),\n icon: Linkedin,\n generateShareUrl: linkedInShareLink,\n },\n TWITTER: {\n label: t(\"neetoMolecules.shareViaLink.socialMediaShare.twitter\"),\n icon: Twitter,\n generateShareUrl: twitterShareLink,\n },\n};\n\nexport const PATH_VALIDATION_SCHEMA = yup.object().shape({\n path: yup\n .string()\n .required(t(\"neetoMolecules.shareViaLink.editUrl.validationError\"))\n .matches(\n /^[A-Za-z0-9]([\\w/-])*$/,\n t(\"neetoMolecules.shareViaLink.editUrl.validationError\")\n )\n .test(\n \"reserved-path\",\n t(\"neetoMolecules.shareViaLink.editUrl.reservedPathError\"),\n value => !RESERVED_PATHS.includes(value?.toLowerCase())\n ),\n});\n","import { useCallback, useEffect, useRef } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { Typography, Pane } from \"neetoui\";\nimport { Input, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PATH_VALIDATION_SCHEMA } from \"./constants\";\nimport \"./edit-url.scss\";\nimport { getPathname, getPrefixFromUrl, truncatePrefix } from \"./utils\";\n\nconst { Header, Body, Footer } = Pane;\n\nconst EditURL = ({\n editUrlProps,\n isOpen,\n onClose,\n url,\n isLoading,\n handleEdit,\n}) => {\n const { t } = useTranslation();\n\n const focusRef = useRef(null);\n const prevIsLoadingRef = useRef(isLoading);\n\n const prefixText = editUrlProps?.prefix || getPrefixFromUrl(url);\n\n const observerRef = useRef(\n new ResizeObserver(([entry]) =>\n requestAnimationFrame(() => truncatePrefix(entry.target, prefixText))\n )\n );\n\n const inputRef = useCallback(inputElement => {\n focusRef.current = inputElement;\n\n inputElement\n ? observerRef.current.observe(inputElement)\n : observerRef.current.disconnect();\n }, []);\n\n useEffect(() => {\n if (prevIsLoadingRef.current && !isLoading) onClose();\n\n prevIsLoadingRef.current = isLoading;\n }, [isLoading]);\n\n return (\n <Pane\n {...{ isOpen, onClose }}\n data-testid=\"edit-url-modal\"\n initialFocusRef={focusRef}\n size=\"large\"\n >\n <Header>\n <Typography lineHeight=\"normal\" style=\"h2\" weight=\"semibold\">\n {t(\"neetoMolecules.shareViaLink.editUrl.title\")}\n </Typography>\n </Header>\n <Formik\n enableReinitialize\n initialValues={{ path: editUrlProps?.editablePath || getPathname(url) }}\n validationSchema={PATH_VALIDATION_SCHEMA}\n onSubmit={({ path }) => handleEdit(path)}\n >\n {({ isSubmitting, dirty }) => (\n <Form>\n <Body className=\"flex flex-col gap-y-6\">\n <Input\n className=\"no-padding w-full flex-grow-0\"\n data-testid=\"edit-url-input\"\n label={t(\"neetoMolecules.shareViaLink.editUrl.inputLabel\")}\n maxLength={editUrlProps?.maxLength}\n name=\"path\"\n prefix={prefixText}\n ref={inputRef}\n />\n <Typography\n className=\"neeto-ui-text-gray-700\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.shareViaLink.editUrl.description\")}\n </Typography>\n </Body>\n <Footer className=\"flex items-center gap-x-2\">\n <ActionBlock\n className=\"flex items-center gap-x-2\"\n cancelButtonProps={{\n onClick: onClose,\n disabled: isSubmitting,\n \"data-testid\": \"edit-url-cancel-button\",\n }}\n submitButtonProps={{\n disabled: isSubmitting || !dirty,\n loading: isLoading,\n \"data-testid\": \"edit-url-confirm-button\",\n }}\n />\n </Footer>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default EditURL;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Help } from \"neetoicons\";\nimport { Typography, Modal, Button, Input, Select, DatePicker } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst RegenerateURL = ({\n isOpen,\n onClose,\n url,\n isLoading,\n handleRegenerate,\n regenerateConfig = { expiresInOptions: [], helpUrl: null },\n}) => {\n const { t } = useTranslation();\n\n const prevIsLoadingRef = useRef(isLoading);\n const regenerateStrategy = isPresent(regenerateConfig?.expiresInOptions)\n ? \"expiryBased\"\n : \"basic\";\n\n const defaultExpiresInOption = regenerateConfig?.expiresInOptions?.[0]?.value;\n const [selectedExpiresInOption, setSelectedExpiresInOption] = useState(\n defaultExpiresInOption\n );\n\n const defaultExpiresOnDate = dayjs().add(10, \"day\").toDate();\n const [selectedExpiresOnDate, setSelectedExpiresOnDate] =\n useState(defaultExpiresOnDate);\n\n const isSelectedExpiresInOptionNever = selectedExpiresInOption === \"never\";\n const isSelectedExpiresInOptionCustom = selectedExpiresInOption === \"custom\";\n\n const isSelectedExpiresInOptionValidNumberOfDays =\n isPresent(selectedExpiresInOption) &&\n !isSelectedExpiresInOptionCustom &&\n !isSelectedExpiresInOptionNever;\n\n const isValidExpiryConfig =\n isSelectedExpiresInOptionNever ||\n (isSelectedExpiresInOptionCustom && isPresent(selectedExpiresOnDate)) ||\n isSelectedExpiresInOptionValidNumberOfDays;\n\n const expiryConfigPayload = isSelectedExpiresInOptionValidNumberOfDays\n ? { expiresInDays: selectedExpiresInOption }\n : { expiresOnDate: selectedExpiresOnDate };\n\n const onSubmit = () =>\n regenerateStrategy === \"basic\" || isSelectedExpiresInOptionNever\n ? handleRegenerate()\n : handleRegenerate({ payload: expiryConfigPayload });\n\n useEffect(() => {\n if (prevIsLoadingRef.current && !isLoading) onClose();\n\n prevIsLoadingRef.current = isLoading;\n }, [isLoading]);\n\n useEffect(() => {\n if (!isOpen) return;\n\n setSelectedExpiresInOption(defaultExpiresInOption);\n setSelectedExpiresOnDate(defaultExpiresOnDate);\n }, [isOpen]);\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n data-testid=\"regenerate-url-modal\"\n size={regenerateStrategy === \"basic\" ? \"medium\" : \"large\"}\n >\n <Modal.Header>\n <Typography lineHeight=\"normal\" style=\"h2\" weight=\"semibold\">\n {regenerateStrategy === \"expiryBased\"\n ? t(\n \"neetoMolecules.shareViaLink.regenerateUrl.titleForExpiryBasedRegeneration\"\n )\n : t(\"neetoMolecules.shareViaLink.regenerateUrl.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {regenerateStrategy === \"basic\" && (\n <Input\n disabled\n label={t(\"neetoMolecules.shareViaLink.regenerateUrl.inputLabel\")}\n value={url}\n />\n )}\n {regenerateStrategy === \"expiryBased\" && (\n <div className=\"flex flex-row gap-2\">\n <Select\n data-testid=\"expires-in-select\"\n defaultValue={regenerateConfig.expiresInOptions?.[0]}\n options={regenerateConfig.expiresInOptions}\n className={classNames({\n \"w-1/2\": isSelectedExpiresInOptionCustom,\n \"w-full\": !isSelectedExpiresInOptionCustom,\n })}\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.expiresInLabel\"\n )}\n labelProps={{\n helpIconProps: isPresent(regenerateConfig?.helpUrl) && {\n icon: Help,\n className:\n \"cursor-pointer opacity-75 hover:opacity-100 transition-opacity duration-300 ease-in-out\",\n popoverProps: {\n title: t(\n \"neetoMolecules.shareViaLink.regenerateUrl.expiresInHelpTitle\"\n ),\n helpLinkProps: {\n label: t(\n \"neetoMolecules.shareViaLink.regenerateUrl.helpLinkLabel\"\n ),\n href: regenerateConfig?.helpUrl,\n target: \"_blank\",\n },\n },\n },\n }}\n onChange={option => setSelectedExpiresInOption(option.value)}\n />\n {isSelectedExpiresInOptionCustom && (\n <DatePicker\n data-testid=\"expires-on-date-picker\"\n dateFormat={globalProps?.user?.dateFormat ?? undefined}\n disabledDate={d => !d || d.isBefore(dayjs())}\n getPopupContainer={prop(\"parentNode\")}\n picker=\"date\"\n type=\"date\"\n value={selectedExpiresOnDate}\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.expiresOnLabel\"\n )}\n onChange={setSelectedExpiresOnDate}\n />\n )}\n </div>\n )}\n <Typography\n className=\"neeto-ui-text-gray-700\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.shareViaLink.regenerateUrl.description\")}\n </Typography>\n </div>\n </Modal.Body>\n <Modal.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"regenerate-url-confirm-button\"\n data-testid=\"regenerate-url-confirm-button\"\n loading={isLoading}\n disabled={\n regenerateStrategy === \"expiryBased\" && !isValidExpiryConfig\n }\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.submitButtonLabel\"\n )}\n onClick={onSubmit}\n />\n <Button\n data-cy=\"regenerate-url-cancel-button\"\n data-testid=\"regenerate-url-cancel-button\"\n style=\"text\"\n label={t(\n \"neetoMolecules.shareViaLink.regenerateUrl.cancelButtonLabel\"\n )}\n onClick={onClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default RegenerateURL;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { ExternalLink, Link as LinkIcon } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport EditURL from \"./EditURL\";\nimport RegenerateURL from \"./RegenerateURL\";\n\nconst Link = ({\n editUrlProps,\n enabledOptions,\n entityName,\n handleEdit,\n handleRegenerate,\n isLoading,\n previewUrl,\n url,\n}) => {\n const [isRegenerateURLModalOpen, setIsRegenerateURLModalOpen] =\n useState(false);\n const [isEditURLModalOpen, setIsEditURLModalOpen] = useState(false);\n\n const { t } = useTranslation();\n\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const isDropdownEnabled = enabledOptions.regenerate || enabledOptions.edit;\n\n return (\n <div\n className=\"flex flex-col gap-y-4\"\n data-cy=\"link-block\"\n data-testid=\"link-block\"\n >\n <div className=\"flex items-center gap-1 sm:gap-2\">\n <div\n className=\"relative flex min-w-0 flex-grow items-stretch truncate leading-none\"\n data-cy=\"nui-input-field\"\n >\n <div className=\"neeto-ui-rounded-md neeto-ui-border-gray-300 neeto-ui-bg-gray-50 relative flex min-w-0 flex-grow items-center truncate rounded-br-none rounded-tr-none border leading-none\">\n <Button\n className=\"neeto-molecules-share-link-button relative min-w-0 flex-grow flex-row truncate px-2 py-1 leading-none\"\n href={url}\n icon={LinkIcon}\n iconPosition=\"left\"\n label={url}\n style=\"link\"\n target=\"_blank\"\n />\n </div>\n <CopyToClipboardButton\n className=\"rounded-l-none\"\n data-cy=\"link-copy-button\"\n data-testid=\"link-copy-button\"\n label={!isMobile ? t(\"neetoMolecules.shareViaLink.copyLink\") : null}\n value={url}\n />\n </div>\n <div className=\"flex flex-shrink-0 items-center gap-1 sm:gap-2\">\n <Button\n data-cy=\"preview-button\"\n data-testid=\"preview-button\"\n href={previewUrl || url}\n icon={ExternalLink}\n style=\"secondary\"\n target=\"_blank\"\n tooltipProps={{\n content: t(\"neetoMolecules.shareViaLink.view\", {\n entity: entityName,\n }),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n />\n {isDropdownEnabled && (\n <>\n <MoreDropdown\n menuItems={[\n {\n isVisible:\n enabledOptions.regenerate ||\n isPresent(enabledOptions.regenerate),\n \"data-testid\": \"regenerate-url-button\",\n \"data-cy\": \"regenerate-url-button\",\n onClick: () => setIsRegenerateURLModalOpen(true),\n label: t(\"neetoMolecules.shareViaLink.regenerateUrl.title\"),\n key: \"regenerate-url-option\",\n },\n {\n isVisible: enabledOptions.edit,\n \"data-testid\": \"edit-url-button\",\n \"data-cy\": \"edit-url-button\",\n onClick: () => setIsEditURLModalOpen(true),\n label: t(\"neetoMolecules.shareViaLink.editUrl.title\"),\n key: \"edit-url-option\",\n },\n ]}\n />\n <RegenerateURL\n {...{ handleRegenerate, isLoading, url }}\n isOpen={isRegenerateURLModalOpen}\n regenerateConfig={enabledOptions.regenerate}\n onClose={() => setIsRegenerateURLModalOpen(false)}\n />\n <EditURL\n {...{ editUrlProps, handleEdit, isLoading, url }}\n isOpen={isEditURLModalOpen}\n onClose={() => setIsEditURLModalOpen(false)}\n />\n </>\n )}\n </div>\n </div>\n </div>\n );\n};\n\nexport default Link;\n","import { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { Link } from \"react-router-dom\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nconst Card = ({\n title,\n link,\n description,\n Icon,\n onClick = noop,\n helpPopoverProps,\n ...otherProps\n}) => {\n const Component = isPresent(link) ? Link : \"div\";\n\n return (\n <Component\n {...{ onClick }}\n className=\"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-molecules-share-landing__card flex cursor-pointer flex-col gap-3 border p-3\"\n to={link}\n {...otherProps}\n >\n <div className=\"flex items-center gap-2\">\n {Icon && (\n <Icon className=\"neeto-ui-text-gray-500 flex-shrink-0\" size={24} />\n )}\n <Typography\n className=\"neeto-molecules-share-landing__card-title min-w-0 flex-grow break-words\"\n style=\"h4\"\n >\n {title}\n {helpPopoverProps && (\n <>\n {\" \"}\n <HelpPopover {...helpPopoverProps} />\n </>\n )}\n </Typography>\n </div>\n {description && (\n <Typography\n className=\"neeto-molecules-share-landing__card-desc break-words\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {description}\n </Typography>\n )}\n </Component>\n );\n};\n\nexport default Card;\n","import classNames from \"classnames\";\nimport { isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Share, QrCode } from \"neetoicons\";\nimport { __, includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Card from \"./Card\";\n\nconst ShareBlock = ({\n moreOptions,\n disableShareSocialMedia,\n disableQRDownload,\n socialMediaProps,\n qrCodeProps,\n entity,\n urls,\n}) => {\n const location = useLocation();\n const history = useHistory();\n\n const { t } = useTranslation();\n\n const handleNavigate = subPath => {\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n history.push(`${location.pathname}/${subPath}`);\n };\n\n const hasMoreOptions = isPresent(moreOptions);\n\n return (\n <div\n className={classNames(\n \"grid grid-cols-1 gap-4 sm:grid-cols-2 md:grid-cols-3\",\n {\n \"neeto-ui-border-gray-200 mt-8 border-t pt-8\": isNotEmpty(urls),\n }\n )}\n >\n {hasMoreOptions &&\n moreOptions\n .filter(\n ({ permissions }) =>\n isNotPresent(permissions) ||\n globalProps.permissions.some(includes(__, permissions))\n )\n .map(\n ({\n title,\n link,\n icon: Icon,\n onClick,\n dataCy,\n description,\n helpPopoverProps,\n }) => (\n <Card\n {...{\n Icon,\n description,\n helpPopoverProps,\n link,\n onClick,\n title,\n }}\n data-cy={dataCy}\n data-testid={dataCy}\n key={link}\n />\n )\n )}\n {!disableShareSocialMedia && (\n <Card\n Icon={Share}\n data-cy=\"social-share-card\"\n data-testid=\"social-share-card\"\n description={\n socialMediaProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.description\")\n }\n title={\n socialMediaProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.title\")\n }\n onClick={() => handleNavigate(\"social-media\")}\n />\n )}\n {!disableQRDownload && entity && (\n <Card\n Icon={QrCode}\n data-cy=\"qr-code-card\"\n data-testid=\"qr-code-card\"\n description={\n qrCodeProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.qrCode.description\")\n }\n title={\n qrCodeProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.qrCode.title\")\n }\n onClick={() => handleNavigate(\"qrcode\")}\n />\n )}\n </div>\n );\n};\n\nexport default ShareBlock;\n","import classnames from \"classnames\";\nimport { isNotEmpty, isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\n\nimport ExpiryNotice from \"./ExpiryNotice\";\nimport LinkBlock from \"./Link\";\nimport ShareBlock from \"./ShareBlock\";\n\nconst MainPanel = ({\n title,\n description,\n qrCodeProps,\n socialMediaProps,\n isLoading = false,\n enabledOptions = { regenerate: false, edit: false },\n urls = [],\n entity,\n entityName,\n handleEdit = noop,\n handleRegenerate = noop,\n moreOptions,\n disableShareSocialMedia = false,\n disableQRDownload = false,\n publicLinkExpiryConfiguration = {},\n customTopContent,\n customBottomContent,\n}) => {\n const { t } = useTranslation();\n\n const shouldShowShareBlock =\n !disableQRDownload || !disableShareSocialMedia || isPresent(moreOptions);\n\n return (\n <Container className=\"neeto-ui-bg-gray-100 neeto-molecule-share-landing-page\">\n <div className=\"mx-auto w-full max-w-5xl py-10\">\n {customTopContent}\n <Typography\n data-cy=\"share-your-meeting-heading\"\n lineHeight=\"tight\"\n style=\"h2\"\n className={classnames({\n \"mb-2\": isPresent(description),\n \"mb-6\": !isPresent(description),\n })}\n >\n {title ||\n t(\"neetoMolecules.shareViaLink.title\", {\n productName: globalProps.appName,\n })}\n </Typography>\n {description && (\n <Typography\n className=\"mb-6\"\n data-cy=\"share-your-meeting-heading\"\n lineHeight=\"normal\"\n style=\"body1\"\n >\n {description}\n </Typography>\n )}\n <div\n className=\"neeto-ui-rounded-lg neeto-ui-bg-white p-6 sm:p-8\"\n data-testid=\"share-via-link\"\n >\n {isNotEmpty(urls) && (\n <div className=\"flex flex-col gap-y-1\">\n <div className=\"inline-flex max-w-full flex-col gap-y-4\">\n {urls?.map(urlOption => (\n <LinkBlock\n {...{\n enabledOptions,\n entityName,\n handleEdit,\n handleRegenerate,\n isLoading,\n }}\n editUrlProps={omit([\"url\"], urlOption)}\n key={urlOption.url}\n previewUrl={urlOption.previewUrl}\n url={urlOption.url}\n />\n ))}\n </div>\n {isPresent(publicLinkExpiryConfiguration) && (\n <ExpiryNotice\n expiryConfiguration={publicLinkExpiryConfiguration}\n />\n )}\n </div>\n )}\n {shouldShowShareBlock && (\n <ShareBlock\n {...{\n disableQRDownload,\n disableShareSocialMedia,\n entity,\n moreOptions,\n qrCodeProps,\n socialMediaProps,\n urls,\n }}\n url={urls[0]?.url}\n />\n )}\n </div>\n {customBottomContent}\n </div>\n </Container>\n );\n};\n\nexport default MainPanel;\n","var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\n\n// src/index.tsx\nimport React from \"react\";\n\n// src/third-party/qrcodegen/index.ts\n/**\n * @license QR Code generator library (TypeScript)\n * Copyright (c) Project Nayuki.\n * SPDX-License-Identifier: MIT\n */\nvar qrcodegen;\n((qrcodegen2) => {\n const _QrCode = class {\n constructor(version, errorCorrectionLevel, dataCodewords, msk) {\n this.version = version;\n this.errorCorrectionLevel = errorCorrectionLevel;\n this.modules = [];\n this.isFunction = [];\n if (version < _QrCode.MIN_VERSION || version > _QrCode.MAX_VERSION)\n throw new RangeError(\"Version value out of range\");\n if (msk < -1 || msk > 7)\n throw new RangeError(\"Mask value out of range\");\n this.size = version * 4 + 17;\n let row = [];\n for (let i = 0; i < this.size; i++)\n row.push(false);\n for (let i = 0; i < this.size; i++) {\n this.modules.push(row.slice());\n this.isFunction.push(row.slice());\n }\n this.drawFunctionPatterns();\n const allCodewords = this.addEccAndInterleave(dataCodewords);\n this.drawCodewords(allCodewords);\n if (msk == -1) {\n let minPenalty = 1e9;\n for (let i = 0; i < 8; i++) {\n this.applyMask(i);\n this.drawFormatBits(i);\n const penalty = this.getPenaltyScore();\n if (penalty < minPenalty) {\n msk = i;\n minPenalty = penalty;\n }\n this.applyMask(i);\n }\n }\n assert(0 <= msk && msk <= 7);\n this.mask = msk;\n this.applyMask(msk);\n this.drawFormatBits(msk);\n this.isFunction = [];\n }\n static encodeText(text, ecl) {\n const segs = qrcodegen2.QrSegment.makeSegments(text);\n return _QrCode.encodeSegments(segs, ecl);\n }\n static encodeBinary(data, ecl) {\n const seg = qrcodegen2.QrSegment.makeBytes(data);\n return _QrCode.encodeSegments([seg], ecl);\n }\n static encodeSegments(segs, ecl, minVersion = 1, maxVersion = 40, mask = -1, boostEcl = true) {\n if (!(_QrCode.MIN_VERSION <= minVersion && minVersion <= maxVersion && maxVersion <= _QrCode.MAX_VERSION) || mask < -1 || mask > 7)\n throw new RangeError(\"Invalid value\");\n let version;\n let dataUsedBits;\n for (version = minVersion; ; version++) {\n const dataCapacityBits2 = _QrCode.getNumDataCodewords(version, ecl) * 8;\n const usedBits = QrSegment.getTotalBits(segs, version);\n if (usedBits <= dataCapacityBits2) {\n dataUsedBits = usedBits;\n break;\n }\n if (version >= maxVersion)\n throw new RangeError(\"Data too long\");\n }\n for (const newEcl of [_QrCode.Ecc.MEDIUM, _QrCode.Ecc.QUARTILE, _QrCode.Ecc.HIGH]) {\n if (boostEcl && dataUsedBits <= _QrCode.getNumDataCodewords(version, newEcl) * 8)\n ecl = newEcl;\n }\n let bb = [];\n for (const seg of segs) {\n appendBits(seg.mode.modeBits, 4, bb);\n appendBits(seg.numChars, seg.mode.numCharCountBits(version), bb);\n for (const b of seg.getData())\n bb.push(b);\n }\n assert(bb.length == dataUsedBits);\n const dataCapacityBits = _QrCode.getNumDataCodewords(version, ecl) * 8;\n assert(bb.length <= dataCapacityBits);\n appendBits(0, Math.min(4, dataCapacityBits - bb.length), bb);\n appendBits(0, (8 - bb.length % 8) % 8, bb);\n assert(bb.length % 8 == 0);\n for (let padByte = 236; bb.length < dataCapacityBits; padByte ^= 236 ^ 17)\n appendBits(padByte, 8, bb);\n let dataCodewords = [];\n while (dataCodewords.length * 8 < bb.length)\n dataCodewords.push(0);\n bb.forEach((b, i) => dataCodewords[i >>> 3] |= b << 7 - (i & 7));\n return new _QrCode(version, ecl, dataCodewords, mask);\n }\n getModule(x, y) {\n return 0 <= x && x < this.size && 0 <= y && y < this.size && this.modules[y][x];\n }\n getModules() {\n return this.modules;\n }\n drawFunctionPatterns() {\n for (let i = 0; i < this.size; i++) {\n this.setFunctionModule(6, i, i % 2 == 0);\n this.setFunctionModule(i, 6, i % 2 == 0);\n }\n this.drawFinderPattern(3, 3);\n this.drawFinderPattern(this.size - 4, 3);\n this.drawFinderPattern(3, this.size - 4);\n const alignPatPos = this.getAlignmentPatternPositions();\n const numAlign = alignPatPos.length;\n for (let i = 0; i < numAlign; i++) {\n for (let j = 0; j < numAlign; j++) {\n if (!(i == 0 && j == 0 || i == 0 && j == numAlign - 1 || i == numAlign - 1 && j == 0))\n this.drawAlignmentPattern(alignPatPos[i], alignPatPos[j]);\n }\n }\n this.drawFormatBits(0);\n this.drawVersion();\n }\n drawFormatBits(mask) {\n const data = this.errorCorrectionLevel.formatBits << 3 | mask;\n let rem = data;\n for (let i = 0; i < 10; i++)\n rem = rem << 1 ^ (rem >>> 9) * 1335;\n const bits = (data << 10 | rem) ^ 21522;\n assert(bits >>> 15 == 0);\n for (let i = 0; i <= 5; i++)\n this.setFunctionModule(8, i, getBit(bits, i));\n this.setFunctionModule(8, 7, getBit(bits, 6));\n this.setFunctionModule(8, 8, getBit(bits, 7));\n this.setFunctionModule(7, 8, getBit(bits, 8));\n for (let i = 9; i < 15; i++)\n this.setFunctionModule(14 - i, 8, getBit(bits, i));\n for (let i = 0; i < 8; i++)\n this.setFunctionModule(this.size - 1 - i, 8, getBit(bits, i));\n for (let i = 8; i < 15; i++)\n this.setFunctionModule(8, this.size - 15 + i, getBit(bits, i));\n this.setFunctionModule(8, this.size - 8, true);\n }\n drawVersion() {\n if (this.version < 7)\n return;\n let rem = this.version;\n for (let i = 0; i < 12; i++)\n rem = rem << 1 ^ (rem >>> 11) * 7973;\n const bits = this.version << 12 | rem;\n assert(bits >>> 18 == 0);\n for (let i = 0; i < 18; i++) {\n const color = getBit(bits, i);\n const a = this.size - 11 + i % 3;\n const b = Math.floor(i / 3);\n this.setFunctionModule(a, b, color);\n this.setFunctionModule(b, a, color);\n }\n }\n drawFinderPattern(x, y) {\n for (let dy = -4; dy <= 4; dy++) {\n for (let dx = -4; dx <= 4; dx++) {\n const dist = Math.max(Math.abs(dx), Math.abs(dy));\n const xx = x + dx;\n const yy = y + dy;\n if (0 <= xx && xx < this.size && 0 <= yy && yy < this.size)\n this.setFunctionModule(xx, yy, dist != 2 && dist != 4);\n }\n }\n }\n drawAlignmentPattern(x, y) {\n for (let dy = -2; dy <= 2; dy++) {\n for (let dx = -2; dx <= 2; dx++)\n this.setFunctionModule(x + dx, y + dy, Math.max(Math.abs(dx), Math.abs(dy)) != 1);\n }\n }\n setFunctionModule(x, y, isDark) {\n this.modules[y][x] = isDark;\n this.isFunction[y][x] = true;\n }\n addEccAndInterleave(data) {\n const ver = this.version;\n const ecl = this.errorCorrectionLevel;\n if (data.length != _QrCode.getNumDataCodewords(ver, ecl))\n throw new RangeError(\"Invalid argument\");\n const numBlocks = _QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver];\n const blockEccLen = _QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver];\n const rawCodewords = Math.floor(_QrCode.getNumRawDataModules(ver) / 8);\n const numShortBlocks = numBlocks - rawCodewords % numBlocks;\n const shortBlockLen = Math.floor(rawCodewords / numBlocks);\n let blocks = [];\n const rsDiv = _QrCode.reedSolomonComputeDivisor(blockEccLen);\n for (let i = 0, k = 0; i < numBlocks; i++) {\n let dat = data.slice(k, k + shortBlockLen - blockEccLen + (i < numShortBlocks ? 0 : 1));\n k += dat.length;\n const ecc = _QrCode.reedSolomonComputeRemainder(dat, rsDiv);\n if (i < numShortBlocks)\n dat.push(0);\n blocks.push(dat.concat(ecc));\n }\n let result = [];\n for (let i = 0; i < blocks[0].length; i++) {\n blocks.forEach((block, j) => {\n if (i != shortBlockLen - blockEccLen || j >= numShortBlocks)\n result.push(block[i]);\n });\n }\n assert(result.length == rawCodewords);\n return result;\n }\n drawCodewords(data) {\n if (data.length != Math.floor(_QrCode.getNumRawDataModules(this.version) / 8))\n throw new RangeError(\"Invalid argument\");\n let i = 0;\n for (let right = this.size - 1; right >= 1; right -= 2) {\n if (right == 6)\n right = 5;\n for (let vert = 0; vert < this.size; vert++) {\n for (let j = 0; j < 2; j++) {\n const x = right - j;\n const upward = (right + 1 & 2) == 0;\n const y = upward ? this.size - 1 - vert : vert;\n if (!this.isFunction[y][x] && i < data.length * 8) {\n this.modules[y][x] = getBit(data[i >>> 3], 7 - (i & 7));\n i++;\n }\n }\n }\n }\n assert(i == data.length * 8);\n }\n applyMask(mask) {\n if (mask < 0 || mask > 7)\n throw new RangeError(\"Mask value out of range\");\n for (let y = 0; y < this.size; y++) {\n for (let x = 0; x < this.size; x++) {\n let invert;\n switch (mask) {\n case 0:\n invert = (x + y) % 2 == 0;\n break;\n case 1:\n invert = y % 2 == 0;\n break;\n case 2:\n invert = x % 3 == 0;\n break;\n case 3:\n invert = (x + y) % 3 == 0;\n break;\n case 4:\n invert = (Math.floor(x / 3) + Math.floor(y / 2)) % 2 == 0;\n break;\n case 5:\n invert = x * y % 2 + x * y % 3 == 0;\n break;\n case 6:\n invert = (x * y % 2 + x * y % 3) % 2 == 0;\n break;\n case 7:\n invert = ((x + y) % 2 + x * y % 3) % 2 == 0;\n break;\n default:\n throw new Error(\"Unreachable\");\n }\n if (!this.isFunction[y][x] && invert)\n this.modules[y][x] = !this.modules[y][x];\n }\n }\n }\n getPenaltyScore() {\n let result = 0;\n for (let y = 0; y < this.size; y++) {\n let runColor = false;\n let runX = 0;\n let runHistory = [0, 0, 0, 0, 0, 0, 0];\n for (let x = 0; x < this.size; x++) {\n if (this.modules[y][x] == runColor) {\n runX++;\n if (runX == 5)\n result += _QrCode.PENALTY_N1;\n else if (runX > 5)\n result++;\n } else {\n this.finderPenaltyAddHistory(runX, runHistory);\n if (!runColor)\n result += this.finderPenaltyCountPatterns(runHistory) * _QrCode.PENALTY_N3;\n runColor = this.modules[y][x];\n runX = 1;\n }\n }\n result += this.finderPenaltyTerminateAndCount(runColor, runX, runHistory) * _QrCode.PENALTY_N3;\n }\n for (let x = 0; x < this.size; x++) {\n let runColor = false;\n let runY = 0;\n let runHistory = [0, 0, 0, 0, 0, 0, 0];\n for (let y = 0; y < this.size; y++) {\n if (this.modules[y][x] == runColor) {\n runY++;\n if (runY == 5)\n result += _QrCode.PENALTY_N1;\n else if (runY > 5)\n result++;\n } else {\n this.finderPenaltyAddHistory(runY, runHistory);\n if (!runColor)\n result += this.finderPenaltyCountPatterns(runHistory) * _QrCode.PENALTY_N3;\n runColor = this.modules[y][x];\n runY = 1;\n }\n }\n result += this.finderPenaltyTerminateAndCount(runColor, runY, runHistory) * _QrCode.PENALTY_N3;\n }\n for (let y = 0; y < this.size - 1; y++) {\n for (let x = 0; x < this.size - 1; x++) {\n const color = this.modules[y][x];\n if (color == this.modules[y][x + 1] && color == this.modules[y + 1][x] && color == this.modules[y + 1][x + 1])\n result += _QrCode.PENALTY_N2;\n }\n }\n let dark = 0;\n for (const row of this.modules)\n dark = row.reduce((sum, color) => sum + (color ? 1 : 0), dark);\n const total = this.size * this.size;\n const k = Math.ceil(Math.abs(dark * 20 - total * 10) / total) - 1;\n assert(0 <= k && k <= 9);\n result += k * _QrCode.PENALTY_N4;\n assert(0 <= result && result <= 2568888);\n return result;\n }\n getAlignmentPatternPositions() {\n if (this.version == 1)\n return [];\n else {\n const numAlign = Math.floor(this.version / 7) + 2;\n const step = this.version == 32 ? 26 : Math.ceil((this.version * 4 + 4) / (numAlign * 2 - 2)) * 2;\n let result = [6];\n for (let pos = this.size - 7; result.length < numAlign; pos -= step)\n result.splice(1, 0, pos);\n return result;\n }\n }\n static getNumRawDataModules(ver) {\n if (ver < _QrCode.MIN_VERSION || ver > _QrCode.MAX_VERSION)\n throw new RangeError(\"Version number out of range\");\n let result = (16 * ver + 128) * ver + 64;\n if (ver >= 2) {\n const numAlign = Math.floor(ver / 7) + 2;\n result -= (25 * numAlign - 10) * numAlign - 55;\n if (ver >= 7)\n result -= 36;\n }\n assert(208 <= result && result <= 29648);\n return result;\n }\n static getNumDataCodewords(ver, ecl) {\n return Math.floor(_QrCode.getNumRawDataModules(ver) / 8) - _QrCode.ECC_CODEWORDS_PER_BLOCK[ecl.ordinal][ver] * _QrCode.NUM_ERROR_CORRECTION_BLOCKS[ecl.ordinal][ver];\n }\n static reedSolomonComputeDivisor(degree) {\n if (degree < 1 || degree > 255)\n throw new RangeError(\"Degree out of range\");\n let result = [];\n for (let i = 0; i < degree - 1; i++)\n result.push(0);\n result.push(1);\n let root = 1;\n for (let i = 0; i < degree; i++) {\n for (let j = 0; j < result.length; j++) {\n result[j] = _QrCode.reedSolomonMultiply(result[j], root);\n if (j + 1 < result.length)\n result[j] ^= result[j + 1];\n }\n root = _QrCode.reedSolomonMultiply(root, 2);\n }\n return result;\n }\n static reedSolomonComputeRemainder(data, divisor) {\n let result = divisor.map((_) => 0);\n for (const b of data) {\n const factor = b ^ result.shift();\n result.push(0);\n divisor.forEach((coef, i) => result[i] ^= _QrCode.reedSolomonMultiply(coef, factor));\n }\n return result;\n }\n static reedSolomonMultiply(x, y) {\n if (x >>> 8 != 0 || y >>> 8 != 0)\n throw new RangeError(\"Byte out of range\");\n let z = 0;\n for (let i = 7; i >= 0; i--) {\n z = z << 1 ^ (z >>> 7) * 285;\n z ^= (y >>> i & 1) * x;\n }\n assert(z >>> 8 == 0);\n return z;\n }\n finderPenaltyCountPatterns(runHistory) {\n const n = runHistory[1];\n assert(n <= this.size * 3);\n const core = n > 0 && runHistory[2] == n && runHistory[3] == n * 3 && runHistory[4] == n && runHistory[5] == n;\n return (core && runHistory[0] >= n * 4 && runHistory[6] >= n ? 1 : 0) + (core && runHistory[6] >= n * 4 && runHistory[0] >= n ? 1 : 0);\n }\n finderPenaltyTerminateAndCount(currentRunColor, currentRunLength, runHistory) {\n if (currentRunColor) {\n this.finderPenaltyAddHistory(currentRunLength, runHistory);\n currentRunLength = 0;\n }\n currentRunLength += this.size;\n this.finderPenaltyAddHistory(currentRunLength, runHistory);\n return this.finderPenaltyCountPatterns(runHistory);\n }\n finderPenaltyAddHistory(currentRunLength, runHistory) {\n if (runHistory[0] == 0)\n currentRunLength += this.size;\n runHistory.pop();\n runHistory.unshift(currentRunLength);\n }\n };\n let QrCode = _QrCode;\n QrCode.MIN_VERSION = 1;\n QrCode.MAX_VERSION = 40;\n QrCode.PENALTY_N1 = 3;\n QrCode.PENALTY_N2 = 3;\n QrCode.PENALTY_N3 = 40;\n QrCode.PENALTY_N4 = 10;\n QrCode.ECC_CODEWORDS_PER_BLOCK = [\n [-1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n [-1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28],\n [-1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n [-1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30]\n ];\n QrCode.NUM_ERROR_CORRECTION_BLOCKS = [\n [-1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25],\n [-1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49],\n [-1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68],\n [-1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81]\n ];\n qrcodegen2.QrCode = QrCode;\n function appendBits(val, len, bb) {\n if (len < 0 || len > 31 || val >>> len != 0)\n throw new RangeError(\"Value out of range\");\n for (let i = len - 1; i >= 0; i--)\n bb.push(val >>> i & 1);\n }\n function getBit(x, i) {\n return (x >>> i & 1) != 0;\n }\n function assert(cond) {\n if (!cond)\n throw new Error(\"Assertion error\");\n }\n const _QrSegment = class {\n constructor(mode, numChars, bitData) {\n this.mode = mode;\n this.numChars = numChars;\n this.bitData = bitData;\n if (numChars < 0)\n throw new RangeError(\"Invalid argument\");\n this.bitData = bitData.slice();\n }\n static makeBytes(data) {\n let bb = [];\n for (const b of data)\n appendBits(b, 8, bb);\n return new _QrSegment(_QrSegment.Mode.BYTE, data.length, bb);\n }\n static makeNumeric(digits) {\n if (!_QrSegment.isNumeric(digits))\n throw new RangeError(\"String contains non-numeric characters\");\n let bb = [];\n for (let i = 0; i < digits.length; ) {\n const n = Math.min(digits.length - i, 3);\n appendBits(parseInt(digits.substr(i, n), 10), n * 3 + 1, bb);\n i += n;\n }\n return new _QrSegment(_QrSegment.Mode.NUMERIC, digits.length, bb);\n }\n static makeAlphanumeric(text) {\n if (!_QrSegment.isAlphanumeric(text))\n throw new RangeError(\"String contains unencodable characters in alphanumeric mode\");\n let bb = [];\n let i;\n for (i = 0; i + 2 <= text.length; i += 2) {\n let temp = _QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)) * 45;\n temp += _QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i + 1));\n appendBits(temp, 11, bb);\n }\n if (i < text.length)\n appendBits(_QrSegment.ALPHANUMERIC_CHARSET.indexOf(text.charAt(i)), 6, bb);\n return new _QrSegment(_QrSegment.Mode.ALPHANUMERIC, text.length, bb);\n }\n static makeSegments(text) {\n if (text == \"\")\n return [];\n else if (_QrSegment.isNumeric(text))\n return [_QrSegment.makeNumeric(text)];\n else if (_QrSegment.isAlphanumeric(text))\n return [_QrSegment.makeAlphanumeric(text)];\n else\n return [_QrSegment.makeBytes(_QrSegment.toUtf8ByteArray(text))];\n }\n static makeEci(assignVal) {\n let bb = [];\n if (assignVal < 0)\n throw new RangeError(\"ECI assignment value out of range\");\n else if (assignVal < 1 << 7)\n appendBits(assignVal, 8, bb);\n else if (assignVal < 1 << 14) {\n appendBits(2, 2, bb);\n appendBits(assignVal, 14, bb);\n } else if (assignVal < 1e6) {\n appendBits(6, 3, bb);\n appendBits(assignVal, 21, bb);\n } else\n throw new RangeError(\"ECI assignment value out of range\");\n return new _QrSegment(_QrSegment.Mode.ECI, 0, bb);\n }\n static isNumeric(text) {\n return _QrSegment.NUMERIC_REGEX.test(text);\n }\n static isAlphanumeric(text) {\n return _QrSegment.ALPHANUMERIC_REGEX.test(text);\n }\n getData() {\n return this.bitData.slice();\n }\n static getTotalBits(segs, version) {\n let result = 0;\n for (const seg of segs) {\n const ccbits = seg.mode.numCharCountBits(version);\n if (seg.numChars >= 1 << ccbits)\n return Infinity;\n result += 4 + ccbits + seg.bitData.length;\n }\n return result;\n }\n static toUtf8ByteArray(str) {\n str = encodeURI(str);\n let result = [];\n for (let i = 0; i < str.length; i++) {\n if (str.charAt(i) != \"%\")\n result.push(str.charCodeAt(i));\n else {\n result.push(parseInt(str.substr(i + 1, 2), 16));\n i += 2;\n }\n }\n return result;\n }\n };\n let QrSegment = _QrSegment;\n QrSegment.NUMERIC_REGEX = /^[0-9]*$/;\n QrSegment.ALPHANUMERIC_REGEX = /^[A-Z0-9 $%*+.\\/:-]*$/;\n QrSegment.ALPHANUMERIC_CHARSET = \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:\";\n qrcodegen2.QrSegment = QrSegment;\n})(qrcodegen || (qrcodegen = {}));\n((qrcodegen2) => {\n let QrCode;\n ((QrCode2) => {\n const _Ecc = class {\n constructor(ordinal, formatBits) {\n this.ordinal = ordinal;\n this.formatBits = formatBits;\n }\n };\n let Ecc = _Ecc;\n Ecc.LOW = new _Ecc(0, 1);\n Ecc.MEDIUM = new _Ecc(1, 0);\n Ecc.QUARTILE = new _Ecc(2, 3);\n Ecc.HIGH = new _Ecc(3, 2);\n QrCode2.Ecc = Ecc;\n })(QrCode = qrcodegen2.QrCode || (qrcodegen2.QrCode = {}));\n})(qrcodegen || (qrcodegen = {}));\n((qrcodegen2) => {\n let QrSegment;\n ((QrSegment2) => {\n const _Mode = class {\n constructor(modeBits, numBitsCharCount) {\n this.modeBits = modeBits;\n this.numBitsCharCount = numBitsCharCount;\n }\n numCharCountBits(ver) {\n return this.numBitsCharCount[Math.floor((ver + 7) / 17)];\n }\n };\n let Mode = _Mode;\n Mode.NUMERIC = new _Mode(1, [10, 12, 14]);\n Mode.ALPHANUMERIC = new _Mode(2, [9, 11, 13]);\n Mode.BYTE = new _Mode(4, [8, 16, 16]);\n Mode.KANJI = new _Mode(8, [8, 10, 12]);\n Mode.ECI = new _Mode(7, [0, 0, 0]);\n QrSegment2.Mode = Mode;\n })(QrSegment = qrcodegen2.QrSegment || (qrcodegen2.QrSegment = {}));\n})(qrcodegen || (qrcodegen = {}));\nvar qrcodegen_default = qrcodegen;\n\n// src/index.tsx\n/**\n * @license qrcode.react\n * Copyright (c) Paul O'Shannessy\n * SPDX-License-Identifier: ISC\n */\nvar ERROR_LEVEL_MAP = {\n L: qrcodegen_default.QrCode.Ecc.LOW,\n M: qrcodegen_default.QrCode.Ecc.MEDIUM,\n Q: qrcodegen_default.QrCode.Ecc.QUARTILE,\n H: qrcodegen_default.QrCode.Ecc.HIGH\n};\nvar DEFAULT_SIZE = 128;\nvar DEFAULT_LEVEL = \"L\";\nvar DEFAULT_BGCOLOR = \"#FFFFFF\";\nvar DEFAULT_FGCOLOR = \"#000000\";\nvar DEFAULT_INCLUDEMARGIN = false;\nvar MARGIN_SIZE = 4;\nvar DEFAULT_IMG_SCALE = 0.1;\nfunction generatePath(modules, margin = 0) {\n const ops = [];\n modules.forEach(function(row, y) {\n let start = null;\n row.forEach(function(cell, x) {\n if (!cell && start !== null) {\n ops.push(`M${start + margin} ${y + margin}h${x - start}v1H${start + margin}z`);\n start = null;\n return;\n }\n if (x === row.length - 1) {\n if (!cell) {\n return;\n }\n if (start === null) {\n ops.push(`M${x + margin},${y + margin} h1v1H${x + margin}z`);\n } else {\n ops.push(`M${start + margin},${y + margin} h${x + 1 - start}v1H${start + margin}z`);\n }\n return;\n }\n if (cell && start === null) {\n start = x;\n }\n });\n });\n return ops.join(\"\");\n}\nfunction excavateModules(modules, excavation) {\n return modules.slice().map((row, y) => {\n if (y < excavation.y || y >= excavation.y + excavation.h) {\n return row;\n }\n return row.map((cell, x) => {\n if (x < excavation.x || x >= excavation.x + excavation.w) {\n return cell;\n }\n return false;\n });\n });\n}\nfunction getImageSettings(cells, size, includeMargin, imageSettings) {\n if (imageSettings == null) {\n return null;\n }\n const margin = includeMargin ? MARGIN_SIZE : 0;\n const numCells = cells.length + margin * 2;\n const defaultSize = Math.floor(size * DEFAULT_IMG_SCALE);\n const scale = numCells / size;\n const w = (imageSettings.width || defaultSize) * scale;\n const h = (imageSettings.height || defaultSize) * scale;\n const x = imageSettings.x == null ? cells.length / 2 - w / 2 : imageSettings.x * scale;\n const y = imageSettings.y == null ? cells.length / 2 - h / 2 : imageSettings.y * scale;\n let excavation = null;\n if (imageSettings.excavate) {\n let floorX = Math.floor(x);\n let floorY = Math.floor(y);\n let ceilW = Math.ceil(w + x - floorX);\n let ceilH = Math.ceil(h + y - floorY);\n excavation = { x: floorX, y: floorY, w: ceilW, h: ceilH };\n }\n return { x, y, h, w, excavation };\n}\nvar SUPPORTS_PATH2D = function() {\n try {\n new Path2D().addPath(new Path2D());\n } catch (e) {\n return false;\n }\n return true;\n}();\nfunction QRCodeCanvas(props) {\n const _a = props, {\n value,\n size = DEFAULT_SIZE,\n level = DEFAULT_LEVEL,\n bgColor = DEFAULT_BGCOLOR,\n fgColor = DEFAULT_FGCOLOR,\n includeMargin = DEFAULT_INCLUDEMARGIN,\n style,\n imageSettings\n } = _a, otherProps = __objRest(_a, [\n \"value\",\n \"size\",\n \"level\",\n \"bgColor\",\n \"fgColor\",\n \"includeMargin\",\n \"style\",\n \"imageSettings\"\n ]);\n const imgSrc = imageSettings == null ? void 0 : imageSettings.src;\n const _canvas = React.useRef(null);\n const _image = React.useRef(null);\n const [isImgLoaded, setIsImageLoaded] = React.useState(false);\n React.useEffect(() => {\n if (_canvas.current != null) {\n const canvas = _canvas.current;\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) {\n return;\n }\n let cells = qrcodegen_default.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]).getModules();\n const margin = includeMargin ? MARGIN_SIZE : 0;\n const numCells = cells.length + margin * 2;\n const calculatedImageSettings = getImageSettings(cells, size, includeMargin, imageSettings);\n const image = _image.current;\n const haveImageToRender = calculatedImageSettings != null && image !== null && image.complete && image.naturalHeight !== 0 && image.naturalWidth !== 0;\n if (haveImageToRender) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n }\n const pixelRatio = window.devicePixelRatio || 1;\n canvas.height = canvas.width = size * pixelRatio;\n const scale = size / numCells * pixelRatio;\n ctx.scale(scale, scale);\n ctx.fillStyle = bgColor;\n ctx.fillRect(0, 0, numCells, numCells);\n ctx.fillStyle = fgColor;\n if (SUPPORTS_PATH2D) {\n ctx.fill(new Path2D(generatePath(cells, margin)));\n } else {\n cells.forEach(function(row, rdx) {\n row.forEach(function(cell, cdx) {\n if (cell) {\n ctx.fillRect(cdx + margin, rdx + margin, 1, 1);\n }\n });\n });\n }\n if (haveImageToRender) {\n ctx.drawImage(image, calculatedImageSettings.x + margin, calculatedImageSettings.y + margin, calculatedImageSettings.w, calculatedImageSettings.h);\n }\n }\n });\n React.useEffect(() => {\n setIsImageLoaded(false);\n }, [imgSrc]);\n const canvasStyle = __spreadValues({ height: size, width: size }, style);\n let img = null;\n if (imgSrc != null) {\n img = /* @__PURE__ */ React.createElement(\"img\", {\n src: imgSrc,\n key: imgSrc,\n style: { display: \"none\" },\n onLoad: () => {\n setIsImageLoaded(true);\n },\n ref: _image\n });\n }\n return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(\"canvas\", __spreadValues({\n style: canvasStyle,\n height: size,\n width: size,\n ref: _canvas\n }, otherProps)), img);\n}\nfunction QRCodeSVG(props) {\n const _a = props, {\n value,\n size = DEFAULT_SIZE,\n level = DEFAULT_LEVEL,\n bgColor = DEFAULT_BGCOLOR,\n fgColor = DEFAULT_FGCOLOR,\n includeMargin = DEFAULT_INCLUDEMARGIN,\n imageSettings\n } = _a, otherProps = __objRest(_a, [\n \"value\",\n \"size\",\n \"level\",\n \"bgColor\",\n \"fgColor\",\n \"includeMargin\",\n \"imageSettings\"\n ]);\n let cells = qrcodegen_default.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]).getModules();\n const margin = includeMargin ? MARGIN_SIZE : 0;\n const numCells = cells.length + margin * 2;\n const calculatedImageSettings = getImageSettings(cells, size, includeMargin, imageSettings);\n let image = null;\n if (imageSettings != null && calculatedImageSettings != null) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n image = /* @__PURE__ */ React.createElement(\"image\", {\n xlinkHref: imageSettings.src,\n height: calculatedImageSettings.h,\n width: calculatedImageSettings.w,\n x: calculatedImageSettings.x + margin,\n y: calculatedImageSettings.y + margin,\n preserveAspectRatio: \"none\"\n });\n }\n const fgPath = generatePath(cells, margin);\n return /* @__PURE__ */ React.createElement(\"svg\", __spreadValues({\n height: size,\n width: size,\n viewBox: `0 0 ${numCells} ${numCells}`\n }, otherProps), /* @__PURE__ */ React.createElement(\"path\", {\n fill: bgColor,\n d: `M0,0 h${numCells}v${numCells}H0z`,\n shapeRendering: \"crispEdges\"\n }), /* @__PURE__ */ React.createElement(\"path\", {\n fill: fgColor,\n d: fgPath,\n shapeRendering: \"crispEdges\"\n }), image);\n}\nvar QRCode = (props) => {\n const _a = props, { renderAs } = _a, otherProps = __objRest(_a, [\"renderAs\"]);\n if (renderAs === \"svg\") {\n return /* @__PURE__ */ React.createElement(QRCodeSVG, __spreadValues({}, otherProps));\n }\n return /* @__PURE__ */ React.createElement(QRCodeCanvas, __spreadValues({}, otherProps));\n};\nexport {\n QRCodeCanvas,\n QRCodeSVG,\n QRCode as default\n};\n","import { slugify } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport QRCodeImage from \"qrcode.react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CardLayout from \"components/CardLayout\";\nimport Container from \"components/Container\";\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport Header from \"components/Header\";\n\nimport { copyCanvasToClipboard, downloadCanvas } from \"./utils\";\n\nconst QRCode = ({ entity, qrCodeProps, url, shareUrl }) => {\n const { t } = useTranslation();\n\n if (!entity) return null;\n\n const { id, name } = entity;\n const canvasId = `qrcode-share-${id}`;\n\n const handleDownloadQRCode = () => {\n const canvas = document.getElementById(canvasId);\n if (canvas) downloadCanvas(canvas, { name: slugify(name) });\n };\n\n const handleCopyQRCode = () => {\n const canvas = document.getElementById(canvasId);\n if (canvas) copyCanvasToClipboard(canvas, handleDownloadQRCode);\n };\n\n const title =\n qrCodeProps?.pageTitle ||\n qrCodeProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.qrCode.title\");\n\n const description =\n qrCodeProps?.pageDescription ||\n qrCodeProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.qrCode.description\");\n\n return (\n <Container className=\"neeto-molecules-embed-qr-code-landing-page py-8\">\n <Button\n className=\"mb-4\"\n data-cy=\"back-button\"\n data-testid=\"back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={shareUrl}\n />\n <Header\n className=\"py-0\"\n title={t(\"neetoMolecules.shareViaLink.qrCode.title\")}\n />\n <CardLayout\n {...{ description, title }}\n actionBlock={\n <div className=\"flex flex-wrap items-center gap-3\">\n <Button\n data-cy=\"qr-code-download-button\"\n data-testid=\"qr-code-download-button\"\n label={t(\"neetoMolecules.shareViaLink.qrCode.download\")}\n style=\"primary\"\n onClick={handleDownloadQRCode}\n />\n <CopyToClipboardButton\n data-cy=\"qr-code-copy-button\"\n data-testid=\"qr-code-copy-button\"\n label={t(\"neetoMolecules.shareViaLink.qrCode.copy\")}\n style=\"secondary\"\n onClick={handleCopyQRCode}\n />\n </div>\n }\n >\n <QRCodeImage\n className=\"mt-6 cursor-pointer\"\n data-cy=\"qr-code-image\"\n data-testid=\"qr-code-image\"\n id={canvasId}\n size={160}\n style={{ width: 160, height: 160 }}\n value={url}\n onClick={handleDownloadQRCode}\n />\n </CardLayout>\n </Container>\n );\n};\n\nexport default QRCode;\n","import { LeftArrow } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CardLayout from \"components/CardLayout\";\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport { SOCIAL_MEDIA_OPTIONS } from \"./constants\";\n\nconst SocialMedia = ({ socialMediaProps, url, shareUrl }) => {\n const { t } = useTranslation();\n\n const title =\n socialMediaProps?.pageTitle ||\n socialMediaProps?.cardTitle ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.title\");\n\n const description =\n socialMediaProps?.pageDescription ||\n socialMediaProps?.cardDescription ||\n t(\"neetoMolecules.shareViaLink.socialMediaShare.description\");\n\n return (\n <Container className=\"neeto-molecules-social-share-landing-page py-8\">\n <Button\n className=\"mb-4\"\n data-cy=\"back-button\"\n data-testid=\"back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={shareUrl}\n />\n <Header\n className=\"py-0\"\n title={t(\"neetoMolecules.shareViaLink.socialMediaShare.title\")}\n />\n <CardLayout\n {...{ description, title }}\n actionBlock={\n <div className=\"flex flex-wrap items-center gap-3\">\n {Object.entries(SOCIAL_MEDIA_OPTIONS).map(\n ([key, { label, icon: Icon, generateShareUrl }]) => (\n <Button\n {...{ label }}\n data-cy={`social-media-button-${key}`}\n data-testid={`social-media-button-${key}`}\n icon={Icon}\n iconPosition=\"right\"\n key={key}\n rel=\"noopener noreferrer\"\n style=\"tertiary\"\n target=\"_blank\"\n href={generateShareUrl({\n url,\n title: socialMediaProps?.postTitle,\n })}\n >\n <Icon size={24} />\n </Button>\n )\n )}\n </div>\n }\n />\n </Container>\n );\n};\n\nexport default SocialMedia;\n","/* eslint-disable @bigbinary/neeto/use-common-routes */\nimport { toLabelAndValue, isPresent, noop } from \"neetocist\";\nimport PrivateRoute from \"neetocommons/react-utils/PrivateRoute\";\nimport PropTypes from \"prop-types\";\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\n\nimport ErrorPage from \"components/ErrorPage\";\n\nimport MainPanel from \"./MainPanel\";\nimport QRCode from \"./QRCode\";\nimport \"./share-via-link.scss\";\nimport SocialMedia from \"./SocialMedia\";\n\nconst ShareViaLink = ({\n title,\n description,\n isLoading = false,\n enabledOptions = { regenerate: false, edit: false },\n urls = [],\n entity,\n entityName,\n handleEdit = noop,\n handleRegenerate = noop,\n disableShareSocialMedia = false,\n disableQRDownload = false,\n socialMediaProps,\n qrCodeProps,\n moreOptions,\n publicLinkExpiryConfiguration = {},\n customTopContent,\n customBottomContent,\n}) => {\n const { path: sharePath, url: shareUrl } = useRouteMatch();\n\n return (\n <Switch>\n <Route\n exact\n path={sharePath}\n render={() => (\n <MainPanel\n {...{\n customBottomContent,\n customTopContent,\n description,\n disableQRDownload,\n disableShareSocialMedia,\n enabledOptions,\n entity,\n entityName,\n handleEdit,\n handleRegenerate,\n isLoading,\n moreOptions,\n publicLinkExpiryConfiguration,\n qrCodeProps,\n socialMediaProps,\n title,\n urls,\n }}\n />\n )}\n />\n <Route\n exact\n path={`${sharePath}/qrcode`}\n render={() => (\n <QRCode {...{ entity, qrCodeProps, shareUrl }} url={urls[0]?.url} />\n )}\n />\n <Route\n exact\n path={`${sharePath}/social-media`}\n render={() => (\n <SocialMedia {...{ shareUrl, socialMediaProps }} url={urls[0]?.url} />\n )}\n />\n {isPresent(moreOptions) &&\n moreOptions.map(({ link, element, path, permissions }) => {\n if (!link && !path) return null;\n\n return (\n <PrivateRoute\n {...{ permissions }}\n exact\n component={() => element}\n key={link}\n path={path || link}\n />\n );\n })}\n <Route component={ErrorPage} path=\"*\" />\n </Switch>\n );\n};\n\nShareViaLink.propTypes = {\n /**\n * The title of the share via link component.\n */\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n /**\n * The description of the share via link component.\n */\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n /**\n * The custom content to be shown in the top of the share panel.\n */\n customTopContent: PropTypes.element,\n /**\n * The custom content to be shown in the bottom of the share panel.\n */\n customBottomContent: PropTypes.element,\n /**\n * The boolean value to check if the link is being regenerated or updated.\n */\n isLoading: PropTypes.bool,\n /**\n * An object which accepts two boolean values that decide if the dropdown options are hidden or not. If both are false, then the dropdown is hidden as well.\n */\n enabledOptions: PropTypes.shape({\n regenerate:\n PropTypes.bool ||\n PropTypes.shape({\n expiresInOptions: PropTypes.arrayOf(toLabelAndValue(PropTypes.string)),\n }),\n edit: PropTypes.bool,\n }),\n /**\n * The entity object for which the link is being shared.\n */\n entity: PropTypes.shape({\n id: PropTypes.string,\n name: PropTypes.string,\n }),\n /**\n * The type of the entity for which the link is being shared.\n */\n entityName: PropTypes.string,\n /**\n * The function that is called when the Edit URL form is submitted. It returns the updated URL value.\n */\n handleEdit: PropTypes.func,\n /**\n * The function which makes the API call to regenerate the url.\n */\n handleRegenerate: PropTypes.func,\n /**\n * To customize the social media card and its dedicated page.\n */\n socialMediaProps: PropTypes.shape({\n cardTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n cardDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n postTitle: PropTypes.string,\n }),\n /**\n * To customize the QR code card and its dedicated page.\n */\n qrCodeProps: PropTypes.shape({\n cardTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n cardDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageDescription: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n }),\n /**\n * The props that are passed to the edit URL field. `prefix` and `editablePath` decide\n * which part of the URL is to be added in the prefix and which part is editable. Default values are taken from `url`.\n * `maxLength` decides if the entered URL should be limited to specified number of characters.\n * `previewUrl` will be used for previewing the entity (optional).\n */\n urls: PropTypes.arrayOf(\n PropTypes.shape({\n prefix: PropTypes.string,\n editablePath: PropTypes.string,\n maxLength: PropTypes.number,\n url: PropTypes.string,\n previewUrl: PropTypes.string,\n })\n ),\n /**\n * To share using alternative options\n */\n moreOptions: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n link: PropTypes.string,\n path: PropTypes.string,\n icon: PropTypes.elementType,\n onClick: PropTypes.func,\n dataCy: PropTypes.string,\n element: PropTypes.element,\n subtitleProps: PropTypes.shape({\n subtitle: PropTypes.string,\n dataCy: PropTypes.string,\n link: PropTypes.string,\n onClick: PropTypes.func,\n }),\n })\n ),\n /**\n * To disable share social media section.\n */\n disableShareSocialMedia: PropTypes.bool,\n /**\n * To disable QR code download section.\n */\n disableQRDownload: PropTypes.bool,\n};\n\nexport default ShareViaLink;\n"],"names":["ExpiryNotice","_ref","expiryConfiguration","_useTranslation","useTranslation","t","daysBeforeExpiry","notice","count","_jsx","Typography","lineHeight","style","className","classNames","children","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","facebookShareLink","url","buildUrl","linkedInShareLink","_ref2","title","mini","text","concat","twitterShareLink","_ref3","downloadCanvas","canvas","options","arguments","undefined","_options$name","name","_options$extension","extension","canvasUrl","toDataURL","element","document","createElement","href","download","click","remove","copyCanvasToClipboard","_ref4","_asyncToGenerator","_callee","handleDownloadQRCode","blob","clipboardItem","_context","Promise","resolve","toBlob","ClipboardItem","_defineProperty","type","navigator","clipboard","write","_x","_x2","apply","getPathname","URL","pathname","slice","getPrefixFromUrl","origin","truncatePrefix","inputElement","prefixText","parentElement","prefixElement","querySelector","_getComputedStyle","getComputedStyle","fontSize","averageCharWidth","parseFloat","requiredInputWidth","prefixWidth","offsetWidth","maxPrefixChars","Math","max","floor","textContent","SOCIAL_MEDIA_OPTIONS","FACEBOOK","label","icon","Facebook","generateShareUrl","LINKEDIN","Linkedin","TWITTER","Twitter","PATH_VALIDATION_SCHEMA","yup","object","shape","path","string","required","matches","test","RESERVED_PATHS","includes","toLowerCase","Header","Pane","Body","Footer","EditURL","editUrlProps","isOpen","onClose","isLoading","handleEdit","focusRef","useRef","prevIsLoadingRef","prefix","observerRef","ResizeObserver","_slicedToArray","entry","requestAnimationFrame","target","inputRef","useCallback","current","observe","disconnect","useEffect","_jsxs","initialFocusRef","size","weight","Formik","enableReinitialize","initialValues","editablePath","validationSchema","onSubmit","_ref5","isSubmitting","dirty","Form","Input","maxLength","ref","ActionBlock","cancelButtonProps","onClick","disabled","submitButtonProps","loading","RegenerateURL","_regenerateConfig$exp","_regenerateConfig$exp2","_globalProps$user$dat","_globalProps","handleRegenerate","_ref$regenerateConfig","regenerateConfig","expiresInOptions","helpUrl","regenerateStrategy","isPresent","defaultExpiresInOption","_useState","useState","_useState2","selectedExpiresInOption","setSelectedExpiresInOption","defaultExpiresOnDate","dayjs","add","toDate","_useState3","_useState4","selectedExpiresOnDate","setSelectedExpiresOnDate","isSelectedExpiresInOptionNever","isSelectedExpiresInOptionCustom","isSelectedExpiresInOptionValidNumberOfDays","isValidExpiryConfig","expiryConfigPayload","expiresInDays","expiresOnDate","payload","Modal","Select","defaultValue","labelProps","helpIconProps","Help","popoverProps","helpLinkProps","onChange","option","DatePicker","dateFormat","globalProps","user","disabledDate","isBefore","getPopupContainer","prop","picker","Button","Link","enabledOptions","entityName","previewUrl","isRegenerateURLModalOpen","setIsRegenerateURLModalOpen","isEditURLModalOpen","setIsEditURLModalOpen","_useBreakpoints","useBreakpoints","isSize","isMobile","isDropdownEnabled","regenerate","edit","LinkIcon","iconPosition","CopyToClipboardButton","ExternalLink","tooltipProps","content","entity","position","touch","_Fragment","MoreDropdown","menuItems","isVisible","key","Card","link","description","Icon","_ref$onClick","noop","helpPopoverProps","otherProps","_objectWithoutProperties","_excluded","Component","_objectSpread","to","HelpPopover","ShareBlock","moreOptions","disableShareSocialMedia","disableQRDownload","socialMediaProps","qrCodeProps","urls","location","useLocation","history","useHistory","handleNavigate","subPath","push","hasMoreOptions","isNotEmpty","filter","permissions","isNotPresent","some","__","map","dataCy","_createElement","Share","cardDescription","cardTitle","QrCode","MainPanel","_urls$","_ref$isLoading","_ref$enabledOptions","_ref$urls","_ref$handleEdit","_ref$handleRegenerate","_ref$disableShareSoci","_ref$disableQRDownloa","_ref$publicLinkExpiry","publicLinkExpiryConfiguration","customTopContent","customBottomContent","shouldShowShareBlock","Container","classnames","productName","appName","urlOption","LinkBlock","omit","QRCode","shareUrl","id","canvasId","getElementById","slugify","handleCopyQRCode","pageTitle","pageDescription","LeftArrow","CardLayout","actionBlock","QRCodeImage","width","height","SocialMedia","entries","_ref3$","rel","postTitle","ShareViaLink","_useRouteMatch","useRouteMatch","sharePath","Switch","Route","exact","render","_urls$2","PrivateRoute","component","ErrorPage"],"mappings":"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AE,EAAE,EAAE,EAAE,EAAE,CAAC;AACjJ,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAC1J,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAC7J,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE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","x_google_ignoreList":[9]}