{"version":3,"file":"2850.c8ec37023dc515e901a0.js","mappings":"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","sources":["webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/EventBuizzModal/EventInfoListItem/event-info-list-item.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-clock.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-star.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-calendar2.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-cash.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-user-filled.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/EventBuizzModal/eventbuizz-modal.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/Icons/icon-location.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/ResponsiveImage/responsive-image.tsx","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Modal/modal-spinner.js","webpack://gyldendal-uddannelse/./src/Foundation/Frontend/ReactComponents/Shared/AnimationComponents/load-spinner.js"],"sourcesContent":["import React from \"react\";\r\n\r\ninterface IEventInfoListItemProps {\r\n visible?: boolean;\r\n icon?: JSX.Element;\r\n title: string;\r\n text?: string;\r\n}\r\n\r\nconst EventInfoListItem = ({ icon, title, text, visible = true }: IEventInfoListItemProps) => {\r\n if (!visible) return null;\r\n return (\r\n <div className=\"event-info-list-item\">\r\n <div className=\"icon\">{icon}</div>\r\n <div className=\"content\">\r\n <div className=\"info-title\">{title}</div>\r\n <div className=\"info-text\">{text}</div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default EventInfoListItem;\r\n","import React from \"react\";\r\n\r\nconst IconClock = () => {\r\n return (\r\n <svg\r\n width=\"18\"\r\n height=\"18\"\r\n viewBox=\"0 0 18 18\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n role=\"presentation\"\r\n >\r\n <circle cx=\"9\" cy=\"9\" r=\"7.5\" stroke=\"currentColor\" strokeWidth=\"1.5\" />\r\n <path d=\"M9 4.5L9 9L6.75 11.25\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\r\n </svg>\r\n );\r\n};\r\n\r\nexport default IconClock;\r\n","import React from \"react\";\r\n\r\nconst IconStar = () => {\r\n return (\r\n <svg\r\n width=\"18\"\r\n height=\"17\"\r\n viewBox=\"0 0 18 17\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n role=\"presentation\"\r\n >\r\n <path\r\n d=\"M8.64335 1.09764C8.75561 0.752153 9.24439 0.752153 9.35665 1.09764L10.9364 5.95973C10.9866 6.11424 11.1306 6.21885 11.2931 6.21885H16.4054C16.7686 6.21885 16.9197 6.6837 16.6258 6.89723L12.4899 9.90216C12.3584 9.99765 12.3034 10.1669 12.3536 10.3214L13.9334 15.1835C14.0457 15.529 13.6502 15.8163 13.3564 15.6028L9.22042 12.5978C9.08899 12.5023 8.91101 12.5023 8.77958 12.5978L4.64364 15.6028C4.34975 15.8163 3.95432 15.529 4.06658 15.1835L5.64637 10.3214C5.69657 10.1669 5.64157 9.99765 5.51014 9.90216L1.3742 6.89723C1.08031 6.6837 1.23135 6.21885 1.59462 6.21885H6.70692C6.86938 6.21885 7.01336 6.11424 7.06357 5.95973L8.64335 1.09764Z\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n />\r\n </svg>\r\n );\r\n};\r\n\r\nexport default IconStar;\r\n","import React from \"react\";\r\n\r\nconst IconCalendar2 = () => {\r\n return (\r\n <svg\r\n width=\"18\"\r\n height=\"18\"\r\n viewBox=\"0 0 18 18\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n role=\"presentation\"\r\n >\r\n <rect\r\n x=\"0.75\"\r\n y=\"3.75\"\r\n width=\"16.5\"\r\n height=\"13.5\"\r\n rx=\"2.25\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n />\r\n <path d=\"M17.25 8.25L0.75 8.25\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\r\n <path d=\"M4.5 3.75V0.75\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\r\n <path d=\"M13.5 3.75V0.75\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\r\n </svg>\r\n );\r\n};\r\n\r\nexport default IconCalendar2;\r\n","import React from \"react\";\r\n\r\nconst IconCash = () => {\r\n return (\r\n <svg\r\n width=\"20\"\r\n height=\"15\"\r\n viewBox=\"0 0 20 15\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n role=\"presentation\"\r\n >\r\n <path\r\n d=\"M19 9.50012V4.25012C19 2.59327 17.6569 1.25012 16 1.25012H4.75\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n />\r\n <rect\r\n x=\"1\"\r\n y=\"3.80566\"\r\n width=\"15.3333\"\r\n height=\"10.2222\"\r\n rx=\"1.5\"\r\n fill=\"white\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n />\r\n <circle cx=\"8.66688\" cy=\"8.91676\" r=\"2.55556\" stroke=\"currentColor\" strokeWidth=\"1.5\" />\r\n <path d=\"M12.5 5.72241H14.0972\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\r\n <path\r\n d=\"M2.91602 5.72241H4.51324\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n />\r\n <path d=\"M12.5 12.1112H14.0972\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\r\n <path\r\n d=\"M2.91602 12.1112H4.51324\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n />\r\n </svg>\r\n );\r\n};\r\n\r\nexport default IconCash;\r\n","import React from \"react\";\r\n\r\nconst IconUserFilled = () => {\r\n return (\r\n <svg\r\n width=\"80\"\r\n height=\"100\"\r\n viewBox=\"0 0 80 100\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n role=\"presentation\"\r\n >\r\n <path\r\n opacity=\"0.5\"\r\n d=\"M80 81.6686V110H0V81.6686C0 66.9657 13.4543 55 30 55H50C66.5457 55 80 66.9657 80 81.6686ZM40 50C53.7857 50 65 38.7857 65 25C65 11.2143 53.7857 0 40 0C26.2143 0 15 11.2143 15 25C15 38.7857 26.2143 50 40 50Z\"\r\n fill=\"#98A7B3\"\r\n />\r\n </svg>\r\n );\r\n};\r\n\r\nexport default IconUserFilled;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport Modal from \"ReactComponents/Modal/modal\";\r\nimport EventInfoListItem from \"./EventInfoListItem/event-info-list-item\";\r\nimport IconClock from \"ReactComponents/Shared/Icons/icon-clock\";\r\nimport IconLocation from \"ReactComponents/Shared/Icons/icon-location\";\r\nimport IconStar from \"ReactComponents/Shared/Icons/icon-star\";\r\nimport IconCalendar2 from \"ReactComponents/Shared/Icons/icon-calendar2\";\r\nimport IconCash from \"ReactComponents/Shared/Icons/icon-cash\";\r\nimport { callServer } from \"ReactApi/serverService\";\r\nimport IEventBuizzEvent from \"interfaces/IEventBuizzEvent\";\r\nimport ModalSpinner from \"ReactComponents/Modal/modal-spinner\";\r\nimport IconUserFilled from \"ReactComponents/Shared/Icons/icon-user-filled\";\r\nimport IEventBuizzPerson from \"interfaces/IEventBuizzPerson\";\r\n\r\nexport interface IEventBuizzModalProps {\r\n Headline: string | undefined;\r\n Location: string | undefined;\r\n LinkUrl: string | undefined;\r\n event: IEventBuizzEvent | null;\r\n ContactPerson: IEventBuizzPerson | null | undefined;\r\n Tags: string[] | undefined;\r\n isLoading: boolean;\r\n isOpen: boolean;\r\n onClose: () => void;\r\n}\r\n\r\nconst EventBuizzModal: React.FC<IEventBuizzModalProps> = ({\r\n Headline,\r\n Location,\r\n LinkUrl,\r\n event,\r\n ContactPerson,\r\n Tags,\r\n isLoading,\r\n isOpen,\r\n onClose\r\n}: IEventBuizzModalProps) => {\r\n const baseClass = \"eventbuizz-modal-content\";\r\n const rootClasses = classNames(baseClass, \"content-module\");\r\n\r\n if (isLoading) {\r\n return <ModalSpinner isOpen={true} />;\r\n }\r\n\r\n return event ? (\r\n <Modal\r\n showCloseButton\r\n isOpen={isOpen}\r\n toClose={onClose}\r\n className=\"eventbuizz-modal\"\r\n size=\"big\"\r\n removePadding\r\n labelledBy=\"eventbuizz-modal-body__event-title\"\r\n >\r\n <div className={rootClasses}>\r\n <div className=\"eventbuizz-modal-header\">\r\n <div className=\"eventbuizz-modal-header__date\">\r\n <div className=\"date-number\">{event.DateNumber}</div>\r\n <div className=\"date-month\">{event.DateMonth}</div>\r\n </div>\r\n </div>\r\n\r\n <div className=\"eventbuizz-modal-body\">\r\n {Tags && <div className=\"eventbuizz-modal-body__tags\">{Tags.join(\" / \")}</div>}\r\n <div className=\"eventbuizz-modal-body-grid\">\r\n {Headline && (\r\n <h2\r\n id=\"eventbuizz-modal-body__event-title\"\r\n className=\"eventbuizz-modal-body__event-title\"\r\n >\r\n {Headline}\r\n </h2>\r\n )}\r\n\r\n <div className=\"eventbuizz-modal-body-grid-event\">\r\n <h3>{event.Labels.ProgramLabel}</h3>\r\n\r\n {event?.Description && (\r\n <div\r\n className=\"eventbuizz-modal-body-grid-event__program\"\r\n dangerouslySetInnerHTML={{ __html: event.Description }}\r\n />\r\n )}\r\n\r\n {event?.Speakers && event.Speakers.length > 0 && (\r\n <>\r\n <h3>{event.Labels.SpeakersLabel}</h3>\r\n <div className=\"eventbuizz-modal-body-grid-event__speakers\">\r\n {event.Speakers.map((speaker, i) => (\r\n <div className=\"speaker\" key={i}>\r\n {speaker.ProfileImage && speaker.ProfileImage.length > 0 ? (\r\n <img\r\n src={speaker.ProfileImage}\r\n alt=\"\"\r\n role=\"presentation\"\r\n />\r\n ) : (\r\n <div className=\"no-image\">\r\n <IconUserFilled />\r\n </div>\r\n )}\r\n {speaker.FullName && (\r\n <div className=\"speaker__name\">{speaker.FullName}</div>\r\n )}\r\n </div>\r\n ))}\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n\r\n <div className=\"eventbuizz-modal-body-grid-separator\"></div>\r\n\r\n <div className=\"eventbuizz-modal-body-grid-event-info\">\r\n <div className=\"eventbuizz-modal-body-grid-event-info__details\">\r\n <EventInfoListItem\r\n icon={<IconClock />}\r\n title={event.Labels.TimeRangeLabel}\r\n text={event.TimeRange}\r\n />\r\n <EventInfoListItem\r\n icon={<IconStar />}\r\n title={event.Labels.OrganizerLabel}\r\n text={event.Organizer}\r\n />\r\n {Location && (\r\n <EventInfoListItem\r\n icon={<IconLocation />}\r\n title={event.Labels.LocationLabel}\r\n text={Location}\r\n />\r\n )}\r\n <EventInfoListItem\r\n icon={<IconCalendar2 />}\r\n title={event.Labels.DeadlineLabel}\r\n text={event.Deadline}\r\n />\r\n <EventInfoListItem\r\n icon={<IconCash />}\r\n title={event.Labels.PriceLabel}\r\n text=\"350 kr.\"\r\n visible={false}\r\n />\r\n\r\n <div className=\"eventbuizz-modal__action\">\r\n <a href={LinkUrl} target=\"_blank\">\r\n {event.Labels.ButtonLabel}\r\n </a>\r\n </div>\r\n </div>\r\n\r\n {ContactPerson && (\r\n <div className=\"eventbuizz-modal-body-grid-event-info__contact\">\r\n <h2>{event.Labels.ContactPersonLabel}</h2>\r\n <div className=\"contact-info\">\r\n {ContactPerson.JobDescription && (\r\n <>\r\n {ContactPerson.JobDescription}\r\n <br />\r\n </>\r\n )}\r\n {ContactPerson.FullName && (\r\n <>\r\n {ContactPerson.FullName}\r\n <br />\r\n </>\r\n )}\r\n {ContactPerson.PhoneNumber && (\r\n <>\r\n {`Telefonnummer: ${ContactPerson.PhoneNumber}`}\r\n <br />\r\n </>\r\n )}\r\n {ContactPerson.Email && (\r\n <>\r\n {`Mail: ${ContactPerson.Email}`}\r\n <br />\r\n </>\r\n )}\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Modal>\r\n ) : null;\r\n};\r\n\r\nexport default EventBuizzModal;\r\n\r\nexport const useEventBuizzModal = (eventId?: string | null) => {\r\n const [data, setData] = useState<IEventBuizzEvent | null>(null);\r\n const [isLoading, setIsLoading] = React.useState(false);\r\n\r\n useEffect(() => {\r\n if (eventId) {\r\n setIsLoading(true);\r\n callServer<IEventBuizzEvent>(`/WebAPI/Feature/Calendar/GetEventDetails?eventId=${eventId}`, \"GET\")\r\n .then(response => {\r\n setData(response.Payload);\r\n setIsLoading(false);\r\n })\r\n .catch(err => console.error(err));\r\n } else {\r\n if (data !== null) setData(null);\r\n }\r\n }, [eventId]);\r\n\r\n return {\r\n data,\r\n isLoading\r\n };\r\n};\r\n","import React from \"react\";\r\n\r\nconst IconLocation = () => {\r\n return (\r\n <svg\r\n width=\"15\"\r\n height=\"21\"\r\n viewBox=\"0 0 15 21\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n role=\"presentation\"\r\n >\r\n <path\r\n d=\"M7.84268 8.64641C8.93371 8.64641 9.81817 7.76196 9.81817 6.67092C9.81817 5.57989 8.93371 4.69543 7.84268 4.69543C6.75164 4.69543 5.86719 5.57989 5.86719 6.67092C5.86719 7.76196 6.75164 8.64641 7.84268 8.64641Z\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n />\r\n <path\r\n d=\"M2.42773 6.97645C2.42773 6.93747 2.42773 6.8986 2.42773 6.85985C2.46502 3.93656 4.86751 1.55851 7.80389 1.53785C8.5183 1.53295 9.22661 1.66882 9.88805 1.93764C10.5495 2.20646 11.151 2.60291 11.6579 3.10416C12.1648 3.60541 12.5671 4.20155 12.8416 4.85826C13.1161 5.51497 13.2574 6.21926 13.2574 6.93058C13.2574 6.9684 13.2574 7.00622 13.2574 7.04369C13.231 8.06886 12.9037 9.06389 12.3159 9.90604L8.27729 15.7551C8.22879 15.8252 8.1639 15.8825 8.0882 15.9221C8.01251 15.9618 7.92827 15.9825 7.84276 15.9825C7.75724 15.9825 7.673 15.9618 7.59731 15.9221C7.52161 15.8825 7.45672 15.8252 7.40822 15.7551L3.37452 9.90954C2.77251 9.04759 2.44282 8.02623 2.42773 6.97645V6.97645Z\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n />\r\n <path\r\n d=\"M3.23511 14.1809C2.27205 14.7678 1.6875 15.5399 1.6875 16.3858C1.6875 18.2222 4.44732 19.7118 7.84584 19.7118C11.2444 19.7118 14.0007 18.2222 14.0007 16.3851C14.0007 15.5396 13.4163 14.7677 12.4541 14.1809\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n />\r\n </svg>\r\n );\r\n};\r\n\r\nexport default IconLocation;\r\n","import React from \"react\";\r\n\r\nconst hasExistingQueryParam = (url: string) => url.indexOf(\"?\") > -1;\r\n\r\nconst getQueryParamDelimiter = (url: string) => (hasExistingQueryParam(url) ? \"&\" : \"?\");\r\n\r\nconst generateSrcSet = (srcSetSizes: number[], srcUrl: string) => {\r\n const generateSrcSetString = (srcSetSize: number) => {\r\n const parameterDelimiter = getQueryParamDelimiter(srcUrl);\r\n const srcSetSizeHighDensity = Math.round(srcSetSize * 1.5);\r\n\r\n return `\r\n ${srcUrl}${parameterDelimiter}w=${srcSetSize} ${srcSetSize}w,\r\n ${srcUrl}${parameterDelimiter}w=${srcSetSizeHighDensity} ${srcSetSizeHighDensity}w\r\n `;\r\n };\r\n\r\n return srcSetSizes.map(generateSrcSetString).join(\", \");\r\n};\r\n\r\ninterface ResponsiveImageProps\r\n extends React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement> {\r\n srcUrl: string;\r\n defaultSize: number;\r\n srcSetSizes: number[];\r\n role?: string;\r\n}\r\n\r\nconst ResponsiveImage = (props: ResponsiveImageProps) => {\r\n const { srcUrl, defaultSize, srcSetSizes, role, ...rest } = props;\r\n const src = `${srcUrl}${getQueryParamDelimiter(srcUrl)}w=${defaultSize}`;\r\n const srcSet = srcSetSizes ? generateSrcSet(srcSetSizes, srcUrl) : \"\";\r\n\r\n return <img src={src} srcSet={srcSet} loading=\"lazy\" alt={props.alt} role={role} {...rest} />;\r\n};\r\n\r\nexport default ResponsiveImage;\r\n","import React from \"react\";\r\nimport Modal from \"ReactComponents/Modal/modal\";\r\nimport LoadSpinner from \"ReactComponents/Shared/AnimationComponents/load-spinner\";\r\n\r\nfunction ModalSpinner(props) {\r\n return (\r\n <Modal isOpen={props.isOpen} notCloseable={props.isOpen}>\r\n <div className=\"u-text-align-center\">\r\n <LoadSpinner />\r\n </div>\r\n </Modal>\r\n );\r\n}\r\n\r\nexport default ModalSpinner;\r\n","import React, { Component } from \"react\";\r\n\r\nclass LoadSpinner extends Component {\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n render() {\r\n return (\r\n <div\r\n role=\"progressbar\"\r\n aria-busy=\"true\"\r\n aria-live=\"polite\"\r\n aria-valuetext=\"Loading...\"\r\n className=\"loader loader--large loader--block\"\r\n >\r\n <span />\r\n </div>\r\n );\r\n }\r\n}\r\n\r\nexport default LoadSpinner;\r\n"],"names":["icon","title","text","visible","div","className","svg","width","height","viewBox","fill","xmlns","role","circle","cx","cy","r","stroke","strokeWidth","path","d","strokeLinecap","rect","x","y","rx","opacity","Headline","Location","LinkUrl","event","ContactPerson","Tags","isLoading","isOpen","onClose","rootClasses","classNames","ModalSpinner","Modal","showCloseButton","toClose","size","removePadding","labelledBy","DateNumber","DateMonth","join","h2","id","h3","Labels","ProgramLabel","Description","dangerouslySetInnerHTML","__html","Speakers","length","SpeakersLabel","map","speaker","i","key","ProfileImage","img","src","alt","IconUserFilled","FullName","EventInfoListItem","IconClock","TimeRangeLabel","TimeRange","IconStar","OrganizerLabel","Organizer","IconLocation","LocationLabel","IconCalendar2","DeadlineLabel","Deadline","IconCash","PriceLabel","a","href","target","ButtonLabel","ContactPersonLabel","JobDescription","br","PhoneNumber","Email","useEventBuizzModal","eventId","useState","data","setData","React","setIsLoading","useEffect","callServer","then","response","Payload","catch","err","console","error","strokeLinejoin","getQueryParamDelimiter","url","indexOf","hasExistingQueryParam","props","srcUrl","defaultSize","srcSetSizes","rest","srcSet","srcSetSize","parameterDelimiter","srcSetSizeHighDensity","Math","round","generateSrcSet","loading","notCloseable","LoadSpinner","render","aria-busy","aria-live","aria-valuetext","span","Component"],"sourceRoot":""}