{"version":3,"file":"js/custom/bitkom-6d923f3b060a8e6e7a7e.js","mappings":"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","sources":["webpack:///./custom/bitkom/app/javascript/components/BitkomCampaignInvite.js","webpack:///./custom/bitkom/app/javascript/components/BitkomDetailParticipation.js","webpack:///./custom/bitkom/app/javascript/components/appointments/form/BitkomCampaignForm.tsx","webpack:///./custom/bitkom/app/javascript/components/appointments/api.ts","webpack:///./custom/bitkom/app/javascript/components/appointments/details/EscortForm.tsx","webpack:///./custom/bitkom/app/javascript/components/appointments/details/BitkomCampaignDetailDate.tsx","webpack:///./custom/bitkom/app/javascript/components/appointments/details/BitkomCampaignDetail.tsx","webpack:///./custom/bitkom/app/javascript/components/appointments/details/BitkomCampaignDetails.tsx","webpack:///./custom/bitkom/app/javascript/components/appointments/details/BitkomCampaignPage.tsx","webpack:///./custom/bitkom/app/javascript/packs/bitkom.js"],"sourcesContent":["import React from \"react\";\nimport {\n AppointmentInviteMeta,\n AppointmentInviteDate,\n} from \"components/appointments/AppointmentInvite\";\nimport { get, isEmpty } from \"lodash\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { networkSelector } from \"../../../../../app/javascript/selectors/environment\";\nimport classnames from \"classnames\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faCalendar } from \"@fortawesome/pro-regular-svg-icons\";\n\n// START temporary code to fix missing invite actions\n// Should be removed when migrating away from redux-api-middleware soon\nimport { createApiAction } from \"helpers/api\";\n\nconst declineInvite = createApiAction({\n method: \"POST\",\n endpoint: ({ inviteId }) => `/api/v1/invites/${inviteId}/reject`,\n baseType: `/INVITE_DECLINE`,\n});\n\nconst acceptInvite = createApiAction({\n method: \"POST\",\n endpoint: ({ inviteId }) => `/api/v1/invites/${inviteId}/accept`,\n baseType: `/INVITE_ACCEPT`,\n});\n// END temporary code\n\nexport default function BitkomCampaignInvite({\n invitable,\n detail,\n author,\n status,\n inviteStatus,\n hideMeta,\n id,\n}) {\n const network = useSelector(networkSelector);\n const dispatch = useDispatch();\n\n const canOptRetroactively = get(network, [\n \"config\",\n \"appointments\",\n \"opt_retroactively\",\n ]);\n\n return (\n
\n
\n \n {!hideMeta ? (\n dispatch(declineInvite({ inviteId: id }))}\n accept={() => dispatch(acceptInvite({ inviteId: id }))}\n canOptRetroactively={canOptRetroactively}\n totalAttendeesEnforcedAndExceeded={\n invitable.total_attendees_enforced_and_exceeded\n }\n />\n ) : null}\n \n \n );\n}\n","import React from \"react\";\nimport BitkomCampaignInvite from \"./BitkomCampaignInvite\";\nimport { isEmpty } from \"lodash\";\n\nconst BitkomDetailParticipation = ({\n status,\n detail,\n campaign,\n invited_by,\n inviteStatus,\n}) => (\n \n);\n\nexport default BitkomDetailParticipation;\n","import React, { useEffect, useState } from \"react\";\nimport { useForm, useWatch } from \"react-hook-form\";\nimport { Appointment } from \"components/../@types/appointments\";\nimport { concat, isEmpty, map, some } from \"lodash\";\nimport FileUploadField from \"components/shared/form/fields/FileUploadField\";\nimport { useDispatch } from \"react-redux\";\nimport publishAllVolatile from \"helpers/files/publishAllVolatile\";\nimport { useMutation } from \"react-query\";\nimport { fetchApi } from \"helpers/reactQueryApi\";\nimport FormActions from \"components/shared/form/fields/FormActions\";\nimport { useNavigate } from \"helpers/tixxt-router\";\n\nexport type AppointmentFormData = {\n event_files: File[];\n};\n\ntype AppointmentFormArgs = {\n appointment: Appointment;\n};\n\nexport function updateBitkomCampaign({ appointmentId, ...body }) {\n return fetchApi(`/custom/bitkom/campaigns/${appointmentId}`, {\n method: \"PUT\",\n body,\n });\n}\n\nexport default function BitkomCampaignForm({\n appointment,\n}: AppointmentFormArgs) {\n const dispatch = useDispatch();\n const navigate = useNavigate();\n\n const { mutate: onUpdateBitkomCampaign, isLoading: isUpdating } = useMutation(\n updateBitkomCampaign,\n {\n onSuccess,\n onError,\n },\n );\n\n const [filesLoading, setFilesLoading] = useState(false);\n\n const { handleSubmit, control } = useForm({\n defaultValues: {\n event_files: appointment.event_files || [],\n },\n });\n\n const selectedEventFiles = useWatch({ control, name: \"event_files\" });\n\n function onSuccess(newAppointment: Appointment) {\n location.replace(`/appointments/${newAppointment.id}`);\n }\n\n function onError(error) {\n toastr.error(error.message || I18n.t(\"generic_error\"));\n }\n\n useEffect(() => {\n setFilesLoading(\n some(concat(selectedEventFiles), {\n state: \"uploading\",\n }),\n );\n }, [selectedEventFiles]);\n\n async function submit(data: AppointmentFormData) {\n const newAppointmentData: any = { ...data };\n\n if (!isEmpty(selectedEventFiles)) {\n const result = await publishAllVolatile({\n dispatch,\n values: {\n event_files: selectedEventFiles,\n },\n storageDirectory: \"files\",\n });\n\n newAppointmentData.event_files = map(result.event_files, (file) =>\n file.state\n ? { ...file, file_object_id: file.id, id: null, type: \"file\" }\n : file,\n );\n } else {\n newAppointmentData.event_files = [];\n }\n\n onUpdateBitkomCampaign({\n appointmentId: appointment.id,\n ...newAppointmentData,\n });\n }\n\n return (\n
\n \n {\n e.preventDefault();\n navigate(`/appointments/${appointment.id}`);\n }}\n saveDisabled={isUpdating || filesLoading}\n />\n \n );\n}\n","import { useMutation, UseMutationOptions } from \"react-query\";\nimport { BitkomCampaignDetail, Escort } from \"./types\";\nimport { fetchApi } from \"helpers/reactQueryApi\";\n\nfunction getParticipationUrl({\n campaignId,\n detailId,\n}: {\n campaignId?: string;\n detailId: string;\n}) {\n return `/custom/bitkom/campaigns/${campaignId}/details/${detailId}/my_participation`;\n}\n\nexport function useUpdateParticipation(\n campaignId: string,\n detailId: string,\n options: { onSuccess: () => void },\n) {\n return useMutation(\n (body: {\n participation: {\n status?: \"accepted\" | \"declined\" | \"open\";\n escort_attributes?: Escort;\n };\n }) =>\n fetchApi(getParticipationUrl({ campaignId, detailId }), {\n method: \"PUT\",\n body,\n }),\n options,\n );\n}\n\nexport function useRemoveEscort(\n campaignId: string,\n detailId: string,\n options: { onSuccess: () => void },\n) {\n return useMutation(\n () =>\n fetchApi(getParticipationUrl({ campaignId, detailId }) + \"/escort\", {\n method: \"DELETE\",\n }),\n options,\n );\n}\n","import React from \"react\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport Select from \"components/shared/form/fields/Select\";\nimport TextInput from \"components/shared/form/fields/TextInput\";\nimport FormActions from \"components/shared/form/fields/FormActions\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faTrash } from \"@fortawesome/pro-regular-svg-icons\";\nimport { Escort } from \"../types\";\nimport { omit } from \"lodash\";\nimport { useRemoveEscort, useUpdateParticipation } from \"../api\";\n\ntype EscortFormFieldArgs = {\n first_name: string;\n last_name: string;\n title: { label: string; value: string };\n salutation: { label: string; value: string } | null;\n company: string;\n};\n\ntype EscortFormArgs = {\n refetchCampaign: () => void;\n setShowEscortModal: (close: boolean) => void;\n detailId?: string;\n campaignId?: string;\n escort?: Escort | null;\n};\n\nexport default function EscortForm({\n detailId = \"\",\n campaignId = \"\",\n escort,\n refetchCampaign,\n setShowEscortModal,\n}: EscortFormArgs) {\n const { mutate: updateParticipation, isLoading: isUpdating } =\n useUpdateParticipation(campaignId, detailId, {\n onSuccess: () => {\n setShowEscortModal(false);\n refetchCampaign();\n },\n });\n\n const { mutate: destroyEscort, isLoading: isDestroyingEscort } =\n useRemoveEscort(campaignId, detailId, {\n onSuccess: () => {\n setShowEscortModal(false);\n refetchCampaign();\n },\n });\n\n const methods = useForm({\n defaultValues: {\n salutation: escort?.salutation\n ? { label: escort?.salutation, value: escort?.salutation }\n : null,\n title: { label: escort?.title || \"-\", value: escort?.title || \"\" },\n first_name: escort?.first_name || \"\",\n last_name: escort?.last_name || \"\",\n company: escort?.company || \"\",\n },\n });\n const submit = (data: EscortFormFieldArgs) => {\n const escortData = {\n ...omit(data, [\"salutation\", \"title\"]),\n salutation: data.salutation?.value || null,\n title: data.title.value,\n };\n\n const body = {\n participation: {\n escort_attributes: escortData,\n },\n };\n\n updateParticipation(body);\n };\n\n return (\n \n \n \n \n \n \n \n \n \n Speichern\n \n {\n e.preventDefault();\n destroyEscort();\n }}\n disabled={isUpdating || isDestroyingEscort}\n >\n Begleitperson entfernen\n \n \n \n \n );\n}\n","import React from \"react\";\nimport { isSameDay } from \"date-fns\";\n\nimport formatDate from \"helpers/formatDate\";\nimport { AppointmentDate } from \"../../../../../../../app/javascript/@types/appointments\";\n\ntype AppointmentDateArgs = {\n date: AppointmentDate;\n};\n\nexport function useAppointmentDate(date: AppointmentDate) {\n const appointmentStart = new Date(date.start);\n const appointmentEnd = date.end ? new Date(date.end) : null;\n const formattedStart = formatDate(\n appointmentStart,\n date.all_day ? \"PPPP\" : I18n.t(\"js.time.formats.date_fns.long_datetime\"),\n );\n\n const formattedEnd = appointmentEnd\n ? isSameDay(appointmentStart, appointmentEnd)\n ? formatDate(appointmentEnd, \"HH:mm\")\n : formatDate(\n appointmentEnd,\n date.all_day\n ? \"PPPP\"\n : I18n.t(\"js.time.formats.date_fns.long_datetime\"),\n )\n : null;\n\n return { appointmentStart, appointmentEnd, formattedStart, formattedEnd };\n}\n\nexport default function BitkomCampaignDetailDate({\n date,\n}: AppointmentDateArgs) {\n const { appointmentStart, appointmentEnd, formattedStart, formattedEnd } =\n useAppointmentDate(date);\n\n return (\n <>\n {appointmentEnd && isSameDay(appointmentStart, appointmentEnd) ? (\n
\n \n bis\n \n
\n ) : (\n <>\n
\n {`${I18n.t(\"js.calendars.date_range.start\")}: `}\n \n
\n {formattedEnd && (\n
\n {`${I18n.t(\"js.calendars.date_range.end\")}: `}\n \n
\n )}\n \n )}\n \n );\n}\n","import { BitkomCampaignDetail } from \"../types\";\nimport { includes, isEmpty } from \"lodash\";\nimport moment from \"moment/moment\";\nimport React, { useState } from \"react\";\nimport Modal from \"components/shared/Modal\";\nimport EscortForm from \"./EscortForm\";\nimport { useParams } from \"helpers/tixxt-router\";\nimport classNames from \"classnames\";\nimport { useUpdateParticipation } from \"../api\";\nimport formatDate from \"helpers/formatDate\";\nimport BitkomCampaignDetailDate from \"./BitkomCampaignDetailDate\";\n\nexport default function DetailView({\n detail,\n refetchCampaign,\n}: {\n detail: BitkomCampaignDetail;\n refetchCampaign: () => void;\n}) {\n const { id: campaignId } = useParams();\n const [showEscortModal, setShowEscortModal] = useState(false);\n const isOrgaItem = detail.type === \"Organisationspunkt\";\n\n const { mutate: updateParticipation, isLoading: isUpdating } =\n useUpdateParticipation(campaignId || \"\", detail.id, {\n onSuccess: () => {\n setShowEscortModal(false);\n refetchCampaign();\n },\n });\n\n function ParticipationActionButton({\n type,\n text,\n disabled = false,\n }: {\n type: string;\n text: string;\n disabled?: boolean;\n }) {\n const ACTION_LOOKUP = {\n withdraw: \"open\",\n accept: \"accepted\",\n decline: \"declined\",\n };\n return (\n {\n e.preventDefault();\n updateParticipation({\n participation: {\n status: ACTION_LOOKUP[type],\n },\n });\n }}\n disabled={disabled || isUpdating}\n >\n {text}\n \n );\n }\n\n return (\n <>\n {showEscortModal && (\n {\n setShowEscortModal(false);\n }}\n title=\"Begleitperson\"\n >\n \n \n )}\n
\n

{detail.name}

\n
\n
\n {!isOrgaItem && detail.date.start && (\n \n )}\n {detail.location && (\n
{detail.location}
\n )}\n {detail.total_seats > 0 && (\n
\n Gesamtplatzanzahl: {detail.total_seats}\n
\n )}\n
\n
\n \n {detail.my_participation?.status === \"accepted\" &&\n \"Sie haben zugesagt.\"}\n {detail.my_participation?.status === \"declined\" &&\n \"Sie haben abgesagt.\"}\n {detail.my_participation?.status === \"queued\" &&\n \"Sie sind auf der Warteliste.\"}\n \n
\n {detail.my_participation?.status === \"accepted\" &&\n detail.can.opt && (\n \n )}\n {detail.my_participation?.status === \"declined\" &&\n detail.can.opt && (\n \n )}\n {!includes(\n [\"accepted\", \"declined\"],\n detail.my_participation?.status,\n ) && (\n <>\n \n \n \n )}\n {detail.allow_escort &&\n (detail.my_participation?.status === \"accepted\" ||\n detail.my_participation?.status === \"queued\") && (\n setShowEscortModal(true)}\n >\n {isEmpty(detail.my_participation.escort)\n ? \"Begleitperson anmelden\"\n : \"Begleitperson ändern\"}\n \n )}\n
\n
\n
\n {!detail.user_can_opt && detail.registration_closed ? (\n
\n Die Veranstaltung ist leider bereits ausgebucht.\n
\n ) : !detail.user_can_opt && !detail.my_participation?.status ? (\n
\n Eine Teilnahme ist nur mit persönlicher Einladung möglich.\n
\n ) : detail.my_registration_deadline ? (\n moment(detail.my_registration_deadline) > moment() ? (\n
\n Anmelden bis{\" \"}\n {formatDate(\n new Date(detail.my_registration_deadline),\n \"PPPP HH:mm\",\n )}\n .\n
\n ) : (\n
\n {detail.registration_deadline_text ? (\n
\n ) : (\n \"Die Anmeldefrist ist abgelaufen.\"\n )}\n
\n )\n ) : null}\n

{detail.description}

\n \n \n );\n}\n","import { BitkomCampaignDetail } from \"../types\";\nimport { entries, groupBy, map, mapValues } from \"lodash\";\nimport React from \"react\";\nimport DetailView from \"./BitkomCampaignDetail\";\n\nfunction groupDetails(details: BitkomCampaignDetail[]): {\n [p: string]: BitkomCampaignDetail[];\n} {\n const grouped = groupBy(details, \"group\");\n\n return mapValues(grouped, (groupDetails) => {\n return [...groupDetails].sort((a, b) => a.sort.localeCompare(b.sort));\n });\n}\n\nexport default function BitkomEventDetails({\n details,\n refetchCampaign,\n}: {\n details: BitkomCampaignDetail[];\n refetchCampaign: () => void;\n}) {\n const groupedDetails = groupDetails(details);\n\n return (\n
\n {map(entries(groupedDetails), ([group, details]) => {\n const Component =\n details.length > 1 ? GroupedDetailsView : UngroupedDetailsView;\n return (\n \n );\n })}\n
\n );\n}\n\nfunction GroupedDetailsView({\n details,\n refetchCampaign,\n}: {\n refetchCampaign: () => void;\n details: BitkomCampaignDetail[];\n}) {\n return (\n
\n
\n Parallel laufende Programmpunkte - es kann nur eine der folgenden\n Optionen ausgewählt werden:\n
\n
\n \n
\n
\n );\n}\n\nfunction UngroupedDetailsView({\n details,\n refetchCampaign,\n}: {\n refetchCampaign: () => void;\n details: BitkomCampaignDetail[];\n}) {\n return details.map((detail) => (\n \n ));\n}\n","import React from \"react\";\nimport { useParams } from \"helpers/tixxt-router\";\nimport { useAppointment, useCalendars } from \"components/appointments/api\";\nimport PageLoading from \"components/shared/PageLoading\";\nimport PageTitle, { Subtitle } from \"components/layout/PageTitle\";\nimport { filter, includes, isEmpty, map, pick, values } from \"lodash\";\nimport Toolbar from \"components/appointments/details/Toolbar\";\nimport { BitkomCampaign } from \"../types\";\nimport BitkomEventDetails from \"./BitkomCampaignDetails\";\nimport AppointmentDate from \"components/appointments/details/AppointmentDate\";\nimport AppointmentLocation from \"components/appointments/details/AppointmentLocation\";\nimport formatDate from \"helpers/formatDate\";\nimport FileRow from \"components/shared/FileRow\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport {\n faArrowRight,\n faCoffee,\n faHome,\n faPhone,\n} from \"@fortawesome/pro-regular-svg-icons\";\n\nexport default function BitkomCampaignPage() {\n const { id } = useParams();\n const {\n data: appointment,\n refetch,\n isLoading,\n } = useAppointment(id);\n\n if (isLoading) {\n return ;\n }\n\n return (\n appointment && (\n <>\n \n \n {I18n.t(\"js.calendars.appointment.subtitle\")}\n \n \n \n \n )\n );\n}\n\nexport function BitkomCampaignDetails({\n refetch,\n ...appointment\n}: BitkomCampaign & {\n refetch: () => void;\n}) {\n const { data: calendars } = useCalendars();\n\n const appointmentCalendars = filter(calendars, (cal) =>\n includes(appointment.calendar_ids, cal.id),\n );\n\n const addressForUri = encodeURIComponent(\n values(\n pick(location, [\"address1\", \"address2\", \"zip\", \"city\", \"country\"]),\n ).join(\" \"),\n );\n\n return (\n <>\n
\n
\n
\n
\n
\n
    \n {map(appointmentCalendars, (cal) => (\n
  1. \n \n {cal.name}\n
  2. \n ))}\n
\n
\n \n \n
\n
\n {appointment.location.maps_url && (\n
\n \n \n \n
\n )}\n
\n
\n\n {(appointment.registration_deadline ||\n appointment.ticket_url ||\n appointment.registration_with_costs) && (\n
\n {appointment.ticket_url && (\n \n \n Zur Anmeldung\n \n )}\n {appointment.registration_with_costs && (\n
Die Teilnahme ist kostenpflichtig.
\n )}\n {appointment.registration_deadline && (\n
\n Anmelden bis{\" \"}\n {formatDate(\n new Date(appointment.registration_deadline),\n \"PPPP HH:mm\",\n )}\n .\n
\n )}\n
\n )}\n
\n
\n {appointment.description && (\n

{appointment.description}

\n )}\n
\n \n {appointment.description_bottom && (\n
\n

\n {appointment.description_bottom}\n

\n
\n )}\n {!isEmpty(appointment.event_files) && (\n
\n Dateien\n {map(appointment.event_files, (file, index) => (\n \n ))}\n
\n )}\n
\n
\n {appointment.category && (\n
\n Kategorie\n
\n \n {appointment.category}\n
\n
\n )}\n\n {appointment.organizer && (\n
\n Veranstalter\n
\n \n {appointment.organizer}\n
\n
\n )}\n
\n\n
\n {appointment.contact_functional && (\n
\n Fachlicher Ansprechpartner\n \n
\n )}\n\n {appointment.contact_organizational && (\n
\n Event-Ansprechpartner\n \n
\n )}\n
\n
\n
\n \n );\n}\n","import CustomConfigurator from \"CustomConfigurator\";\nimport BitkomCampaignInvite from \"../components/BitkomCampaignInvite\";\nimport BitkomDetailParticipation from \"../components/BitkomDetailParticipation\";\nimport BitkomCampaignForm from \"../components/appointments/form/BitkomCampaignForm\";\nimport BitkomCampaignPage from \"../components/appointments/details/BitkomCampaignPage\";\n\nCustomConfigurator.set(\"markdownEditor.colors\", []);\nCustomConfigurator.set(\"markdownEditor.buttons\", [\n \"BoldButton\",\n \"ItalicButton\",\n \"UnderlineButton\",\n \"StrikeButton\",\n \"Separator\",\n \"MarkButton\",\n \"CodeButton\",\n \"Separator\",\n \"H2Button\",\n \"Separator\",\n \"UnorderedListButton\",\n \"OrderedListButton\",\n \"BlockquoteButton\",\n \"Separator\",\n \"LinkButton\",\n]);\n\n// Add component to lookup used when rendering the list of invites\nCustomConfigurator.set(\n [\"invites\", \"types\", \"appointments\", \"invites\", \"Bitkom::Campaign\"],\n BitkomCampaignInvite,\n);\nCustomConfigurator.set(\n [\n \"invites\",\n \"types\",\n \"appointments\",\n \"participations\",\n \"Bitkom::DetailParticipation\",\n ],\n BitkomDetailParticipation,\n);\n\nCustomConfigurator.set(\n [\"appointments\", \"edit\", \"form\", \"BitkomCampaignForm\"],\n BitkomCampaignForm,\n);\n\nCustomConfigurator.set(\n [\"appointments\", \"show\", \"BitkomCampaign\"],\n BitkomCampaignPage,\n);\n"],"names":["declineInvite","createApiAction","method","endpoint","inviteId","baseType","acceptInvite","BitkomCampaignInvite","invitable","detail","author","status","inviteStatus","hideMeta","id","network","useSelector","networkSelector","dispatch","useDispatch","canOptRetroactively","get","React","className","FontAwesomeIcon","icon","faCalendar","isEmpty","href","name","AppointmentInviteDate","date","description","I18n","t","classnames","total_attendees_enforced_and_exceeded","AppointmentInviteMeta","decline","accept","totalAttendeesEnforcedAndExceeded","BitkomDetailParticipation","campaign","invited_by","updateBitkomCampaign","appointmentId","body","fetchApi","getParticipationUrl","campaignId","detailId","useUpdateParticipation","options","useMutation","EscortForm","escort","refetchCampaign","setShowEscortModal","mutate","updateParticipation","isLoading","isUpdating","onSuccess","destroyEscort","isDestroyingEscort","useRemoveEscort","methods","useForm","defaultValues","salutation","label","value","title","first_name","last_name","company","FormProvider","onSubmit","handleSubmit","data","escortData","omit","participation","escort_attributes","Select","required","TextInput","FormActions","showCancel","showSave","type","disabled","onClick","e","preventDefault","faTrash","BitkomCampaignDetailDate","appointmentStart","appointmentEnd","formattedStart","formattedEnd","Date","start","end","formatDate","all_day","isSameDay","useAppointmentDate","DetailView","useParams","showEscortModal","useState","isOrgaItem","ParticipationActionButton","text","ACTION_LOOKUP","withdraw","classNames","includes","Modal","onClose","my_participation","location","total_seats","can","opt","allow_escort","user_can_opt","registration_closed","my_registration_deadline","moment","registration_deadline_text","dangerouslySetInnerHTML","__html","style","whiteSpace","BitkomEventDetails","details","groupedDetails","grouped","groupBy","mapValues","groupDetails","sort","a","b","localeCompare","map","entries","group","Component","length","GroupedDetailsView","UngroupedDetailsView","key","BitkomCampaignDetails","refetch","appointment","calendars","useCalendars","appointmentCalendars","filter","cal","calendar_ids","addressForUri","encodeURIComponent","values","pick","join","backgroundColor","color","AppointmentDate","AppointmentLocation","maps_url","target","rel","src","registration_deadline","ticket_url","registration_with_costs","faArrowRight","description_bottom","event_files","file","index","FileRow","Object","assign","category","faCoffee","organizer","faHome","contact_functional","faPhone","path","contact_organizational","CustomConfigurator","set","navigate","useNavigate","onUpdateBitkomCampaign","newAppointment","replace","onError","error","toastr","message","filesLoading","setFilesLoading","control","selectedEventFiles","useWatch","useEffect","some","concat","state","async","newAppointmentData","result","publishAllVolatile","storageDirectory","file_object_id","FileUploadField","multiple","selectExisting","onCancel","saveDisabled","useAppointment","PageLoading","PageTitle","Subtitle","Toolbar"],"sourceRoot":""}