{"version":3,"file":"js/application-683ca47220d214164b2d.js","mappings":"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","sources":["webpack://app/./app/javascript/controllers/admin/account_picker_controller.js","webpack://app/./app/javascript/controllers/admin/add_subquestion_controller.js","webpack://app/./app/javascript/controllers/admin/attendee_type_selector_controller.js","webpack://app/./app/javascript/controllers/admin/chart_controller.js","webpack://app/./app/javascript/controllers/admin/cross_event_reports_controller.js","webpack://app/./app/javascript/controllers/admin/cross_event_reports_modal_controller.js","webpack://app/./app/javascript/controllers/admin/cross_event_reports_turbo_frame_controller.js","webpack://app/./app/javascript/controllers/admin/event_booking_pages_search_dates_controller.js","webpack://app/./app/javascript/controllers/admin/expense_controller.js","webpack://app/./app/javascript/controllers/admin/expense_report_controller.js","webpack://app/./app/javascript/controllers/admin/field_mapping_controller.js","webpack://app/./app/javascript/controllers/admin/internal_messages_controller.js","webpack://app/./app/javascript/controllers/admin/invite_preview_controller.js","webpack://app/./app/javascript/controllers/admin/multi_checkbox_controller.js","webpack://app/./app/javascript/controllers/admin/multi_select_actions_controller.js","webpack://app/./app/javascript/controllers/admin/multi_select_table_controller.js","webpack://app/./app/javascript/controllers/admin/org_event_type_controller.js","webpack://app/./app/javascript/controllers/admin/preview_template_selection_controller.js","webpack://app/./app/javascript/controllers/admin/progress_controller.js","webpack://app/./app/javascript/controllers/admin/push_expense_report_controller.js","webpack://app/./app/javascript/controllers/admin/registration_field_controller.js","webpack://app/./app/javascript/controllers/admin/registration_invite_controller.js","webpack://app/./app/javascript/controllers/admin/registration_responses_controller.js","webpack://app/./app/javascript/controllers/admin/search_and_filter_controller.js","webpack://app/./app/javascript/src/plugins/SortableJS.js","webpack://app/./app/javascript/controllers/admin/sortable_table_controller.js","webpack://app/./app/javascript/controllers/admin/total_amount_controller.js","webpack://app/./app/javascript/controllers/matcher_sliders_controller.js","webpack://app/./app/javascript/controllers/admin_controllers.js","webpack://app/./app/javascript/src/plugins/ColorPicker.js","webpack://app/./app/javascript/src/plugins/FilestackSingle.js","webpack://app/./app/javascript/src/plugins/LocationAutocomplete.js","webpack://app/./app/javascript/src/plugins/QuillFilestackUploader.js","webpack://app/./app/javascript/src/plugins/Quill.js","webpack://app/./app/javascript/src/plugins/Swiper.js","webpack://app/./app/javascript/src/custom/ListScrollTo.js","webpack://app/./app/javascript/src/custom/TableShadow.js","webpack://app/./app/javascript/src/custom/PasswordChange.js","webpack://app/./app/javascript/src/custom/batch_actions.js","webpack://app/./app/javascript/src/custom/multi_select_table.js","webpack://app/./app/javascript/src/custom/organizations.js","webpack://app/./app/javascript/src/custom/Questions.js","webpack://app/./app/javascript/src/custom/components/ClearFilterButton.js","webpack://app/./app/javascript/src/custom/components/ConditionalButton.js","webpack://app/./app/javascript/src/custom/components/DetailedConfirmPrompt.js","webpack://app/./app/javascript/src/custom/admin/AddFromConcur.js","webpack://app/./app/javascript/src/custom/admin/ApprovalsManagement.js","webpack://app/./app/javascript/src/custom/admin/AttendeeProfilesList.js","webpack://app/./app/javascript/src/custom/admin/AttendeeTypeManagement.js","webpack://app/./app/javascript/src/custom/admin/BrandManagement.js","webpack://app/./app/javascript/src/custom/admin/Calendar.js","webpack://app/./app/javascript/src/custom/admin/ConcurTravelManagement.js","webpack://app/./app/javascript/src/custom/admin/ConfirmModalDisplay.js","webpack://app/./app/javascript/src/custom/admin/DocumentManagement.js","webpack://app/./app/javascript/src/custom/admin/EmailConfigurationManagement.js","webpack://app/./app/javascript/src/custom/admin/EmailTemplateManagement.js","webpack://app/./app/javascript/src/custom/admin/EventDashboard.js","webpack://app/./app/javascript/src/custom/admin/EventTypeManagement.js","webpack://app/./app/javascript/src/custom/admin/FinancialTransactions.js","webpack://app/./app/javascript/src/custom/admin/FlightConfigurations.js","webpack://app/./app/javascript/src/custom/admin/InstantBookingConfiguration.js","webpack://app/./app/javascript/src/custom/admin/matchingInput.js","webpack://app/./app/javascript/src/custom/admin/Members.js","webpack://app/./app/javascript/src/custom/admin/moveEvent.js","webpack://app/./app/javascript/src/custom/admin/PortalOptions.js","webpack://app/./app/javascript/src/custom/admin/PortalToggle.js","webpack://app/./app/javascript/src/custom/admin/PropertyManagement.js","webpack://app/./app/javascript/src/custom/admin/questions.js","webpack://app/./app/javascript/src/custom/confirmationModal.js","webpack://app/./app/javascript/src/custom/admin/Registration.js","webpack://app/./app/javascript/src/custom/admin/RoomingList.js","webpack://app/./app/javascript/src/custom/admin/RoomRequest.js","webpack://app/./app/javascript/src/custom/admin/SessionManagement.js","webpack://app/./app/javascript/src/custom/admin/UserPermissionsManagement.js","webpack://app/./app/javascript/src/custom/admin/WebAppDesign.js","webpack://app/./app/javascript/src/custom/events/Ebids.js","webpack://app/./app/javascript/src/custom/events/Payments.js","webpack://app/./app/javascript/src/custom/events/registrations.js","webpack://app/./app/javascript/src/custom/events/VideoBackground.js","webpack://app/./app/javascript/src/custom/events/travel/HotelCuration.js","webpack://app/./app/javascript/packs/application.js","webpack://app/./app/javascript/src/custom/cookies.js","webpack://app/./app/javascript/src/custom/HeaderInit.js","webpack://app/./app/javascript/src/custom/InitDashboard.js","webpack://app/./app/javascript/src/custom/TableAccordion.js","webpack://app/./app/javascript/src/custom/admin/ButtonDropdown.js","webpack://app/./app/javascript/src/custom/admin/ConcurExpenseManagement.js","webpack://app/./app/javascript/src/custom/admin/Discounts.js","webpack://app/./app/javascript/src/custom/admin/ResourcesManagement.js","webpack://app/./app/javascript/src/custom/channels/consumer.js","webpack://app/./app/javascript/src/custom/components/ConditionalSelect.js","webpack://app/./app/javascript/src/custom/components/FilteredTextBox.js","webpack://app/./app/javascript/src/custom/components/MoreLess.js","webpack://app/./app/javascript/src/custom/components/ProgressBar.js","webpack://app/./app/javascript/src/custom/components/RemovableTag.js","webpack://app/./app/javascript/src/custom/components/TimezoneSelector.js","webpack://app/./app/javascript/src/custom/events/Transactions.js","webpack://app/./app/javascript/src/custom/events/Vendors.js","webpack://app/./app/javascript/src/custom/events/countdown_clock.js","webpack://app/./app/javascript/src/custom/events/ibSearch.js","webpack://app/./app/javascript/src/custom/events/proposal_request.js","webpack://app/./app/javascript/src/custom/channels/exporter.js","webpack://app/./app/javascript/src/custom/exporter.js","webpack://app/./app/javascript/src/plugins/Clipboard.js","webpack://app/./app/javascript/src/plugins/FormFields.js","webpack://app/./app/javascript/src/plugins/Print.js","webpack://app/./app/javascript/src/plugins/UserPilot.js"],"sourcesContent":["import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n show() {\n this.element.classList.remove(\"tw-hidden\");\n this.dispatch(\"show\");\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n setHiddenFieldAndSubmit = (ev) => {\n const select = document.querySelector(\"#question_add_sub_question\");\n select.value = true;\n const answerUuidField = document.querySelector(\"#question_answer_uuid\");\n\n answerUuidField.value = ev.target.getAttribute(\"data-build-uuid\");\n\n document.getElementById(\"question_form\").submit();\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n\n static targets = [\"selectAll\", \"checkbox\"];\n\n connect = () => {\n if (!this.hasSelectAllTarget || this.selectAllTarget.checked) {\n this.checkboxTargets.forEach((checkbox) => {\n checkbox.checked = true;\n });\n }\n\n const checked = this.checkboxTargets.filter((checkbox) => checkbox.checked);\n if (checked.length === 1) {\n checked[0].parentNode.classList.add(\"disabled\");\n }\n }\n\n toggleSelectAll = () => {\n this.checkboxTargets.forEach((checkbox) => {\n if (\n checkbox.dataset.defaultAttendeeType === \"true\" &&\n this.selectAllTarget.checked === false\n ) {\n checkbox.parentNode.classList.add(\"disabled\");\n } else {\n checkbox.checked = this.selectAllTarget.checked;\n checkbox.parentNode.classList.remove(\"disabled\");\n }\n });\n };\n\n toggleCheckbox = (event) => {\n let allChecked = true;\n const checkedCount = this.checkboxTargets.filter((checkbox) => checkbox.checked).length;\n if (checkedCount === 0) {\n event.currentTarget.checked = true;\n return;\n }\n\n this.checkboxTargets.forEach((elem) => {\n if (!elem.checked) {\n allChecked = false;\n }\n elem.parentNode.classList.remove(\"disabled\");\n });\n\n if (this.hasSelectAllTarget) {\n this.selectAllTarget.checked = allChecked;\n }\n\n const checked = this.checkboxTargets.filter((checkbox) => checkbox.checked);\n if (checked.length === 1) {\n checked[0].parentNode.classList.add(\"disabled\");\n }\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport ApexCharts from \"apexcharts\";\n\nexport default class extends Controller {\n static targets = [\"pointValue\", \"pointContainer\"];\n\n connect() {\n const options = {\n series: [], // Empty series to be populated with data from data_point_component\n chart: {\n type: \"bar\",\n height: 66, // Base required height is 46px\n stacked: true,\n stackType: \"100%\",\n toolbar: {\n show: false,\n },\n },\n plotOptions: {\n bar: {\n horizontal: true,\n // borderRadius: 10,\n // borderRadiusApplication: \"end\",\n // borderRadiusWhenStacked: \"last\",\n barHeight: \"100%\", // Ensures the bar fills the height of the chart\n dataLabels: {\n total: {\n enabled: false, // Disable total data labels\n },\n },\n },\n },\n stroke: {\n width: 1,\n colors: [\"#fff\"],\n },\n xaxis: {\n categories: [this.pointContainerTarget.dataset.name],\n labels: {\n show: false, // Hide x-axis labels\n },\n axisBorder: {\n show: false, // Hide x-axis border\n },\n axisTicks: {\n show: false, // Hide x-axis ticks\n },\n },\n yaxis: {\n labels: {\n show: false, // Hide y-axis labels\n },\n },\n dataLabels: {\n enabled: false, // Disable individual data labels\n },\n grid: {\n show: false, // Hide grid lines\n position: \"back\",\n padding: {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n },\n },\n tooltip: {\n enabled: false, // Disable tooltip for a cleaner look\n },\n legend: {\n show: false, // Hide legend\n width: 0,\n height: 0,\n itemMargin: {\n horizontal: 0,\n vertical: 0,\n },\n },\n fill: {\n opacity: 1,\n },\n };\n this.pointValueTargets.forEach((t) => {\n options.series.push({\n name: t.dataset.name,\n data: [parseInt(t.dataset.value, 10)],\n color: t.dataset.color,\n });\n });\n const el = this.pointContainerTarget;\n const chart = new ApexCharts(el, options);\n chart.render();\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport toastr from \"../../src/plugins/Toastr\";\nimport { initExporter } from \"../../src/custom/exporter\";\nimport { i18n } from \"../../src/custom/Internationalization\";\nimport { csvToNumberArray } from \"../../src/custom/Utils\";\n\nexport default class extends Controller {\n static targets = [\n \"objectIds\",\n \"allEvents\", // allEvents is field\n \"startRecord\",\n \"endRecord\",\n \"totalRecords\",\n \"recordBlock\",\n \"paginationMessage\",\n \"singlePageStartMessage\",\n \"singlePageEndMessage\",\n ];\n\n removedIds = [];\n\n syncObjectIds = () => {\n const buildObjectIdsField = document.getElementById(\"build_object_ids\");\n\n if (this.objectIdsTarget && buildObjectIdsField) {\n buildObjectIdsField.value = this.objectIdsTarget.value;\n }\n };\n\n syncCount = () => {\n const checkedValues = csvToNumberArray(this.objectIdsTarget.value || \"\");\n\n this.totalRecordsTarget.innerHTML = checkedValues.length;\n this.endRecordTarget.innerHTML = checkedValues.length;\n };\n\n cleanRemovedEvents = () => {\n const rows = document.querySelectorAll(\n \"#cross_events_list [id^='events_row_']\",\n );\n\n rows.forEach((row) => {\n const rowId = Number(row.querySelector(\"input\")?.value);\n\n if (rowId) {\n if (this.removedIds.indexOf(rowId) !== -1) {\n row?.parentNode?.removeChild(row);\n }\n }\n });\n };\n\n switchPaginationMessage = () => {\n if (!this.hasRecordBlockTarget) return;\n\n const targets = [\n this.startRecordTarget,\n this.endRecordTarget,\n this.singlePageEndMessageTarget,\n this.singlePageStartMessageTarget,\n ];\n\n if (this.totalRecordsTarget.dataset.amount > 25) {\n // Hide the detailed record block that can't be synced with pagination\n targets.forEach((target) => target.classList.add(\"tw-hidden\"));\n // Display the simplified record block when pagination is used\n this.paginationMessageTarget.classList.remove(\"tw-hidden\");\n }\n };\n\n removeEvent = (e) => {\n e.preventDefault();\n\n let checkedValues = csvToNumberArray(this.objectIdsTarget.value || \"\");\n const id = Number(e.currentTarget.dataset.eventid);\n const index = checkedValues.indexOf(id);\n const row = document.getElementById(`events_row_${id}`);\n\n if (index === -1) {\n this.cleanRemovedEvents();\n } else {\n // If the id is present in the array remove it\n checkedValues = checkedValues.filter((el) => el !== \"\" && el !== id);\n this.objectIdsTarget.value = checkedValues.join(\",\");\n this.allEventsTarget.value = \"false\";\n row.classList.add(\"disabled\");\n row?.parentNode?.removeChild(row);\n // Push this id into the removedIds array for tracking\n this.removedIds.push(id);\n this.syncCount();\n this.syncObjectIds();\n }\n };\n\n afterDownload = (uuid, data) => {\n // Replace the element with the new anchor link\n const generatingElement = document.querySelector(\n `#report_download_${uuid} .generating`,\n );\n generatingElement.outerHTML = `${i18n.t(\"actions.download\")}`;\n\n toastr.clear();\n };\n\n initButtons = () => {\n const reportType = document.getElementById(\"cross_event_report_type\");\n const selectEvents = document.getElementById(\"new_report_modal\");\n const downloadBtn = document.getElementById(\"download_button\");\n\n reportType.addEventListener(\"change\", (e) => {\n if (e.currentTarget.value !== \"placeholder\") {\n selectEvents.classList.remove(\"disabled\");\n } else {\n selectEvents.classList.add(\"disabled\");\n }\n });\n\n downloadBtn.addEventListener(\"click\", (e) => {\n e.currentTarget.classList.add(\"disabled\");\n });\n };\n\n enableDownloadButton = () => {\n const checkedValues = csvToNumberArray(this.objectIdsTarget.value || \"\");\n const downloadButton = document.getElementById(\"download_button\");\n\n if (checkedValues.length === 0) {\n downloadButton.classList.add(\"disabled\");\n return;\n }\n downloadButton.classList.remove(\"disabled\");\n };\n\n handleCrossEventsTableUpdated() {\n this.syncCount();\n this.cleanRemovedEvents();\n this.switchPaginationMessage();\n this.enableDownloadButton();\n }\n\n handleCrossEventsModalUpdates() {\n this.removedIds = [];\n }\n\n connect() {\n this.syncObjectIds();\n initExporter(this.afterDownload, \".cross_event_report_export\");\n this.initButtons();\n }\n}\n","/* eslint-disable no-use-before-define */\nimport { Controller } from \"@hotwired/stimulus\";\nimport flatpickr from \"flatpickr\";\nimport {\n clearDatePicker,\n csvToNumberArray,\n resetFormData,\n formatToUTCDate,\n} from \"../../src/custom/Utils\";\n\nexport default class extends Controller {\n static targets = [\n \"rowCheckbox\",\n \"buildObjectIds\",\n \"allEvents\", // allEvents is checkbox\n \"reportName\",\n \"clearbtn\",\n \"form\",\n \"startDate\",\n \"endDate\",\n \"selectedCount\",\n \"targetFrame\",\n ];\n\n objectIdsField = document.getElementById(\"cross_event_object_ids\");\n\n allEventsField = document.getElementById(\"cross_event_all_events\");\n\n reportNameField = document.getElementById(\"cross_event_name\");\n\n checkedValues = csvToNumberArray(this.objectIdsField.value || \"\");\n\n syncObjectIds = () => {\n if (this.objectIdsField && this.buildObjectIdsTarget) {\n this.checkedValues = [...new Set(this.checkedValues)].filter(\n (value) =>\n typeof value === \"number\" &&\n !Number.isNaN(value) &&\n Number(value) !== 0,\n );\n this.buildObjectIdsTarget.value = this.objectIdsField.value;\n // Update the selected count\n this.selectedCountTarget.innerHTML = this.checkedValues.length;\n }\n };\n\n handleRowClick = (e) => {\n if (e.target.tagName === \"INPUT\" && e.target.type === \"checkbox\") {\n return;\n }\n\n const row = e.currentTarget;\n const checkbox = row.querySelector(\"input[type='checkbox']\");\n\n if (checkbox) {\n checkbox.checked = !checkbox.checked;\n // Dispatch a change event to trigger handleCheckboxChange\n checkbox.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n };\n\n handleCheckboxChange = (e) => {\n if (e.target.checked) {\n this.addEvent(Number(e.target.value));\n } else {\n this.removeEvent(Number(e.target.value));\n }\n };\n\n handleReportNameChange = (e) => {\n if (e.currentTarget.value !== \"\") {\n this.reportNameField.value = e.currentTarget.value;\n }\n };\n\n handleSearchAndFilter = () => {\n this.allEventsField.value = \"false\";\n this.checkedValues = [];\n this.syncObjectIds();\n this.syncCheckboxes();\n };\n\n updateFilterCount = (id, extCount) => {\n const button = document.getElementById(`${id}__btn`);\n const countDisplay = document.getElementById(`${id}__count`);\n const icon = button.querySelector('[class*=\"g-icon\"]');\n const formData = new FormData(this.formTarget);\n const name = `${id}[]`;\n const formCount = [...formData.entries()].filter(\n (el) => el[0] === name,\n ).length;\n const count = extCount || formCount;\n\n if (count === 0) {\n countDisplay.classList.add(\"tw-hidden\");\n icon.classList.remove(\"tw-hidden\");\n return;\n }\n countDisplay.innerHTML = count;\n countDisplay.classList.remove(\"tw-hidden\");\n icon.classList.add(\"tw-hidden\");\n };\n\n handleSearchAndFilterChange = (e) => {\n this.clearbtnTarget.classList.remove(\"tw-invisible\");\n this.clearbtnTarget.classList.add(\"tw-visible\");\n\n if (e && e.currentTarget.type === \"checkbox\") {\n const id = e.currentTarget.name.replace(\"[]\", \"\");\n this.updateFilterCount(id);\n }\n };\n\n handleFilterClear = () => {\n const buttons = document.querySelectorAll('button[id$=\"__btn\"]');\n\n buttons.forEach((btn) => {\n const id = btn.id.replace(\"__btn\", \"\");\n this.updateFilterCount(id, 0);\n });\n };\n\n clearSearchAndFilter = () => {\n this.clearbtnTarget.classList.remove(\"tw-visible\");\n this.clearbtnTarget.classList.add(\"tw-invisible\");\n\n if (this.startDatePicker) {\n clearDatePicker(this.startDatePicker);\n }\n if (this.endDatePicker) {\n clearDatePicker(this.endDatePicker);\n }\n // Clear the hidden date fields\n document.getElementById(\"start_date\").value = \"\";\n document.getElementById(\"end_date\").value = \"\";\n\n // Update data to clear filters after submit\n this.formTarget.dataset.clearfilters = true;\n };\n\n handleSelectAllChange = (e) => {\n const allEventsIds = JSON.parse(this.allEventsTarget.dataset.alleventsids);\n if (e.target.checked) {\n allEventsIds.forEach((id) => {\n this.addEvent(id);\n });\n this.allEventsField.value = \"true\";\n } else {\n allEventsIds.forEach((id) => {\n this.removeEvent(id);\n });\n this.allEventsField.value = \"false\";\n }\n\n this.syncCheckboxes(allEventsIds);\n };\n\n addEvent = (id) => {\n // Ensure the passed `id` is a number\n if (typeof id !== \"number\" || Number.isNaN(id)) {\n // TODO: Update this to sentry error if possible\n // console.error(`Invalid id: ${id}. Only numbers are allowed.`);\n return;\n }\n\n if (!this.checkedValues.includes(id)) {\n this.checkedValues.push(id);\n }\n\n this.objectIdsField.value = this.checkedValues\n .filter((el) => el !== \"\")\n .join(\",\");\n this.syncObjectIds();\n };\n\n removeEvent = (id) => {\n // Ensure the passed `id` is a number\n if (typeof id !== \"number\" || Number.isNaN(id)) {\n // TODO: Update this to sentry error if possible\n // console.error(`Invalid id: ${id}. Only numbers are allowed.`);\n return;\n }\n\n const index = this.checkedValues.indexOf(id);\n if (index >= 0) {\n this.checkedValues = this.checkedValues.filter(\n (el) => el !== \"\" && el !== id,\n );\n this.objectIdsField.value = this.checkedValues.join(\",\");\n }\n\n this.allEventsTarget.checked = false;\n\n const row = document.querySelector(`#cross_event_list .events_row_${id}`);\n row?.parentNode?.removeChild(row);\n\n this.syncObjectIds();\n };\n\n syncCheckboxes = () => {\n const checkboxes = this.rowCheckboxTargets.filter((checkbox) => {\n return this.checkedValues.includes(Number(checkbox.value));\n });\n\n if (checkboxes.length === 0) {\n this.rowCheckboxTargets.forEach((checkbox) => {\n checkbox.checked = false;\n });\n return;\n }\n checkboxes.forEach((checkbox) => {\n checkbox.checked = true;\n });\n\n this.allEventsTarget.checked = this.allEventsField.value === \"true\";\n };\n\n initDatePicker = () => {\n const startDate = document.getElementById(\"start_date\");\n const endDate = document.getElementById(\"end_date\");\n const modalContainer = this.element.closest(\".tf-modal\");\n\n if (this.startDatePicker) {\n this.startDatePicker.destroy();\n }\n if (this.endDatePicker) {\n this.endDatePicker.destroy();\n }\n\n this.startDatePicker = flatpickr(this.startDateTarget, {\n dateFormat: \"D, M j, Y\", // Display format\n defaultDate: Date.parse(this.startDateTarget.defaultValue),\n appendTo: modalContainer,\n onOpen: () => {\n if (this.endDatePicker.selectedDates[0]) {\n this.startDatePicker.set(\n \"maxDate\",\n this.endDatePicker.selectedDates[0],\n );\n }\n },\n onChange: (selectedDates) => {\n if (selectedDates[0]) {\n this.endDatePicker.set(\"defaultDate\", selectedDates[0]);\n\n // Open the endDatePicker if its date is not selected\n if (!this.endDatePicker.selectedDates[0]) {\n this.endDatePicker.open();\n }\n\n startDate.value = formatToUTCDate(selectedDates[0]);\n\n this.handleSearchAndFilterChange();\n }\n },\n onClose: () => {\n // Handle if the user manually removed the date\n if (!this.startDatePicker.selectedDates[0]) {\n startDate.value = \"\";\n }\n },\n });\n\n this.endDatePicker = flatpickr(this.endDateTarget, {\n dateFormat: \"D, M j, Y\", // Display format\n defaultDate: Date.parse(this.endDateTarget.defaultValue),\n appendTo: modalContainer,\n onOpen: () => {\n if (this.startDatePicker.selectedDates[0]) {\n this.endDatePicker.set(\n \"minDate\",\n this.startDatePicker.selectedDates[0],\n );\n }\n },\n onChange: (selectedDates) => {\n if (selectedDates[0]) {\n endDate.value = formatToUTCDate(selectedDates[0]);\n\n this.handleSearchAndFilterChange();\n }\n },\n onClose: () => {\n // Handle if the user manually removed the date\n if (!this.endDatePicker.selectedDates[0]) {\n endDate.value = \"\";\n }\n },\n });\n };\n\n handleReset() {\n resetFormData(this.formTarget);\n // Ensure the form is submitted as a Turbo Stream\n this.formTarget.setAttribute(\"data-turbo\", \"true\");\n this.formTarget.setAttribute(\"data-turbo-stream\", \"true\");\n // Submit clear form to update results\n this.formTarget.dispatchEvent(\n new CustomEvent(\"submit\", {\n bubbles: true,\n }),\n );\n }\n\n handleSubmitEnd(event) {\n if (event.target === this.formTarget) {\n if (this.formTarget.dataset.clearfilters === \"true\") {\n this.handleFilterClear();\n this.formTarget.dataset.clearfilters = false;\n }\n }\n }\n\n handleUpdateEvents() {\n this.syncCheckboxes();\n }\n\n connect() {\n // NOTE: All actions on unfiltered data hit the new path which replaces the entire modal and disconnects/reconnects this controller\n this.syncObjectIds();\n this.syncCheckboxes();\n this.initDatePicker();\n\n if (this.reportNameField.value !== \"\") {\n this.reportNameTarget.value = this.reportNameField.value;\n }\n\n this.handleReset = this.handleReset.bind(this);\n this.handleSubmitEnd = this.handleSubmitEnd.bind(this);\n this.handleUpdateEvents = this.handleUpdateEvents.bind(this);\n\n if (this.hasFormTarget) {\n this.formTarget.addEventListener(\"reset\", this.handleReset);\n }\n }\n\n disconnect() {\n if (this.hasFormTarget) {\n this.formTarget.removeEventListener(\"reset\", this.handleReset);\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n connect() {\n const { context } = this.element.dataset;\n this.onFrameLoad(context);\n }\n\n onFrameLoad(context) {\n if (context === \"build\") {\n document.dispatchEvent(\n new CustomEvent(\"crossEventsTable:updated\", { bubbles: true }),\n );\n }\n\n if (context === \"update_events\") {\n document.dispatchEvent(\n new CustomEvent(\"crossEventsTable:updateEvents\", { bubbles: true }),\n );\n }\n\n if (context === \"new\") {\n document.dispatchEvent(\n new CustomEvent(\"crossEventsModal:opened\", { bubbles: true }),\n );\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { initAllFlatpickrMulti } from \"../../src/custom/DatetimeInit\";\n\nexport default class extends Controller {\n static targets = [\"dates\"];\n\n connect() {\n initAllFlatpickrMulti();\n }\n\n changePresetDates(event) {\n if (event.target.checked) {\n this.datesTarget.classList.remove(\"tw-hidden\");\n } else {\n this.datesTarget.classList.add(\"tw-hidden\");\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { initDatePickerInBlock } from \"../../src/custom/DatetimeInit\";\nimport { initAccordion } from \"../../src/custom/components/Accordion\";\n\nexport default class extends Controller {\n static targets = [\"expenseTypeName\"];\n\n connect = () => {\n initDatePickerInBlock(this.element);\n this.element.querySelectorAll('[data-toggle]').forEach((el) => {\n initAccordion(el);\n });\n };\n\n setExpenseTypeName = (e) => {\n e.stopPropagation();\n if (e.detail.field_name === \"expense_type\") {\n this.expenseTypeNameTarget.value = e.detail.name;\n }\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { isHidden } from \"../../src/custom/Utils\";\n\nexport default class extends Controller {\n static targets = [\"nameDisplayContainer\", \"nameDisplay\", \"nameField\"];\n toggleEditName = () => {\n if (isHidden(this.nameFieldTarget)) {\n this.nameFieldTarget.classList.remove(\"tw-hidden\");\n this.nameFieldTarget.focus();\n this.nameFieldTarget.setSelectionRange(\n this.nameFieldTarget.value.length,\n this.nameFieldTarget.value.length\n );\n this.nameDisplayContainerTarget.classList.add(\"tw-hidden\");\n } else {\n this.nameFieldTarget.classList.add(\"tw-hidden\");\n this.nameDisplayContainerTarget.classList.remove(\"tw-hidden\");\n }\n };\n\n setExpenseReportName = (e) => {\n if (e?.detail?.container_id === \"expense_report_third_party_id-container\") {\n this.nameFieldTarget.value = e.detail.name;\n this.nameDisplayTarget.innerText = e.detail.name;\n this.nameDisplayContainerTarget.classList.remove(\"tw-hidden\");\n this.nameFieldTarget.classList.add(\"tw-hidden\");\n }\n };\n\n scrollIntoView = (e) => {\n e.preventDefault();\n const target = document.getElementById(e.currentTarget.getAttribute(\"href\").slice(1));\n target.scrollIntoView({ behavior: \"smooth\" });\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { removeQuerystring } from \"../../src/custom/UrlParams\";\n\nexport default class extends Controller {\n changeAttendeeType(event) {\n const attendeeTypeId = event.currentTarget.value;\n\n const newFieldMappingButton = document.querySelector(\"#new_field_mapping\");\n const fieldMappingBaseUrl = removeQuerystring(newFieldMappingButton.href);\n newFieldMappingButton.href = `${fieldMappingBaseUrl}?concur_attendee_type_id=${attendeeTypeId}`;\n\n const defaultMappingsButton = document.querySelector(\n \"#default_mappings_button\",\n );\n const baseUrl = removeQuerystring(defaultMappingsButton.href);\n defaultMappingsButton.href = `${baseUrl}?concur_attendee_type_id=${attendeeTypeId}`;\n\n document.querySelectorAll(\".field-mapping-table\").forEach((table) => {\n if (table.dataset.attendeeTypeId === attendeeTypeId) {\n table.classList.remove(\"tw-hidden\");\n } else {\n table.classList.add(\"tw-hidden\");\n }\n });\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"attendeeSelector\", \"frame\"];\n\n changeAttendee = (event) => {\n const newUrl = event.target.value;\n this.frameTarget.src = newUrl;\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"body\"];\n\n connect = () => {\n const inviteBody = document.querySelector(\"#invite_body\");\n if (inviteBody) {\n this.bodyTarget.innerHTML = inviteBody.value.replace(\n /(\\r\\n|\\n|\\r)/gm,\n \"
\",\n );\n }\n\n const invitePasscode = document.querySelector(\"#invite_passcode\");\n if (invitePasscode && invitePasscode.checked) {\n const passcodeNotice = document.querySelector(\"#passcode_notice\");\n this.bodyTarget.innerHTML += `
${passcodeNotice?.innerHTML}`;\n }\n };\n}\n","// Purpose: To handle a select all / clear checkbox\n// This differs from multi_select_table in that this\n// is not intended for paginated situations\n\nimport { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"option\", \"allCheckbox\"];\n\n toggleAll = (e) => {\n if (this.allCheckboxTarget.checked) {\n this.optionTargets.forEach((option) => {\n option.checked = true;\n });\n } else {\n this.optionTargets.forEach((option) => {\n option.checked = false;\n });\n }\n }\n\n clearAll = (e) => {\n this.allCheckboxTarget.checked = false;\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { i18n } from \"../../src/custom/Internationalization\";\n\nexport default class extends Controller {\n static targets = [\"selected\", \"form\", \"selectedIds\", \"typeahead\", \"preselected\"];\n\n connect = () => {\n this.setSelectedText();\n this.setFilters();\n };\n\n setSelectedText = () => {\n if (this.hasSelectedTarget) {\n const selectedCount =\n this.selectedIdsTargets.length > 0\n ? this.selectedIdsTargets.length\n : this.getCounts().selected;\n\n if (selectedCount) {\n const { translation } = this.selectedTarget.dataset;\n this.selectedTarget.innerText = i18n.t(translation, {\n selected_count: selectedCount,\n });\n } else {\n this.selectedTarget.classList.add(\"tw-hidden\");\n }\n }\n };\n\n setFilters = () => {\n if (this.formTarget.dataset.filtersSet) {\n return;\n }\n\n const searchForm = document.querySelector(\"[data-filter-form]\");\n const selectedIds = this.getSelectedIds();\n\n selectedIds.forEach((id) => {\n this.addHiddenField(\"selected_ids[]\", id);\n });\n\n if (selectedIds.length > 0) {\n this.hideTypeahead();\n }\n\n if (searchForm) {\n const formData = new FormData(searchForm);\n formData.keys().forEach((key) => {\n if (formData.get(key)) {\n this.addHiddenField(key, formData.get(key));\n }\n });\n\n this.formTarget.dataset.filtersSet = \"true\";\n }\n };\n\n addHiddenField = (name, value) => {\n const input = document.createElement(\"input\");\n input.setAttribute(\"type\", \"hidden\");\n input.setAttribute(\"name\", name);\n input.setAttribute(\"value\", value);\n this.formTarget.append(input);\n };\n\n getSelectedIds = () => {\n const selectedItems = [];\n\n if (this.hasPreselectedTarget) {\n selectedItems.push(this.preselectedTarget.value);\n } else {\n const items = document.querySelectorAll(\".select_row > input\");\n items.forEach((el) => {\n if (el.checked) {\n selectedItems.push(el.dataset.recordId);\n }\n });\n }\n\n return selectedItems;\n };\n\n hideTypeahead = () => {\n if (this.hasTypeaheadTarget) {\n this.typeaheadTarget.classList.add(\"tw-hidden\");\n }\n };\n\n getCounts = () => {\n const items = document.querySelectorAll(\".select_row > input\");\n if (items.length === 0) {\n return { selected: null, all: null };\n }\n\n const selectedItems = this.getSelectedIds();\n\n const listing = document.querySelector(\"[data-multiselect-listing]\");\n const selectedAll = document.querySelector(\"#selected_all\");\n const totalCount = listing.dataset.recordCount;\n if (selectedAll.value === \"true\" && selectedItems.length === items.length) {\n return { selected: totalCount, all: totalCount };\n }\n return { selected: selectedItems.length, all: items.length };\n };\n\n formSubmitted = (event) => {\n if (event.detail.success) {\n this.dispatch(\"success\");\n }\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { i18n } from \"../../src/custom/Internationalization\";\n\nexport default class extends Controller {\n static targets = [\"notice\", \"selector\", \"all\", \"allPages\", \"pagination\"];\n\n connect() {\n const selectedAll = document.getElementById(\"selected_all\");\n if (selectedAll.value === \"true\") {\n this.selectAllEveryPage();\n }\n }\n\n toggle() {\n const allCheckboxCount = this.selectorTargets.length;\n const checkedCount = this.selectorTargets.filter(\n (checkbox) => checkbox.checked,\n ).length;\n\n this.clearPaginationParam();\n this.clearSelectedAll();\n\n if (allCheckboxCount === checkedCount) {\n this.allTarget.checked = true;\n } else {\n this.allTarget.checked = false;\n }\n\n this.setCheckedCount();\n }\n clearSelectedAll() {\n const selectedAll = document.getElementById(\"selected_all\");\n selectedAll.value = false;\n }\n\n selectAllOnPage() {\n this.clearPaginationParam();\n\n this.selectorTargets.forEach((checkbox) => {\n checkbox.checked = this.allTarget.checked;\n });\n\n this.clearSelectedAll();\n this.setCheckedCount();\n }\n\n selectAllEveryPage() {\n const selectedAll = document.getElementById(\"selected_all\");\n selectedAll.value = true;\n this.allPagesTarget.classList.add(\"tw-hidden\");\n\n this.allTarget.checked = true;\n this.selectorTargets.forEach((checkbox) => {\n checkbox.checked = true;\n });\n\n if (this.hasNoticeTarget) {\n this.noticeTarget.innerText = i18n.t(\"notices.all_pages_selected\", {\n count: this.allPagesTarget.dataset.totalRecordCount,\n });\n }\n this.setPaginationParam();\n }\n\n setCheckedCount() {\n const allCheckboxCount = this.selectorTargets.length;\n const checkedCount = this.selectorTargets.filter(\n (checkbox) => checkbox.checked,\n ).length;\n\n if (this.hasNoticeTarget) {\n if (checkedCount > 0) {\n this.noticeTarget.innerText = i18n.t(\"registrations.notices.selected\", {\n count: checkedCount,\n });\n } else {\n this.noticeTarget.innerText = \"\";\n }\n }\n\n const totalRecordCount = parseInt(\n this.allPagesTarget.dataset.totalRecordCount,\n 10,\n );\n\n if (\n allCheckboxCount === checkedCount &&\n totalRecordCount > allCheckboxCount\n ) {\n this.allPagesTarget.classList.remove(\"tw-hidden\");\n } else {\n this.allPagesTarget.classList.add(\"tw-hidden\");\n }\n }\n\n setPaginationParam() {\n if (this.hasPaginationTarget) {\n this.paginationTarget.querySelectorAll(\"a\").forEach((a) => {\n const url = new URL(a.href);\n url.searchParams.set(\"selected_all\", \"true\");\n a.href = url.toString();\n });\n }\n }\n\n clearPaginationParam() {\n if (this.hasPaginationTarget) {\n this.paginationTarget.querySelectorAll(\"a\").forEach((a) => {\n const url = new URL(a.href);\n url.searchParams.delete(\"selected_all\");\n a.href = url.toString();\n });\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { get } from \"@rails/request.js\";\n\nexport default class extends Controller {\n static targets = [\"organizations\"];\n\n updateEventTypes = (e) => {\n const organizationId = this.organizationsTarget?.value;\n if (e?.detail.field_name == \"organization_id\" && organizationId) {\n get(`/admin/organizations/${organizationId}/event_types`, { responseKind: \"turbo-stream\" });\n }\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"trigger\", \"dropdown\"];\n\n connect() {\n\n };\n\n changePreviewLink = (e) => {\n if (this.dropdownTarget.value !== \"\") {\n this.triggerTarget.classList.remove(\"tw-hidden\");\n this.triggerTarget.href = `/e/${this.dropdownTarget.value}`;\n } else {\n this.triggerTarget.classList.add(\"tw-hidden\");\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static values = {\n id: Number,\n expenseReportId: String,\n amount: Number,\n errors: Array,\n }\n\n connect() {\n if (this.amountValue == 100) {\n this.setSuccess()\n } else if (this.errorsValue.length > 0) {\n this.setError()\n }\n }\n\n setSuccess() {\n this.dispatch(\"success\", { detail: { id: this.idValue, expenseReportId: this.expenseReportIdValue }});\n }\n\n setError() {\n this.dispatch(\"error\", { detail: { id: this.idValue, errors: this.errorsValue }});\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"saving\", \"success\", \"error\", \"errorMessages\"];\n static values = {\n expenseIds: Array,\n }\n connect() {\n this.expenseProgressMapping = {};\n this.expenseIdsValue.forEach((id) => {\n this.expenseProgressMapping[id] = false;\n });\n };\n\n setSuccess(e) {\n const id = e.detail.id;\n\n this.expenseProgressMapping[id] = true;\n\n let allExpensesFinished = true;\n for (const [_id, finished] of Object.entries(this.expenseProgressMapping)) {\n if (!finished) {\n allExpensesFinished = false;\n }\n }\n\n if (allExpensesFinished) {\n this.showExpenseLink(e);\n this.showSuccess();\n }\n }\n\n showExpenseLink(e) {\n const expenseReportId = e.detail.expenseReportId;\n const link = document.getElementById(\"expense_link\");\n if (expenseReportId && link) {\n link.href += expenseReportId;\n link.classList.remove(\"tw-hidden\");\n }\n };\n\n showSuccess() {\n this.successTarget.classList.remove(\"tw-hidden\");\n this.savingTarget.classList.add(\"tw-hidden\");\n };\n\n showError(e) {\n this.errorTarget.classList.remove(\"tw-hidden\");\n this.savingTarget.classList.add(\"tw-hidden\");\n if (this.errorMessagesTarget) {\n const messages = e.detail.errors;\n if (messages !== null && messages.length > 0) {\n messages.forEach((message) => {\n const errorItem = document.createElement(\"li\");\n errorItem.appendChild(document.createTextNode(message));\n this.errorMessagesTarget.appendChild(errorItem);\n });\n }\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport toastr from \"toastr\";\nimport { i18n } from \"../../src/custom/Internationalization\";\n\nexport default class extends Controller {\n static targets = [\n \"mandatory\",\n \"display\",\n \"enable\"\n ];\n\n static values = {\n toggleWarning: String\n }\n\n toggleMandatory = () => {\n if (this.mandatoryTarget.checked) {\n this.displayTarget.checked = true;\n this.enableTarget.checked = true;\n } else {\n this.showWarning();\n }\n }\n\n toggleDisplay = () => {\n if (this.displayTarget.checked) {\n this.enableTarget.checked = true;\n } else {\n this.mandatoryTarget.checked = false;\n this.showWarning();\n }\n }\n\n toggleEnable = () => {\n if (!this.enableTarget.checked) {\n this.mandatoryTarget.checked = false;\n this.displayTarget.checked = false;\n this.showWarning();\n }\n }\n\n showWarning = () => {\n if (this.hasToggleWarningValue) {\n toastr.warning(\n i18n.t(this.toggleWarningValue),\n '',\n {\n timeOut: 0,\n iconClass: 'toast-warning',\n },\n );\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { i18n } from \"../../src/custom/Internationalization\";\n\nexport default class extends Controller {\n static targets = [\n \"inviteType\",\n \"private\",\n \"submitButton\",\n \"linkMessage\",\n \"preview\",\n ];\n\n connect = () => {};\n\n inviteTypeChanged = () => {\n switch (this.inviteTypeTarget.value) {\n case \"website\":\n this.submitButtonTarget.value = i18n.t(\n \"registration.invite.actions.invite_to_website\",\n );\n this.linkMessageTarget.innerText = i18n.t(\n \"registration.invite.content.event_website_link\",\n );\n this.privateTarget.classList.remove(\"tw-hidden\");\n break;\n case \"event_registration\":\n this.submitButtonTarget.value = i18n.t(\n \"registration.invite.actions.invite_to_registration\",\n );\n this.linkMessageTarget.innerText = i18n.t(\n \"registration.invite.content.event_website_link\",\n );\n this.privateTarget.classList.remove(\"tw-hidden\");\n break;\n case \"app\":\n this.submitButtonTarget.value = i18n.t(\n \"registration.invite.actions.invite_to_app\",\n );\n this.linkMessageTarget.innerText = i18n.t(\n \"registration.invite.content.event_app_link\",\n );\n this.privateTarget.classList.add(\"tw-hidden\");\n break;\n default:\n this.submitButtonTarget.value = i18n.t(\n \"registration.invite.actions.invite_to_website\",\n );\n this.linkMessageTarget.innerText = i18n.t(\n \"registration.invite.content.event_website_link\",\n );\n this.privateTarget.classList.remove(\"tw-hidden\");\n break;\n }\n\n const previewUrl = new URL(this.previewTarget.href);\n previewUrl.searchParams.set(\"invite_type\", this.inviteTypeTarget.value);\n this.previewTarget.href = previewUrl.toString();\n };\n}\n","import { Controller } from \"@hotwired/stimulus\";\nimport { showModal } from \"../../src/custom/Modal\";\n\nexport default class extends Controller {\n showFilter = () => {\n showModal('.filters.modal');\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"filterForm\"];\n\n show() {\n this.dispatch(\"show\");\n }\n\n removeFilter(event) {\n if (event.currentTarget.dataset.filterSelector) {\n const elements = this.element.querySelectorAll(\n event.currentTarget.dataset.filterSelector,\n );\n elements.forEach((el) => {\n if (el.tagName === \"SELECT\") {\n el.value = \"\";\n } else if (el.tagName === \"INPUT\") {\n if (el.type === \"checkbox\" || el.type === \"radio\") {\n el.checked = false;\n } else {\n el.value = \"\";\n }\n }\n });\n if (elements.length > 0) {\n this.filterFormTarget.submit();\n }\n }\n }\n}\n","import Sortable from 'sortablejs';\nimport axios from 'axios';\n\nexport const initSortable = (\n listId,\n item,\n field,\n handler,\n callback,\n onstart,\n) => {\n const container = document.getElementById(listId);\n const setOrder = () => {\n container.querySelectorAll(item).forEach((el, ind) => {\n if (field !== undefined) {\n const fieldEl = el.querySelector(field);\n if (fieldEl) { fieldEl.value = ind + 1; }\n }\n });\n };\n\n const handleStart = () => {\n if (onstart && typeof (onstart) === 'function') {\n onstart();\n }\n };\n\n const handleFinish = (evt) => {\n setOrder();\n if (callback && typeof (callback) === 'function') {\n callback(evt);\n }\n };\n\n const sortable = new Sortable(container, {\n draggable: item,\n handle: handler,\n onStart: handleStart,\n onEnd: handleFinish,\n dataIdAttr: 'data-order',\n animation: 150,\n easing: 'cubic-bezier(1, 0, 0, 1)',\n ghostClass: 'gr-sortable_item_placeholder',\n });\n\n setOrder();\n return sortable;\n};\n\nwindow.initSortable = initSortable;\n\nexport const updateSortOrder = (evt) => {\n if (evt.item.dataset.orderUrl) {\n axios.put(evt.item.dataset.orderUrl, {\n position: evt.newDraggableIndex,\n });\n }\n};\nwindow.updateSortOrder = updateSortOrder;\n","import { Controller } from \"@hotwired/stimulus\";\nimport { initSortable, updateSortOrder } from '../../src/plugins/SortableJS';\n\n// This class should probably be a full reimplementation of SortableJS\n// but it's used all over the place so for now just wrapping it.\nexport default class extends Controller {\n static values = {\n id: String\n }\n\n connect = () => {\n const hasSortableItems = document.querySelectorAll('.js-sort-item').length > 0;\n if (hasSortableItems) {\n initSortable(\n this.idValue,\n '.js-sort-item',\n '.js-sort-item__position',\n '.js-sort-item',\n updateSortOrder,\n );\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n updateTotal() {\n let total = 0.0;\n\n this.element.querySelectorAll('input[type=\"checkbox\"]:checked').forEach((checkbox) => {\n const recordId = checkbox.dataset.recordId;\n const item = this.element.querySelector(`div[data-record-id=\"${recordId}\"]`);\n\n if (item) {\n total += parseFloat(item.dataset.amount) || 0;\n } else {\n console.log(`[TotalAmountController] Item div with record_id ${recordId} not found.`);\n }\n });\n\n const totalAmountDiv = document.getElementById(\"total-amount\");\n\n if (totalAmountDiv) {\n totalAmountDiv.textContent = `$${total.toFixed(2)}`;\n } else {\n console.log(\"[TotalAmountController] Total amount div not found.\");\n }\n }\n}\n","import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"thresholdValue\", \"slider\", \"label\"];\n\n connect() {\n // Ensure match threshold updates correctly\n this.thresholdValueTarget?.addEventListener(\"input\", this.updateThreshold.bind(this));\n\n // Attach event listeners to all sliders\n this.sliderTargets.forEach(slider => {\n slider.addEventListener(\"input\", this.updateGroupWeights.bind(this));\n });\n }\n\n updateThreshold(event) {\n this.updateDisplayValue(\"threshold_value\", event.target.value);\n }\n\n updateGroupWeights(event) {\n const changedSlider = event.target;\n const group = changedSlider.dataset.group;\n const targetId = changedSlider.dataset.labelTarget; // Updated from `data-target`\n \n this.updateDisplayValue(targetId, changedSlider.value);\n this.adjustGroupWeights(group, changedSlider);\n }\n\n updateDisplayValue(targetId, value) {\n const displayElement = this.labelTargets.find(el => el.id === targetId);\n if (displayElement) {\n displayElement.textContent = parseFloat(value).toFixed(2);\n }\n }\n\n adjustGroupWeights(group, changedSlider) {\n const groupSliders = this.sliderTargets.filter(slider => slider.dataset.group === group);\n const changedValue = parseFloat(changedSlider.value);\n const otherSliders = groupSliders.filter(s => s !== changedSlider);\n\n const remaining = 1.0 - changedValue;\n const totalOther = otherSliders.reduce((sum, s) => sum + parseFloat(s.value), 0);\n\n otherSliders.forEach(slider => {\n const currentVal = parseFloat(slider.value);\n const newValue = totalOther > 0 ? (currentVal / totalOther) * remaining : remaining / otherSliders.length;\n\n slider.value = Math.max(0, Math.min(1, newValue.toFixed(4)));\n this.updateDisplayValue(slider.dataset.labelTarget, slider.value);\n });\n\n const total = groupSliders.reduce((sum, s) => sum + parseFloat(s.value), 0);\n const error = 1.0 - total;\n\n if (Math.abs(error) > 0.00001) {\n const adjustableSlider = otherSliders.find(s => parseFloat(s.value) + error >= 0 && parseFloat(s.value) + error <= 1)\n || changedSlider;\n\n adjustableSlider.value = (parseFloat(adjustableSlider.value) + error).toFixed(4);\n this.updateDisplayValue(adjustableSlider.dataset.labelTarget, adjustableSlider.value);\n }\n }\n}\n","// This file is auto-generated by ./bin/rails stimulus:manifest:update\n// Run that command whenever you add a new controller or create them with\n// ./bin/rails generate stimulus controllerName\n\nimport { application } from \"./application\";\n\nimport AccountPickerController from \"./admin/account_picker_controller\";\nimport AddSubquestionController from \"./admin/add_subquestion_controller\";\nimport AttendeeTypeSelectorController from \"./admin/attendee_type_selector_controller\";\nimport ChartController from \"./admin/chart_controller\";\nimport CrossEventReportsController from \"./admin/cross_event_reports_controller\";\nimport CrossEventReportsModalController from \"./admin/cross_event_reports_modal_controller\";\nimport CrossEventReportsTurboFrameController from \"./admin/cross_event_reports_turbo_frame_controller\";\nimport EventBookingPagesSearchDatesController from \"./admin/event_booking_pages_search_dates_controller\";\nimport ExpenseController from \"./admin/expense_controller\";\nimport ExpenseReportController from \"./admin/expense_report_controller\";\nimport FieldMappingController from \"./admin/field_mapping_controller\";\nimport InternalMessagesController from \"./admin/internal_messages_controller\";\nimport InvitePreviewController from \"./admin/invite_preview_controller\";\nimport MultiCheckboxController from \"./admin/multi_checkbox_controller\";\nimport MultiSelectActionsController from \"./admin/multi_select_actions_controller\";\nimport MultiSelectTableController from \"./admin/multi_select_table_controller\";\nimport OrgEventTypeController from \"./admin/org_event_type_controller\";\nimport PreviewTemplateSelectionController from \"./admin/preview_template_selection_controller\";\nimport ProgressController from \"./admin/progress_controller\";\nimport PushExpenseReportController from \"./admin/push_expense_report_controller\";\nimport RegistrationFieldController from \"./admin/registration_field_controller\";\nimport RegistrationInvite from \"./admin/registration_invite_controller\";\nimport RegistrationResponsesController from \"./admin/registration_responses_controller\";\nimport SearchAndFilterController from \"./admin/search_and_filter_controller\";\nimport SortableTableController from \"./admin/sortable_table_controller\";\nimport TotalAmountController from \"./admin/total_amount_controller\";\nimport MatcherSlidersController from \"./matcher_sliders_controller\";\n\napplication.register(\"account-picker\", AccountPickerController);\napplication.register(\"add-subquestion\", AddSubquestionController);\napplication.register(\"attendee-type-selector\", AttendeeTypeSelectorController);\napplication.register(\"chart\", ChartController);\napplication.register(\"cross-event-reports\", CrossEventReportsController);\napplication.register(\n \"cross-event-reports-modal\",\n CrossEventReportsModalController,\n);\napplication.register(\n \"cross-event-reports-turbo-frame\",\n CrossEventReportsTurboFrameController,\n);\napplication.register(\n \"ebp-search-dates\",\n EventBookingPagesSearchDatesController,\n);\napplication.register(\"expense\", ExpenseController);\napplication.register(\"expense-report\", ExpenseReportController);\napplication.register(\"field-mapping\", FieldMappingController);\napplication.register(\"internal-messages\", InternalMessagesController);\napplication.register(\"invite-preview\", InvitePreviewController);\napplication.register(\"multi-checkbox\", MultiCheckboxController);\napplication.register(\"multi-select-actions\", MultiSelectActionsController);\napplication.register(\"multi-select-table\", MultiSelectTableController);\napplication.register(\"org-event-type\", OrgEventTypeController);\napplication.register(\n \"preview-template-selection\",\n PreviewTemplateSelectionController,\n);\napplication.register(\"progress\", ProgressController);\napplication.register(\"push-expense-report\", PushExpenseReportController);\napplication.register(\"registration-field\", RegistrationFieldController);\napplication.register(\"registration-responses\", RegistrationResponsesController);\napplication.register(\"registration-invite\", RegistrationInvite);\napplication.register(\"search-and-filter\", SearchAndFilterController);\napplication.register(\"sortable-table\", SortableTableController);\napplication.register(\"total-amount\", TotalAmountController);\napplication.register(\"matcher-sliders\", MatcherSlidersController);\n","import '@claviska/jquery-minicolors';\nimport '@claviska/jquery-minicolors/jquery.minicolors.css';\nimport $ from 'jquery';\n\nconst ColorPicker = {\n init() {\n $('input[type=text].minicolors').each((_, el) => {\n $(el).minicolors({\n theme: 'semanticui',\n });\n });\n },\n};\n\ndocument.addEventListener('colorpicker:init', () => {\n ColorPicker.init();\n});\n\nexport default ColorPicker;\n","import { getFilestackUrlForFile, previewFilestackFile } from './Filestack';\n\nconst fileObjectFromUrlName = (url, name) => ({\n url,\n filename: name || '',\n});\n\nconst bindFilestackPreview = () => {\n document.querySelectorAll('.filestack-preview').forEach((el) => {\n el.addEventListener('click', (e) => {\n e.preventDefault();\n previewFilestackFile(e.target);\n });\n });\n};\n\nconst bindFilestackRemove = (filestackButton) => {\n document.querySelectorAll('.filestack-remove').forEach((el) => {\n el.addEventListener('click', (e) => {\n e.preventDefault();\n\n if (e.currentTarget.dataset.fieldSelector == null\n || document.querySelector(e.currentTarget.dataset.fieldSelector) == null) {\n return;\n }\n\n const inputField = document.querySelector(e.currentTarget.dataset.fieldSelector);\n const nameField = document.querySelector(e.currentTarget.dataset.nameSelector);\n\n inputField.value = null;\n if (nameField) {\n nameField.value = null;\n }\n\n // eslint-disable-next-line no-use-before-define\n renderFileDetails(filestackButton);\n });\n });\n};\n\nfunction renderFileDetails(el) {\n if (el.dataset.fileDetailsContainer == null) {\n return;\n }\n\n const detailsContainer = document.querySelector(el.dataset.fileDetailsContainer);\n if (detailsContainer == null) {\n return;\n }\n\n if (el.dataset.fieldSelector == null\n || document.querySelector(el.dataset.fieldSelector) == null) {\n return;\n }\n\n let nameField = null;\n if (el.dataset.nameSelector) {\n nameField = document.querySelector(el.dataset.nameSelector);\n }\n\n const inputField = document.querySelector(el.dataset.fieldSelector);\n const url = inputField.value;\n\n const file = fileObjectFromUrlName(url, nameField?.value);\n\n detailsContainer.innerHTML = '';\n const template = document.getElementById('filestack-attachment-detail-template');\n const clone = template.content.firstElementChild.cloneNode(true);\n\n const filename = clone.querySelector('.filestack-filename');\n filename.innerHTML = file.filename;\n\n const downloadLink = clone.querySelector('.filestack-download');\n downloadLink.href = getFilestackUrlForFile(file);\n\n const previewLink = clone.querySelector('.filestack-preview');\n previewLink.href = getFilestackUrlForFile(file);\n\n const removeLink = clone.querySelector('.filestack-remove');\n removeLink.dataset.fieldSelector = el.dataset.fieldSelector;\n\n detailsContainer.appendChild(clone);\n\n if (url.length > 0) {\n detailsContainer.style.display = null;\n } else {\n detailsContainer.style.display = 'none';\n }\n\n bindFilestackPreview();\n bindFilestackRemove(el);\n}\n\nconst bindFilestackSingle = (el) => {\n el.addEventListener('click', (e) => {\n if (e.target.dataset.fieldSelector == null\n || document.querySelector(e.target.dataset.fieldSelector) == null) {\n return;\n }\n\n const options = JSON.parse(e.target.dataset.options || '{}');\n options.maxFiles = 1;\n\n if (options.transformations != null && options.transformations.crop != null) {\n delete options.transformations;\n }\n\n options.onUploadDone = (data) => {\n if (data.filesFailed.length > 0) {\n return;\n }\n\n if (data.filesUploaded.length > 1) {\n return;\n }\n\n const inputField = document.querySelector(e.target.dataset.fieldSelector);\n const nameField = document.querySelector(e.target.dataset.nameSelector);\n\n if (data.filesUploaded.length > 0) {\n const uploadedFile = data.filesUploaded[0];\n inputField.value = uploadedFile.url;\n if (nameField) {\n nameField.value = uploadedFile.filename;\n }\n }\n renderFileDetails(e.target);\n };\n\n const defaults = {\n transformationsUI: false,\n fromSources: ['local_file_system', 'imagesearch'],\n };\n const updatedOptions = { ...defaults, ...options };\n\n window.fpGroupize.picker(updatedOptions).open();\n });\n};\n\nconst init = () => {\n if (window.fpGroupize == null) {\n return;\n }\n\n document.querySelectorAll('[data-filestack]').forEach((el) => {\n renderFileDetails(el);\n bindFilestackSingle(el);\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('filestack:rebind', init);\n","/* eslint-disable func-names */\nimport $ from 'jquery';\nimport { getCSRFTokenValue } from '../custom/CsrfToken';\nimport { getAddressObject } from './GoogleAddressParser';\nimport { initMap } from './Gmap';\n\nconst fillInLatLng = (model, lat, lng, locationName) => {\n const prefix = model ? `${model}_` : '';\n\n document.getElementById(`${prefix}latitude`).value = lat;\n document.getElementById(`${prefix}longitude`).value = lng;\n\n const locationNameField = document.getElementById(`${prefix}location_name`);\n if (locationNameField) {\n locationNameField.value = locationName;\n }\n\n const timeZoneField = document.getElementById(`${prefix}time_zone`);\n if (timeZoneField) {\n $.ajax({\n type: 'GET',\n url: '/api/timezones/show',\n data: {\n lat,\n lng,\n },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success(response) {\n if (timeZoneField.nodeName === 'SELECT') {\n $(timeZoneField).dropdown('set selected', response.time_zone);\n } else {\n timeZoneField.value = response.time_zone;\n }\n },\n });\n }\n};\n\nconst fillInAddress = (model, addressComponents) => {\n const address = getAddressObject(addressComponents);\n const prefix = model ? `${model}_` : '';\n\n document.getElementById(`${prefix}city`).value = address?.city || '';\n document.getElementById(`${prefix}address_one`).value = address?.addressLine1 || '';\n document.getElementById(`${prefix}address_two`).value = address?.addressLine2 || '';\n document.getElementById(`${prefix}postal_code`).value = address?.postalCode || '';\n document.getElementById(`${prefix}city`).value = address?.city || '';\n const countryField = document.getElementById(`${prefix}country`);\n if (countryField.tagName === 'SELECT') {\n $(countryField).dropdown('set selected', address.country);\n countryField.dataset.presetState = address.stateOrProvince;\n document.dispatchEvent(new Event(\"state-selector:updateStates\"));\n } else {\n countryField.value = address.country;\n }\n if (document.getElementById(`${prefix}state`).tagName !== 'SELECT') {\n document.getElementById(`${prefix}state`).value = address?.stateOrProvince || '';\n }\n};\n\nconst registerGooglePlacesAutocomplete = ($el, model) => {\n let gpAutocomplete;\n if (typeof (window.google) !== 'undefined') {\n gpAutocomplete = new window.google.maps.places.Autocomplete($el[0]);\n gpAutocomplete.addListener('place_changed', () => {\n const place = gpAutocomplete.getPlace();\n\n if (place && place.geometry) {\n const lat = place.geometry.location.lat();\n const lng = place.geometry.location.lng();\n const locationName = place.formatted_address || $(place.adr_address).text();\n fillInLatLng(model, lat, lng, locationName);\n if ($el[0].hasAttribute('data-location-map-id')) {\n const mapEl = document.getElementById($el[0].dataset.locationMapId);\n if (mapEl) {\n mapEl.dataset.lat = lat;\n mapEl.dataset.lng = lng;\n mapEl.title = locationName;\n initMap(mapEl.id);\n }\n }\n }\n\n if ($el[0].hasAttribute('data-location-set-address')) {\n fillInAddress(model, place.address_components);\n }\n $el.trigger('blur');\n });\n $el.on('blur', () => {\n $el.trigger('change');\n });\n $el.parents('form').on('submit', () => {\n $el.removeAttr('autocomplete');\n return true;\n });\n }\n};\n\nexport const initLocationAutocomplete = (model) => {\n if (typeof window.google === 'undefined') return;\n\n $('.location_field').each((ind, el) => {\n let displayModel = model;\n if (el.dataset.locationModel) {\n displayModel = el.dataset.locationModel;\n }\n if (el.dataset.locationMapId) {\n initMap(el.dataset.locationMapId);\n }\n registerGooglePlacesAutocomplete($(el), displayModel);\n });\n};\n\ndocument.addEventListener('locationautocomplete:init', (e) => {\n initLocationAutocomplete(e?.detail?.model);\n});\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('.location_field')) {\n initLocationAutocomplete();\n }\n});\n\n// Google Maps requires a global callback function\nwindow.locationCallback = initLocationAutocomplete;\n","import { getFilestackUrlForFile, defaultFilestackOptions } from './Filestack';\n\nexport default class QuillFilestackUploader {\n constructor(quill, options) {\n this.quill = quill;\n this.options = options;\n this.range = null;\n\n if (typeof this.options.filestack === 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\n '[Missing config] filestack client must be passed to image uploader',\n );\n }\n\n const defaults = defaultFilestackOptions();\n\n this.filestack = options.filestack;\n this.picker = this.filestack.picker({\n transformationsUI: false,\n fromSources: this.options.fromSources || defaults.fromSources,\n maxFiles: 1,\n uploadInBackground: false,\n accept: this.options.accept || defaults.accept,\n onUploadDone: (res) => {\n const file = res.filesUploaded[0];\n this.insertToEditor(file);\n },\n });\n\n const toolbar = this.quill.getModule('toolbar');\n toolbar.addHandler('image', this.selectImage.bind(this));\n\n this.handleDrop = this.handleDrop.bind(this);\n this.handlePaste = this.handlePaste.bind(this);\n\n this.quill.root.addEventListener('drop', this.handleDrop, false);\n this.quill.root.addEventListener('paste', this.handlePaste, false);\n }\n\n selectImage() {\n this.range = this.quill.getSelection();\n this.picker.open();\n }\n\n handleDrop(evt) {\n evt.stopPropagation();\n evt.preventDefault();\n if (\n evt.dataTransfer\n && evt.dataTransfer.files\n && evt.dataTransfer.files.length\n ) {\n if (document.caretRangeFromPoint) {\n const selection = document.getSelection();\n const range = document.caretRangeFromPoint(evt.clientX, evt.clientY);\n if (selection && range) {\n selection.setBaseAndExtent(\n range.startContainer,\n range.startOffset,\n range.startContainer,\n range.startOffset,\n );\n }\n } else {\n const selection = document.getSelection();\n const range = document.caretPositionFromPoint(evt.clientX, evt.clientY);\n if (selection && range) {\n selection.setBaseAndExtent(\n range.offsetNode,\n range.offset,\n range.offsetNode,\n range.offset,\n );\n }\n }\n\n this.range = this.quill.getSelection();\n const file = evt.dataTransfer.files[0];\n\n setTimeout(() => {\n this.range = this.quill.getSelection();\n this.uploadToFilestack(file)\n .then((result) => {\n this.insertToEditor(result);\n })\n .catch((err) => {\n window.Sentry.captureException(err);\n });\n }, 0);\n }\n }\n\n handlePaste(evt) {\n const clipboard = evt.clipboardData || window.clipboardData;\n\n if (clipboard && (clipboard.items || clipboard.files)) {\n const items = clipboard.items || clipboard.files;\n const IMAGE_MIME_REGEX = /^image\\/(gif|jpe?g|a?png|svg|webp|bmp|vnd\\.microsoft\\.icon)/i;\n\n for (let i = 0; i < items.length; i += 1) {\n if (IMAGE_MIME_REGEX.test(items[i].type)) {\n const file = items[i].getAsFile ? items[i].getAsFile() : items[i];\n\n if (file) {\n this.uploadToFilestack(file)\n .then((result) => {\n this.range = this.quill.getSelection();\n if (!this.range) {\n setTimeout(() => this.insertToEditor(result), 0);\n }\n })\n .catch((err) => {\n window.Sentry.captureException(err);\n });\n }\n }\n }\n }\n }\n\n uploadToFilestack(file) {\n if (!file.type.match(/^image\\/(gif|jpe?g|a?png|svg|webp|bmp|vnd\\.microsoft\\.icon)/i)) {\n return Promise.resolve();\n }\n return this.filestack.upload(file);\n }\n\n insertToEditor(file) {\n const { range } = this;\n this.quill.insertEmbed(range.index, 'image', `${getFilestackUrlForFile(file)}`);\n range.index += 1;\n this.quill.setSelection(range.index, 'api');\n }\n}\n\nwindow.QuillFilestackUploader = QuillFilestackUploader;\n","import normalizeUrl from \"normalize-url\";\nimport Quill from \"quill\";\nimport QuillFilestackUploader from \"./QuillFilestackUploader\";\nimport { i18n } from \"../custom/Internationalization\";\nimport { te } from \"date-fns/locale\";\nimport { update } from \"lodash\";\n\nexport const initWysiwygEditor = (el, ph = null) => {\n if (el.classList.contains(\"activated\")) {\n return;\n }\n el.classList.add(\"activated\");\n\n const placeholder =\n ph || el.dataset.placeholder || i18n.t(\"placeholders.type_here\");\n\n const quill = new Quill(`#${el.id}`, {\n modules: {\n toolbar: `#toolbar-${el.id}`,\n quillFilestackUploader: {\n filestack: window.fpGroupize,\n },\n },\n placeholder,\n theme: \"snow\",\n });\n\n const editor = quill.container.querySelector(\".ql-editor\");\n if (editor && el.dataset.themeClass) {\n editor.classList.add(el.dataset.themeClass);\n }\n\n const colorToggle =\n quill.container.parentElement.querySelector(\".ql_editor__bg\");\n if (colorToggle) {\n colorToggle.addEventListener(\"change\", (e) => {\n e.preventDefault();\n quill.container.classList.toggle(\"dark_bg\");\n });\n }\n\n const setHiddenFieldText = () => {\n const parent = quill.container.parentElement;\n const field = parent.querySelector(\"input[type=hidden]\");\n if (field) {\n field.value = quill.getSemanticHTML();\n }\n };\n\n const updateLimit = () => {\n const limit = quill.container.dataset.limit || false;\n\n if (limit) {\n const textLength = quill.getLength() - 1;\n const limitText = document.querySelector(\n `#limit_${quill.container.id} span`,\n );\n\n limitText.innerText = limit - textLength;\n\n if (textLength > limit) {\n quill.deleteText(limit, textLength);\n }\n }\n };\n\n quill.on(\"text-change\", () => {\n updateLimit();\n setHiddenFieldText();\n });\n\n updateLimit();\n setHiddenFieldText();\n};\n\nexport const initEditors = () => {\n document.querySelectorAll(\".ql_editor\").forEach((el) => {\n initWysiwygEditor(el);\n });\n};\n\nconst setupLinkSettings = () => {\n const Link = Quill.import(\"formats/link\");\n Link.sanitize = (url) => {\n const lowerUrl = url.toLowerCase();\n\n const mailLinkPattern = /^(mailto:)?(.+)@+(.+)/g;\n if (mailLinkPattern.test(lowerUrl)) {\n if (!lowerUrl.startsWith(\"mailto:\")) {\n return `mailto:${url}`;\n }\n return url;\n }\n\n return normalizeUrl(url, {\n defaultProtocol: \"https:\",\n removeTrailingSlash: false,\n stripWWW: false,\n });\n };\n};\n\nconst setupFontSettings = () => {\n const Font = Quill.import(\"formats/font\");\n Font.whitelist = [\n \"Open Sans\",\n \"proximanova\",\n \"sans-serif\",\n \"serif\",\n \"monospace\",\n ];\n Quill.register(Font, true);\n};\n\nconst setImageUploaderSettings = () => {\n Quill.register(\"modules/quillFilestackUploader\", QuillFilestackUploader);\n};\n\nconst init = () => {\n setupLinkSettings();\n setupFontSettings();\n setImageUploaderSettings();\n initEditors();\n};\n\ndocument.addEventListener(\"DOMContentLoaded\", init);\ndocument.addEventListener(\"quill:rebind\", initEditors);\n","import Swiper from 'swiper/swiper-bundle.esm';\n\nconst defaultOptions = {\n direction: 'horizontal',\n loop: true,\n nextButton: '.swiper-button-next',\n prevButton: '.swiper-button-prev',\n pagination: {\n el: '.swiper-pagination',\n type: 'bullets',\n },\n};\n\nexport const initSwiper = (selector, options = defaultOptions) => new Swiper(selector, options);\n\ndocument.addEventListener('swiper:init', (e) => {\n initSwiper(e?.detail?.selector, e?.detail?.options);\n});\n","import $ from 'jquery';\n\nconst init = (item) => {\n $(item).each((_, el) => {\n const $item = $(el);\n\n $item.off('click').on('click', (e) => {\n const index = $(e.currentTarget).data('scrollto');\n const $containerPosition = $(`#${index}`).position();\n\n if ($containerPosition) {\n window.scrollTo({\n top: $containerPosition.top,\n behavior: 'smooth',\n });\n }\n });\n });\n};\n\ndocument.addEventListener('listscrollto:init', (e) => {\n init(e?.detail?.selector);\n});\n","import $ from 'jquery';\n\nexport const initTableShadow = (id) => {\n const setTableShadow = (tId) => {\n const tableView = document.getElementById(tId);\n const tableElement = $(`#${tId}`);\n if (tableView !== null) {\n tableElement.parent()\n .find('.gr-table__item.left')\n .toggleClass('scrolledLeft', tableView.scrollLeft > 10);\n tableElement.parent()\n .find('.gr-table__item.right')\n .toggleClass('scrolledRight', tableView.scrollWidth - tableView.clientWidth - tableView.scrollLeft > 10);\n }\n };\n\n $(`#${id}`).on('scroll', () => {\n setTableShadow(id);\n });\n\n setTableShadow(id);\n};\nwindow.initTableShadow = initTableShadow;\n\nconst init = () => {\n document.querySelectorAll('.table-shadow').forEach((table) => {\n initTableShadow(table.id);\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import { initializeSemanticUI } from \"../plugins/SemanticUI\";\n\nconst init = () => {\n if (document.querySelector(\"[data-password-change]\")) {\n const passInput = document.getElementById(\"gr_password\");\n const listMinLength = document.getElementById(\"min_length\");\n const listHasUppercase = document.getElementById(\"has_uppercase\");\n const listHasLowercase = document.getElementById(\"has_lowercase\");\n const listHasNumber = document.getElementById(\"has_number\");\n const listHasSymbol = document.getElementById(\"has_symbol\");\n\n passInput.oninput = () => {\n const passValue = passInput.value;\n listMinLength.className = passValue.length >= 12 ? \"success\" : \"\";\n listHasNumber.className = passValue.match(/\\d/g) ? \"success\" : \"\";\n listHasUppercase.className = passValue.match(/[A-Z]/g) ? \"success\" : \"\";\n listHasLowercase.className = passValue.match(/[a-z]/g) ? \"success\" : \"\";\n listHasSymbol.className = passValue.match(/.*[^a-zA-Z0-9]/g)\n ? \"success\"\n : \"\";\n };\n initializeSemanticUI();\n }\n};\ndocument.addEventListener(\"DOMContentLoaded\", init);\n","import $ from \"jquery\";\n\nexport const setBulkActionsStatus = ($container) => {\n if (!$container) {\n $(\".bulk-actions\").toggleClass(\"disabled\", true);\n } else {\n const hasSelectedItems = $container.find(\".bulk-item:checked\").length > 0;\n $container.find(\".bulk-actions\").toggleClass(\"disabled\", !hasSelectedItems);\n }\n};\n\nconst initBatchActions = () => {\n const getBulkIds = ($table) => {\n const itemIds = [];\n $table.find(\".bulk-item:checked\").each((ind, el) => {\n const dataId = $(el).data(\"member-id\") || $(el).parents(\"tr\").data(\"id\");\n itemIds.push(dataId);\n });\n return itemIds;\n };\n\n const appendBulkParams = (link) => {\n const $container = $(link).parents(\".bulk-container\");\n const $table = $container.find(\".bulk-table\");\n let href = $(link).attr(\"href\");\n\n const ids = getBulkIds($table);\n\n href += `?${$(link).data(\"params\")}`;\n ids.forEach((id) => {\n href += `&${$table.data(\"resource\")}[]=${id}`;\n });\n $(link).attr(\"href\", href);\n };\n\n setBulkActionsStatus(null);\n\n $(\".bulk-item\").on(\"change\", (e) => {\n const $container = $(e.target).parents(\".bulk-container\");\n setBulkActionsStatus($container);\n });\n\n $(\".bulk-actions .bulk-link\").on(\"click\", (e) => {\n appendBulkParams(e.target);\n });\n};\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n if (\n document.querySelector(\".bulk-item\") ||\n document.querySelector(\".bulk-actions\")\n ) {\n initBatchActions();\n }\n});\n\nwindow.init_batch_actions = initBatchActions;\n\nconst initMembersActions = (data) => {\n const options = data.map((i) => `${i}`);\n const locked = $(\"input#locked_ids\").val().split(\",\");\n\n $(\".js_clear_orgs\").on(\"click\", () => {\n $(\".js_select_orgs\").dropdown(\"set exactly\", locked);\n });\n\n $(\".js_add_orgs\").on(\"click\", () => {\n $(\".js_select_orgs\").dropdown(\"set exactly\", options);\n });\n\n $(\".js_select_orgs\").dropdown({\n onLabelCreate(value, text) {\n if (locked.includes(value)) {\n $(this).html(`${text}`);\n }\n\n return $(this);\n },\n });\n\n $(\".js_select_orgs\").dropdown(\"restore defaults\");\n};\nwindow.initMembersActions = initMembersActions;\n","import $ from \"jquery\";\n\nexport const initMultiSelectTable = (callback) => {\n const allSelected = () => $(\"#all_selected\").val() === \"1\";\n const joinOptions = (selector) => {\n const current = $(selector).val().toString().trim();\n return current === \"\" ? [] : current.split(\",\");\n };\n const selectedOpts = () => joinOptions(\"#selected_ids\");\n const unselectedOpts = () => joinOptions(\"#unselected_ids\");\n\n const setBulkActionsStatus = () => {\n const hasSelectedItems = selectedOpts().length > 0;\n $(\"#bulk_actions\").toggleClass(\"disabled\", !hasSelectedItems);\n };\n\n const toggleSelected = (elem) => {\n const $parentRow = $(elem).parents(\"tr\");\n const parentRowClass = $parentRow\n .attr(\"class\")\n .split(\" \")\n .map((s) => `.${s}`)\n .join(\"\");\n $(parentRowClass).toggleClass(\"selected\");\n };\n\n const setCheckedCount = () => {\n const $containerElem = $(\".selected-record-count-container\");\n const $msgElem = $(\"#selected-record-count-message\");\n\n const selectedCount = selectedOpts().length;\n const unselectedCount = unselectedOpts().length;\n\n const noun = $msgElem.data(\"noun\");\n const total = $msgElem.data(\"total\");\n\n let count = selectedCount;\n\n if (allSelected()) {\n count = total - unselectedCount;\n }\n\n let message = \"\";\n if (count === 0) {\n $containerElem.addClass(\"tw-hidden\");\n } else {\n $containerElem.removeClass(\"tw-hidden\");\n }\n\n message = $msgElem.data(\"message\");\n message = message.replace(\"{noun}\", noun);\n message = message.replace(\"{count}\", count);\n message = message.replace(\"{total}\", total);\n $msgElem.text(message);\n };\n\n const addToOptions = (elem, selector) => {\n const current = joinOptions(selector);\n if (!current.includes($(elem).val())) {\n current.push($(elem).val());\n }\n $(selector).val(current.join(\",\"));\n };\n\n const removeFromOptions = (elem, selector) => {\n const current = joinOptions(selector);\n const index = current.indexOf($(elem).val());\n if (index !== -1) {\n current.splice(index, 1);\n }\n $(selector).val(current.join(\",\"));\n };\n\n const addToSelected = (elem) => {\n addToOptions(elem, \"#selected_ids\");\n };\n\n const removeFromSelected = (elem) => {\n removeFromOptions(elem, \"#selected_ids\");\n };\n\n const addToUnSelected = (elem) => {\n addToOptions(elem, \"#unselected_ids\");\n };\n\n const removeFromUnSelected = (elem) => {\n removeFromOptions(elem, \"#unselected_ids\");\n };\n\n const selectItem = (item) => {\n const $elem = $(`.select_record.checkbox input[value=${item}]`);\n $elem.prop(\"checked\", true);\n toggleSelected($elem);\n };\n\n const setSelectedCheckboxes = () => {\n if (allSelected()) {\n // Check every box on the page unless it has been manually deselected\n $(\".select_record.checkbox input\").each((ind, el) => {\n const val = $(el).val();\n if (unselectedOpts().indexOf(val) === -1) {\n selectItem(val);\n }\n });\n } else {\n // Check just those options manually chosen\n const current = selectedOpts();\n\n if (current.length > 0) {\n current.forEach(selectItem);\n }\n }\n };\n\n const clear = () => {\n $(\".select_record.checkbox\").each((ind, el) => {\n $(el).checkbox(\"uncheck\");\n });\n $(\"#select_all\").prop(\"checked\", false);\n $(\"#selected_ids\").val(\"\");\n $(\"#unselected_ids\").val(\"\");\n $(\"#all_selected\").val(\"\");\n setCheckedCount();\n };\n\n $(\".select_row\").checkbox({\n onChecked() {\n addToSelected(this);\n removeFromUnSelected(this);\n toggleSelected(this);\n setCheckedCount();\n setBulkActionsStatus();\n },\n onUnchecked() {\n removeFromSelected(this);\n addToUnSelected(this);\n toggleSelected(this);\n setCheckedCount();\n setBulkActionsStatus();\n $(\"#select_all\").prop(\"checked\", false);\n },\n });\n\n $(\"#selected-record-clear\").on(\"click\", () => {\n clear();\n });\n\n $(\".ui.select_all.checkbox\").checkbox({\n onChecked() {\n $(\"#selected_ids\").val(\"\");\n $(\"#unselected_ids\").val(\"\");\n const items = $(this).parent().attr(\"data-items\");\n $(`.${items}`).each((ind, el) => {\n $(el).checkbox(\"check\");\n });\n $(\"#all_selected\").val(\"1\");\n setCheckedCount();\n },\n onUnchecked() {\n clear();\n },\n });\n\n $(\".bulk-action\").on(\"click\", (e) => {\n $(\"#multiple-action-form\").attr(\"action\", $(e.target).data(\"submit\"));\n $(\"#multiple-action-form\").trigger(\"submit\");\n });\n\n setBulkActionsStatus();\n setSelectedCheckboxes();\n setCheckedCount();\n\n if (typeof callback !== \"undefined\") {\n callback();\n }\n};\nwindow.initMultiSelectTable = initMultiSelectTable;\n","import $ from 'jquery';\nimport { getCSRFTokenValue } from './CsrfToken';\n\nconst initMemberOrganizations = () => {\n $('.remove-member').on('click', (e) => {\n const el = e.currentTarget;\n const memberId = el.id.split('-').pop();\n\n $(`#remove-member-modal-${memberId}`)\n .modal({\n onApprove() {\n const notifyCheckbox = false;\n let notify = null;\n if (notifyCheckbox) {\n notify = notifyCheckbox.checked;\n }\n $.ajax({\n url: `members/${memberId}`,\n dataType: 'script',\n type: 'DELETE',\n data: { notify },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n },\n })\n .modal('show');\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n initMemberOrganizations();\n});\n","import $ from 'jquery';\nimport { initSortable } from '../plugins/SortableJS';\n\nconst init = () => {\n const container = document.getElementById('additional_options');\n const keyFn = (e) => {\n if (e.key === e.code && e.code === 'Enter') {\n e.preventDefault();\n document.querySelector('.add_fields').click();\n }\n };\n const keyListener = (selector) => {\n selector.forEach((row) => {\n row.addEventListener('keydown', keyFn);\n });\n };\n\n if (container) {\n const deleteBtns = container.querySelectorAll('.remove_fields.existing');\n\n const observerOptions = {\n childList: true,\n attributes: true,\n // Omit (or set to false) to observe only changes to the parent node\n subtree: false,\n };\n const listen = () => {\n const answers = container.querySelectorAll('.nested-fields .gr-input__input');\n $('.dropdown:not(.custom)').each((ind, el) => {\n const element = $(el);\n const toTop = element.hasClass('toTop');\n const thisOptions = {\n allowCategorySelection: true,\n refresh: false,\n };\n\n thisOptions.direction = toTop ? 'upward' : 'auto';\n element.dropdown(thisOptions);\n\n element.find('.remove.icon').on('click', (e) => {\n e.stopPropagation();\n $(e.target).parent('.dropdown').dropdown('clear');\n });\n });\n\n keyListener(answers);\n\n answers[answers.length - 1].focus();\n };\n const observer = new MutationObserver(listen);\n observer.observe(container, observerOptions);\n\n deleteBtns.forEach((btn) => {\n btn.addEventListener('click', (e) => {\n const { dataset } = e.target;\n // Localstorage check needed for confirmation window\n if (dataset.answerId && localStorage.getItem(dataset.answerId)) {\n const subQuestions = container.querySelectorAll(`.gr-table-row[data-answer-id=\"${dataset.answerId}\"]`);\n if (subQuestions.length) {\n subQuestions.forEach((row) => { row.remove(); });\n }\n }\n });\n });\n\n keyListener(container.querySelectorAll('.nested-fields .gr-input__input'));\n\n container.querySelectorAll('[id^=\"nested\"]').forEach((c) => {\n if (c.querySelectorAll('.js-sort-item').length > 0) {\n initSortable(\n c.id,\n '.js-sort-item',\n '.js-sort-item__position',\n '.js-sort-item',\n window.updateSortOrder,\n );\n }\n });\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import { clearUrlParameterAndReload, clearMultiUrlParameterAndReload } from '../UrlParams';\n\nconst bindClearFilter = (button) => {\n button.addEventListener('click', (event) => {\n const el = event.currentTarget;\n if (el.dataset.filterName) {\n if (el.dataset.filterValue) {\n clearMultiUrlParameterAndReload(el.dataset.filterName, el.dataset.filterValue);\n } else {\n clearUrlParameterAndReload(event.currentTarget.dataset.filterName);\n }\n }\n });\n};\n\nconst init = () => {\n document.querySelectorAll('.clear-filter').forEach((el) => {\n bindClearFilter(el);\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","export const setConditionalButtonState = (select) => {\n const hideClass = select.dataset.conditionalButtonContainer;\n document.querySelectorAll(hideClass).forEach((container) => {\n if (container.classList.contains(`conditional_${select.value}`)) {\n container.classList.remove(\"tw-hidden\");\n } else {\n container.classList.add(\"tw-hidden\");\n }\n });\n};\n\nconst selectChanged = (ev) => {\n const select = ev.currentTarget;\n setConditionalButtonState(select);\n};\n\nconst init = () => {\n document.querySelectorAll(\".conditional-button\").forEach((select) => {\n setConditionalButtonState(select);\n select.addEventListener(\"change\", selectChanged);\n });\n};\n\ndocument.addEventListener(\"DOMContentLoaded\", init);\n","import $ from 'jquery';\n\nconst init = () => {\n document.querySelectorAll('[data-detailed-confirm-selector]').forEach((link) => {\n link.addEventListener('click', (e) => {\n e.preventDefault();\n $(link.dataset.detailedConfirmSelector)\n .modal({\n onApprove() {\n const form = document.querySelector(`${link.dataset.detailedConfirmSelector} form`);\n $(form).trigger('submit');\n },\n })\n .modal('show');\n });\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import { showModal } from \"../Modal\";\n\nconst hideShowTableContainer = () => {\n const tableContainer = document.querySelector(\n \"#add_from_concur_table_container\",\n );\n const tableBody = tableContainer.querySelector(\"tbody\");\n const tableBodyRows = tableBody.querySelectorAll(\"tr\");\n if (tableBodyRows.length > 0) {\n tableContainer.classList.remove(\"tw-hidden\");\n } else {\n tableContainer.classList.add(\"tw-hidden\");\n }\n};\n\nconst setExistingRegistrationId = (registrationId) => {\n const registrationIdField = document.querySelector(\n \"#concur_existing_registration\",\n );\n registrationIdField.value = registrationId;\n};\n\nconst init = (e) => {\n showModal(\"#add_from_concur_modal\");\n setExistingRegistrationId(\"\");\n if (e?.detail?.registrationId) {\n setExistingRegistrationId(e.detail.registrationId);\n }\n hideShowTableContainer();\n};\n\ndocument.addEventListener(\"concur:init_add_from_concur\", init);\n","import $ from 'jquery';\nimport { showModal } from '../Modal';\nimport { getCSRFTokenValue } from '../CsrfToken';\nimport toastr from '../../plugins/Toastr';\n\nconst initAccountApprovalEvents = () => {\n const url = document.querySelector('#manage-account-approvals').dataset.approvalToggleUrl;\n $('.approval-form-toggle').on('change', (e) => {\n const el = e.target;\n const typeId = el.id.split('-').pop();\n const typeName = ` -- ${el.getAttribute('data-type-name')}`;\n\n if (el.checked) {\n const headerSelector = $('#activate-type .header');\n const header = headerSelector.text().split('-')[0] + typeName;\n headerSelector.text(header);\n\n $('#activate-submit').attr('data-type-id', typeId);\n $('#activate-cancel').attr('data-type-id', typeId);\n\n showModal('#activate-type');\n } else {\n const headerSelector = $('#deactivate-type .header');\n const header = headerSelector.text().split('-')[0] + typeName;\n headerSelector.text(header);\n\n $('#deactivate-submit').attr('data-type-id', typeId);\n $('#deactivate-cancel').attr('data-type-id', typeId);\n\n showModal('#deactivate-type');\n }\n });\n\n $('#activate-submit').on('click', (e) => {\n $('#activate-type').modal('hide');\n const el = e.target;\n const typeId = el.getAttribute('data-type-id');\n\n $.ajax({\n url: `${url}/${typeId}`,\n type: 'PUT',\n data: { active: true },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n error(data) {\n toastr.error(data.responseJSON.error);\n },\n });\n });\n\n $('#activate-cancel').on('click', (e) => {\n const typeId = e.target.getAttribute('data-type-id');\n $(`#approval-form-toggle-${typeId}`).prop('checked', false);\n $('#activate-type').modal('hide');\n });\n\n $('#deactivate-submit').on('click', (e) => {\n $('#deactivate-type').modal('hide');\n const typeId = e.target.getAttribute('data-type-id');\n\n $.ajax({\n url: `${url}/${typeId}`,\n type: 'PUT',\n data: { active: false },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n error(data) {\n toastr.error(data.responseJSON.error);\n },\n });\n });\n\n $('#deactivate-cancel').on('click', (e) => {\n const typeId = e.target.getAttribute('data-type-id');\n $(`#approval-form-toggle-${typeId}`).prop('checked', true);\n $('#deactivate-type').modal('hide');\n });\n};\n\nconst initOrgApprovalEvents = () => {\n const url = document.querySelector('#manage-org-approvals').dataset.approvalToggleUrl;\n\n $('.org-approval-form-toggle').on('change', (e) => {\n const el = e.target;\n const typeId = el.id.split('-').pop();\n\n $.ajax({\n context: el,\n url: `${url}/${typeId}`,\n type: 'PUT',\n data: { active: el.checked },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success(data) {\n el.id = `org-approval-form-toggle-${data.id}`;\n },\n error(data) {\n toastr.error(data.responseJSON.error);\n },\n });\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#manage-account-approvals')) {\n initAccountApprovalEvents();\n }\n\n if (document.querySelector('#manage-org-approvals')) {\n initOrgApprovalEvents();\n }\n});\n","import { initMultiSelectTable } from '../multi_select_table';\nimport { initializeSemanticUI } from '../../plugins/SemanticUI';\n\nconst init = () => {\n if (document.querySelector('[data-attendee-profile-list]')) {\n initMultiSelectTable();\n initializeSemanticUI();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from 'jquery';\nimport { getCSRFTokenValue } from '../CsrfToken';\nimport { initializeSemanticUI } from '../../plugins/SemanticUI';\n\nconst initializeAttendeeTypeActions = () => {\n $('.remove-type').on('click', (e) => {\n const typeId = e.currentTarget.id.split('-').pop();\n\n $(`#deactivate-attendee-type-modal-${typeId}`)\n .modal({\n onApprove() {\n $.ajax({\n url: `attendee_types/${typeId}`,\n type: 'PUT',\n dataType: 'script',\n data: { id: typeId, active: false },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n return false;\n },\n })\n .modal('show');\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#manage-attendee-type-form')) {\n initializeAttendeeTypeActions();\n initializeSemanticUI();\n }\n});\n","import $ from 'jquery';\nimport { showModal } from '../Modal';\nimport { initializeSemanticUI } from '../../plugins/SemanticUI';\nimport { initCustomCheckboxes } from '../../plugins/FormFields';\nimport { getCSRFTokenValue } from '../CsrfToken';\n\nconst init = () => {\n $('.js-show-filter').on('click', (e) => {\n e.preventDefault();\n const modalId = $(e.currentTarget).attr('data-modal');\n showModal(`#${modalId}`);\n });\n\n const setBulkActionsStatus = () => {\n const hasSelectedItems = $('.reg_table__row.selected').length > 0;\n $('#event_bulk_actions').toggleClass('disabled', !hasSelectedItems);\n };\n\n $('.select_row.select_brand').checkbox({\n onChecked() {\n const $parentRow = $(this).parents('tr');\n const parentRowClass = $parentRow.attr('class').split(' ').map((s) => `.${s}`).join('');\n $(parentRowClass).addClass('selected');\n setBulkActionsStatus();\n },\n onUnchecked() {\n const $parentRow = $(this).parents('tr');\n const parentRowClass = $parentRow.attr('class').split(' ').map((s) => `.${s}`).join('');\n $(parentRowClass).removeClass('selected');\n setBulkActionsStatus();\n document.getElementById('select_all').checked = false;\n },\n });\n\n const appendData = (name, value) => {\n const tempInput = $(``).attr('type', 'hidden').attr('value', value);\n $('form#brands-multiple-action-form').append($(tempInput));\n };\n\n const appendDataSubmit = (name, value) => {\n appendData('page', (window.getUrlParameter('page') || 1));\n appendData(name, value);\n $('form#brands-multiple-action-form').submit();\n };\n\n function appendFilterParams() {\n const urlSearchParams = new URLSearchParams(window.location.search);\n urlSearchParams.forEach((value, key) => {\n appendData(key, value);\n });\n\n if (document.getElementById('select_all').checked) {\n appendData('all', 'true');\n }\n }\n\n $('#brands-active-menu a.item').on('click', (e) => {\n appendFilterParams();\n appendDataSubmit('set_active', $(e.target).data('activate'));\n });\n\n $('#brands-preferred-menu a.item').on('click', (e) => {\n appendFilterParams();\n appendDataSubmit('set_preferred', $(e.target).data('preferred'));\n });\n\n $('#multiple-brand-edit').on('click', () => {\n const previewText = $('#multi-brand-promo-preview').val();\n const promoText = $('#multi-brand-promo > .ql-editor').html();\n appendFilterParams();\n appendData('promo_text', promoText);\n appendDataSubmit('promo_text_preview', previewText);\n });\n\n $('#multi-contacts-edit-button').on('click', (e) => {\n e.preventDefault();\n const selectedBrands = $('.select_brand > input:checked').map((i, elem) => elem.value).get();\n const accountId = $('.multi_edit_account_id').first().val();\n\n $.ajax({\n url: 'brand_contacts/multiple_edit',\n type: 'get',\n dataType: 'script',\n data: {\n account_id: accountId,\n brand_ids: selectedBrands,\n },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n });\n\n setBulkActionsStatus();\n initializeSemanticUI();\n initCustomCheckboxes();\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#brand-management')) {\n init();\n }\n});\n\ndocument.addEventListener('brandmanagement:init', () => {\n init();\n});\n\ndocument.addEventListener('brandmanagement:setSelectedBrands', () => {\n const selectedBrands = $('.select_brand > input:checked').map((i, elem) => elem.value).get();\n const field = document.querySelector('#selected_brands');\n field.value = selectedBrands;\n});\n","import $ from 'jquery';\n\nconst initArchivedToggle = () => {\n $('#show_archived_box').on('change', (e) => {\n $('input#show_archived').val($(e.target).is(':checked'));\n $('#archived_toggle').trigger('submit');\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n initArchivedToggle();\n});\n","import { initializeSemanticUI } from '../../plugins/SemanticUI';\nimport { initCustomSelects } from '../../plugins/FormFields';\n\nconst init = () => {\n initializeSemanticUI();\n initCustomSelects();\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#concur-travel-management')) {\n init();\n }\n});\n","import $ from 'jquery';\n\nconst bindModalDisplay = (link) => {\n $(link).on('click', (e) => {\n e.preventDefault();\n $(`#${link.dataset.confirmModalId}`).modal('show');\n return false;\n });\n};\n\nconst init = () => {\n document.querySelectorAll('[data-confirm-modal-id]').forEach((el) => {\n bindModalDisplay(el);\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('confirm-modal:rebind', init);\n","import $ from 'jquery';\n\nconst initDocumentsEvents = () => {\n $('#documents')\n .on('cocoon:after-insert', () => {\n window.setUniqIds('document_description');\n document.dispatchEvent(new Event('quill:rebind'));\n })\n .on('cocoon:before-remove', (e, item) => {\n $(e.target).data('remove-timeout', 400);\n item.slideUp(300);\n });\n};\n\nconst init = () => {\n if (document.querySelector('#documents')) {\n initDocumentsEvents();\n }\n};\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('documentmanagement:init', init);\n","import { initCustomCheckboxes } from '../../plugins/FormFields';\n\nconst init = () => {\n initCustomCheckboxes();\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#manage-email-configuration')) {\n init();\n }\n});\n","import $ from 'jquery';\nimport { initializeSemanticUI } from '../../plugins/SemanticUI';\n\nconst validateInviteTemplate = () => {\n if (document.querySelector('[data-invite-template]')) {\n const inviteRegex = /\\[Complete My Profile Now\\]\\(\\{\\{invitation_link\\}\\}\\)/i;\n const websiteRegex = /\\s+https:\\/\\/app.groupize.com/i;\n\n let strBackup = $('#email_template_body').val();\n\n $('#email_template_body').on('keydown focusout', (ev) => {\n const query = ev.currentTarget.value;\n const inviteCondition = !inviteRegex.test(query);\n const websiteCondition = !websiteRegex.test(query);\n const conditions = (inviteCondition || websiteCondition);\n\n if (conditions) {\n ev.preventDefault();\n $('#email_template_body').val(strBackup);\n } else {\n strBackup = $('#email_template_body').val();\n }\n });\n }\n};\n\nconst validateAssignExpertTemplate = () => {\n if (document.querySelector('[data-assign-expert-template]')) {\n const eventRegex = /\\{\\{event_ebids_link\\}\\}/i;\n\n let strBackup = $('#email_template_body').val();\n\n $('#email_template_body').on('keydown focusout', (ev) => {\n const query = ev.currentTarget.value;\n const eventCondition = !eventRegex.test(query);\n\n if (eventCondition) {\n ev.preventDefault();\n $('#email_template_body').val(strBackup);\n } else {\n strBackup = $('#email_template_body').val();\n }\n });\n }\n};\n\nexport const validateTemplates = () => {\n validateAssignExpertTemplate();\n validateInviteTemplate();\n};\n\nconst init = () => {\n if (document.querySelector('#manage-email-templates')) {\n initializeSemanticUI();\n $('.remove_attachment').on('click', (e) => {\n $(e.target).parents('li').remove();\n });\n validateTemplates();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('emailtemplate:validate', validateTemplates);\n","import $ from 'jquery';\nimport { showModal } from '../Modal';\nimport { initTableShadow } from '../TableShadow';\n\nexport const initEventsDashboardScripts = (() => {\n $('.js-show-filter').on('click', (e) => {\n e.preventDefault();\n showModal('#events_filter', false, { autofocus: true });\n });\n\n function appendData(name, value) {\n const tempInput = $(``).attr('type', 'hidden').attr('value', value);\n $('form#multiple-action-form').append($(tempInput));\n }\n\n function appendDataSubmit(name, value) {\n appendData('page', (window.getUrlParameter('page') || 1));\n appendData('filter', (window.getUrlParameter('filter') || 'upcoming'));\n appendData(name, value);\n $('form#multiple-action-form').submit();\n }\n\n $('.stage.menu a.item').on('click', (e) => {\n appendDataSubmit('stage', $(e.target).data('stage'));\n });\n\n $('.sourcing_stage.menu a.item').on('click', (e) => {\n appendDataSubmit('sourcing_stage', $(e.target).data('sourcing-stage'));\n });\n\n $('.payment_status.menu a.item').on('click', (e) => {\n appendDataSubmit('payment_status', $(e.target).data('payment-status'));\n });\n\n $('.menu.events_actions__menu a#archive').on('click', () => {\n appendDataSubmit('archive', '1');\n });\n\n $('.menu.events_actions__menu a#delete').on('confirm:complete', (e, answer) => {\n if (answer) {\n appendDataSubmit('delete', '1');\n }\n });\n\n initTableShadow('table_view');\n});\n\nconst init = () => {\n if (document.querySelector('[data-event-dashboard]')) {\n initEventsDashboardScripts();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('eventdashboard:init', init);\n","import $ from 'jquery';\nimport { getCSRFTokenValue } from '../CsrfToken';\n\nconst initializeEventTypeManagement = () => {\n $('.remove-type').on('click', (e) => {\n const typeId = e.target.dataset.eventTypeId;\n\n $(`#deactivate-event-type-modal-${typeId}`)\n .modal({\n onApprove() {\n $.ajax({\n url: `event_types/${typeId}`,\n type: 'DELETE',\n dataType: 'script',\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n },\n })\n .modal('show');\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#event_types_listing')) {\n initializeEventTypeManagement();\n }\n});\n\ndocument.addEventListener('event_type_management:init', () => {\n initializeEventTypeManagement();\n});\n","import { showModal } from '../Modal';\nimport { titleize } from '../Utils';\nimport { i18n } from '../Internationalization';\nimport { getCSRFTokenValue } from '../CsrfToken';\n\nconst toggleSubTypesDropdown = (sub_types, dropdown) => {\n if (sub_types != null) {\n dropdown.classList.remove('hidden');\n } else {\n dropdown.classList.add('hidden');\n }\n};\n\nconst removeOldOptions = (dropdownContainer) => {\n const selectedSubType = document.querySelector('#selected_sub_type');\n const selectedSubTypeValue = document.querySelector('#sub-type-value');\n selectedSubType.innerText = i18n.t('admin.filter.no_selection_option');\n selectedSubTypeValue.setAttribute('value', ' ');\n dropdownContainer.innerHTML = ' ';\n};\n\nconst addDefaultSubTypeOptions = (dropdownContainer) => {\n const hiddenInput = document.createElement('input');\n const selectOption = document.createElement('div');\n\n dropdownContainer.appendChild(selectOption);\n hiddenInput.setAttribute('name', 'sub_type');\n hiddenInput.setAttribute('hidden', true);\n selectOption.classList.add('item');\n selectOption.innerText = i18n.t('admin.filter.no_selection_option');\n};\n\nconst addSubtTypes = (sub_types, dropdownContainer) => {\n sub_types.forEach((value) => {\n createSubTypeOption(value, dropdownContainer);\n });\n};\n\nconst createSubTypeOption = (sub_type, container) => {\n const typeInput = document.createElement('div');\n\n container.appendChild(typeInput);\n typeInput.setAttribute('value', sub_type);\n typeInput.classList.add('item');\n typeInput.innerText = titleize(sub_type);\n};\n\nconst init = () => {\n const filterButton = document.querySelector('#financial-transaction-button');\n const mainInput = document.querySelector('#main-type-selection');\n const subTypeDropdown = document.querySelector('#sub_type_dropdown_container');\n const subTypeOptionContainer = document.querySelector('#sub_type_dropdown');\n\n if (filterButton) {\n filterButton.addEventListener('click', () => {\n showModal('#financial-transactions-filter-modal');\n });\n\n mainInput.addEventListener('change', (e) => {\n if (e.currentTarget.value != '') {\n $.ajax({\n url: '/api/admin/financial_transaction_types/',\n type: 'GET',\n dataType: 'script',\n data: { main_type: e.currentTarget.value },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success(data) {\n const typeResults = JSON.parse(data);\n toggleSubTypesDropdown(typeResults, subTypeDropdown);\n if (!subTypeDropdown.classList.contains('hidden')) {\n removeOldOptions(subTypeOptionContainer);\n addDefaultSubTypeOptions(subTypeOptionContainer);\n addSubtTypes(typeResults, subTypeOptionContainer);\n }\n },\n });\n }\n });\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from 'jquery';\n\nconst initFlightConfigurations = () => {\n function checkNumber() {\n const numberOfCheckedOptions = document.querySelectorAll('[data-air-choice]:checked').length;\n\n $('.air_skippable.checkbox').toggleClass('disabled', (numberOfCheckedOptions < 1));\n $('.air_skippable.checkbox input[type=checkbox]').prop('disabled', (numberOfCheckedOptions < 1));\n if (numberOfCheckedOptions < 1) {\n $('.air_skippable.checkbox input[type=checkbox]').prop('checked', false);\n }\n }\n\n document.querySelectorAll('[data-air-choice]').forEach((elem) => {\n elem.addEventListener('change', () => {\n checkNumber();\n });\n });\n\n checkNumber();\n};\n\nexport const checkDisplayWithMandatoryFields = (containerSelector = '#reg_form_update_container') => {\n const $mandatoryField = $(`${containerSelector} input[type=\"checkbox\"][name$=\"[required]\"]`);\n const $displayField = $(`${containerSelector} input[type=\"checkbox\"][name$=\"[active]\"]`);\n\n $mandatoryField.on('click', (e) => {\n if ($(e.target).is(':checked')) {\n const displayField = $($(e.target).closest('td')).prev('td').find('input[type=\"checkbox\"][name$=\"[active]\"]');\n displayField.prop('checked', true);\n }\n });\n\n $displayField.on('click', (e) => {\n if (!$(e.target).is(':checked')) {\n const requiredField = $($(e.target).closest('td')).next('td').find('input[type=\"checkbox\"][name$=\"[required]\"]');\n requiredField.prop('checked', false);\n }\n });\n};\n\nconst init = () => {\n if (document.querySelector('[data-flight-configurations]')) {\n initFlightConfigurations();\n }\n\n if (document.querySelector('[data-flight-fields]')) {\n checkDisplayWithMandatoryFields('#air_request_fields_table');\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from \"jquery\";\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n if (document.querySelector(\"#gds-remarks\")) {\n $(\".override-remark-button, .ignore-remark-button\")\n .data(\"association-insertion-method\", \"after\")\n .data(\"association-insertion-node\", (link) =>\n link.closest(\".section-panel\"),\n );\n\n $(\"#general_remarks, #accounting_remarks\").on(\n \"cocoon:before-insert\",\n (event) => {\n $(event.target).hide();\n },\n );\n\n $(\"#accounting_remarks\").on(\n \"cocoon:before-remove\",\n (event, removedItem) => {\n const ignore = $(removedItem).data(\"ignore\");\n const override = $(removedItem).data(\"override\");\n const id = $(removedItem).data(\"parentid\");\n\n if (ignore || override) {\n $(`#accounting-remark-${id}`).show();\n }\n },\n );\n\n $(\"#general_remarks\").on(\"cocoon:before-remove\", (event, removedItem) => {\n const ignore = $(removedItem).data(\"ignore\");\n const override = $(removedItem).data(\"override\");\n const id = $(removedItem).data(\"parentid\");\n\n if (ignore || override) {\n $(`#general-remark-${id}`).show();\n }\n });\n }\n\n if (document.querySelector(\"[data-validated-gds-remarks]\")) {\n $(\"#general_remarks, #accounting_remarks\").on(\"cocoon:after-insert\", () => {\n document.dispatchEvent(new Event(\"rebind-validation\"));\n });\n\n $(\"#general_remarks, #accounting_remarks\").on(\"cocoon:after-remove\", () => {\n document.dispatchEvent(new Event(\"rebind-validation\"));\n });\n }\n\n if (document.querySelector(\"[data-validated-gds-remarks]\")) {\n $(\"#reservation_detail_hotel_booking_mode_registration\").on(\"click\", (e) => {\n $(\"[data-hotel-booking-instant-mandatory]\").removeClass(\"hide\");\n });\n $(\"#reservation_detail_hotel_booking_mode_ebp\").on(\"click\", (e) => {\n $(\"[data-hotel-booking-instant-mandatory]\").addClass(\"hide\");\n });\n }\n\n});\n","import $ from 'jquery';\n\nconst syncText = (e) => {\n var selector = e.dataset.matchingInputDisplay;\n const display = document.querySelector(selector);\n display.innerText = e.value;\n}\nconst init = () => {\n document.querySelectorAll('[data-matching-input-display]').forEach((el) => {\n el.addEventListener('keyup', function() {\n syncText(el);\n });\n });\n $('#app_sections, #website_sections').on('cocoon:after-insert', (e, insertedItem, originalEvent) => {\n var sectionCount = $('.nested-fields').length;\n $(insertedItem).find('.section_item__title').addClass(\"js-display-\" + sectionCount);\n $(insertedItem).find('[data-matching-input-display]').each(function(index) {\n this.dataset.matchingInputDisplay = \".js-display-\" + sectionCount;\n $(this).on('keyup', function() {\n syncText(this); \n });\n });\n });\n}\n\ndocument.addEventListener('DOMContentLoaded', init);","import $ from 'jquery';\nimport { initTableShadow } from '../TableShadow';\nimport { showModal } from '../Modal';\nimport { setBulkActionsStatus } from '../batch_actions';\nimport { initCustomCheckboxes } from '../../plugins/FormFields';\n\nconst initMemberTable = () => {\n initTableShadow('members_table_view');\n const $table = $('#members_table_view').parents('.bulk-table');\n const $rows = $table.find('.select_row');\n $rows.checkbox({\n onChecked() {\n const $parentRowId = $(this).parents('.gr-table-row').data('id');\n const $parentRowSections = $(`.member_${$parentRowId}`);\n $parentRowSections.each((i, elem) => {\n $(elem).addClass('selected');\n });\n setBulkActionsStatus($('.tab.active .bulk-container'));\n },\n onUnchecked() {\n const $parentRowId = $(this).parents('.gr-table-row').data('id');\n const $parentRowSections = $(`.member_${$parentRowId}`);\n $parentRowSections.each((i, elem) => {\n $(elem).removeClass('selected');\n });\n setBulkActionsStatus($('.tab.active .bulk-container'));\n },\n });\n};\n\nconst initDomainsTable = () => {\n initTableShadow('domains_table_view');\n\n const $table = $('#domains_table_view').parents('.bulk-table');\n const $rows = $table.find('.select_row');\n\n $rows.checkbox({\n onChecked() {\n const $parentRowId = $(this).parents('.gr-table-row').data('id');\n const $parentRowSections = $(`.member_${$parentRowId}`);\n $parentRowSections.each((i, elem) => {\n $(elem).addClass('selected');\n });\n setBulkActionsStatus($('.tab.active .bulk-container'));\n },\n onUnchecked() {\n const $parentRowId = $(this).parents('.gr-table-row').data('id');\n const $parentRowSections = $(`.member_${$parentRowId}`);\n $parentRowSections.each((i, elem) => {\n $(elem).removeClass('selected');\n });\n setBulkActionsStatus($('.tab.active .bulk-container'));\n },\n });\n};\n\nconst initMemberSearch = () => {\n $('#members-search').on('click', () => {\n showModal('#members-search-modal');\n initCustomCheckboxes();\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#members_table_view')) {\n initMemberTable();\n }\n\n if (document.querySelector('#domains_table_view')) {\n initDomainsTable();\n }\n\n if (document.querySelector('#members-search')) {\n initMemberSearch();\n }\n});\n","import $ from 'jquery';\nimport { getCSRFTokenValue } from '../CsrfToken';\n\nconst initGetOrganizations = (url) => {\n $('#new_account')\n .on('change', () => {\n const accountId = $('#new_account option:selected').val();\n\n $.ajax({\n url,\n type: 'GET',\n data: {\n account_id: accountId,\n },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n });\n};\n\nwindow.initialize_get_organizations = initGetOrganizations;\n","import $ from 'jquery';\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('a#remove-addendum')) {\n $('a#remove-addendum').on('click', (event) => {\n event.preventDefault();\n $('input#branding_configuration_addendum_name').val(null);\n $('input#branding_configuration_addendum_url').val(null);\n $(this).hide();\n $('a#preview-addendum').hide();\n $('a#remove-addendum').hide();\n });\n }\n});\n","import $ from 'jquery';\nimport { showModal } from '../Modal';\nimport { getCSRFTokenValue } from '../CsrfToken';\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('.portal-toggle')) {\n const toggle = document.querySelector('.portal-toggle');\n\n $(toggle).on('click', (event) => {\n event.preventDefault();\n const isChecked = event.currentTarget.checked;\n if (isChecked === false && document.querySelector('#portal_toggle_confirm')) {\n showModal('#portal_toggle_confirm');\n } else {\n $.ajax({\n url: toggle.dataset.toggleUrl,\n type: 'POST',\n data: {\n value: toggle.checked,\n },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success() {\n $(toggle).prop('checked', isChecked);\n },\n });\n }\n return false;\n });\n\n $('#portal-confirm').on('click', (event) => {\n event.preventDefault();\n $.ajax({\n url: toggle.dataset.toggleUrl,\n type: 'POST',\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success() {\n $(toggle).prop('checked', false);\n $('.ui.modal').modal('hide');\n },\n });\n return false;\n });\n }\n});\n","import $ from 'jquery';\nimport { showModal } from '../Modal';\nimport { initializeSemanticUI } from '../../plugins/SemanticUI';\nimport { initCustomCheckboxes } from '../../plugins/FormFields';\nimport { initLocationAutocomplete } from '../../plugins/LocationAutocomplete';\n\nconst init = () => {\n initializeSemanticUI();\n initCustomCheckboxes();\n\n $('.js-show-filter').on('click', (e) => {\n e.preventDefault();\n const modalId = $(e.currentTarget).attr('data-modal');\n showModal(`#${modalId}`);\n initLocationAutocomplete();\n });\n\n const setBulkActionsStatus = () => {\n const hasSelectedItems = $('.reg_table__row.selected').length > 0;\n $('#event_bulk_actions').toggleClass('disabled', !hasSelectedItems);\n };\n\n $('.select_row.select_property').checkbox({\n onChecked() {\n const $parentRow = $(this).parents('tr');\n const parentRowClass = $parentRow.attr('class').split(' ').map((s) => `.${s}`).join('');\n $(parentRowClass).addClass('selected');\n setBulkActionsStatus();\n },\n onUnchecked() {\n const $parentRow = $(this).parents('tr');\n const parentRowClass = $parentRow.attr('class').split(' ').map((s) => `.${s}`).join('');\n $(parentRowClass).removeClass('selected');\n setBulkActionsStatus();\n document.getElementById('select_all').checked = false;\n document.getElementById('selected_count').classList.add('hide');\n },\n });\n\n function appendData(name, value) {\n const tempInput = $(``).attr('type', 'hidden').attr('value', value);\n $('form#multiple-action-form').append($(tempInput));\n }\n\n function appendDataSubmit(name, value) {\n appendData('page', (window.getUrlParameter('page') || 1));\n appendData(name, value);\n $('form#multiple-action-form').submit();\n }\n\n function appendFilterParams() {\n const urlSearchParams = new URLSearchParams(window.location.search);\n urlSearchParams.forEach((value, key) => {\n appendData(key, value);\n });\n\n if (document.getElementById('select_all').checked) {\n appendData('all', 'true');\n }\n }\n\n $('#properties-active-menu a.item').on('click', (e) => {\n appendFilterParams();\n appendDataSubmit('set_active', $(e.target).data('activate'));\n });\n\n $('#properties-preferred-menu a.item').on('click', (e) => {\n appendFilterParams();\n appendDataSubmit('set_preferred', $(e.target).data('preferred'));\n });\n\n $('#multiple-property-edit').on('click', () => {\n const previewText = $('#multi-prop-promo-preview').val();\n const promoText = $('#multi-prop-promo > .ql-editor').html();\n appendFilterParams();\n appendData('promo_text', promoText);\n appendDataSubmit('promo_text_preview', previewText);\n });\n\n $('.property_filter').on('click', (e) => {\n e.preventDefault();\n $('input#filter').val(e.target.getAttribute('data-filter'));\n $('#properties-filter-form').submit();\n });\n\n setBulkActionsStatus();\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#property-management')) {\n init();\n }\n});\n\ndocument.addEventListener('propertymanagement:init', () => {\n init();\n});\n","import $ from 'jquery';\nimport { v4 as uuidv4 } from 'uuid';\nimport { setConditionalButtonState } from '../components/ConditionalButton';\nimport { html } from '../confirmationModal';\n\nconst initQuestionEvents = () => {\n const dropdownLabel = document.querySelector('#select_question ~ .text');\n const activeSelection = document.querySelector('.item.active.selected');\n let isIconSet = false;\n\n if (activeSelection && !isIconSet) {\n isIconSet = true;\n dropdownLabel.dataset.value = activeSelection.dataset.value;\n }\n document.addEventListener('change', (e) => {\n if (e.target.selectedOptions && e.target.selectedOptions.length) {\n const selectedValue = e.target.selectedOptions[0].value;\n dropdownLabel.dataset.value = selectedValue;\n }\n });\n\n $('#question_form')\n .on('cocoon:after-insert', (e, item) => {\n const button = item.find('button.add_subquestion');\n const uuid = uuidv4();\n\n item.find('input.hidden-build-uuid').val(uuid);\n button.attr('data-build-uuid', uuid);\n setConditionalButtonState(document.querySelector('#select_question'));\n }).on('cocoon:before-remove', (event, item) => {\n // Confirmation of removal for question options/answers\n const row = item.prevObject[0];\n const { answerId } = row.dataset;\n const confirmation = localStorage.getItem(answerId);\n\n if (!confirmation) {\n event.preventDefault();\n $(html('Confirm Remove Item', 'Are you sure?')).modal({\n onApprove: () => { localStorage.setItem(answerId, true); row.click(); },\n }).modal('show');\n } else {\n localStorage.removeItem(answerId);\n }\n });\n};\n\nwindow.initialize_question_events = initQuestionEvents;\n","import { i18n } from './Internationalization';\n\nexport const html = (header, message) => `\\\n
\n \n
\n ${header}\n
\n
\n

${message}

\n
\n
\n ${i18n.t('actions.cancel')}\n \n ${i18n.t('actions.confirm')}\n \n \n
\n
\\\n `;\n","import { showModal } from \"../Modal\";\nimport { initDatePicker } from \"../DatetimeInit\";\nimport { initReadOnly } from \"../components/SignaturePad\";\nimport { initializeSemanticUI } from \"../../plugins/SemanticUI\";\n\nconst init = () => {\n const modalView = document.getElementById(\"modal_view\");\n if (modalView) {\n modalView.classList.add(\"full_height\");\n showModal(\"#modal_view\");\n initializeSemanticUI();\n initDatePicker();\n initReadOnly();\n }\n};\n\ndocument.addEventListener(\"registration:init\", init);\n","import $ from 'jquery';\nimport { initAllFlatpickrMulti } from '../DatetimeInit';\nimport { getCSRFTokenValue } from '../CsrfToken';\nimport { setUniqIds } from '../InitApp';\nimport { randomizeAccordionSelector } from '../components/Accordion';\n\nconst initRoomTypeFields = () => {\n $('#room_types')\n .on('cocoon:after-insert', (e, addedRoom) => {\n randomizeAccordionSelector(addedRoom[0], 'room_night_breakdown_0');\n setUniqIds('room_description');\n document.dispatchEvent(new Event('quill:rebind'));\n initAllFlatpickrMulti();\n })\n .on('cocoon:before-remove', (e, item) => {\n $(e.target).data('remove-timeout', 1000);\n item.fadeOut('slow');\n });\n};\n\nconst initRoomBlockEvents = () => {\n $('#reservation_detail_date_option_peak').on('click', () => {\n $('#peak-dates').show();\n });\n\n $('#reservation_detail_date_option_flexible').on('click', () => {\n $('#peak-dates').hide();\n });\n $('#reservation_detail_maximum_stay_switch').on('click', () => {\n $('#maximum_stay_field').toggle();\n });\n};\n\nexport const initializePreValidationForm = (hideParent = true) => {\n $('.pre-validation-confirmation .button.cancel').on('click', () => {\n if (hideParent) {\n $('.pre-validation').modal('hide');\n }\n\n $('.pre-validation-confirmation').modal('hide');\n });\n\n $('.pre-validation-confirmation .button.confirm').on('click', () => {\n $('.pre-validation').data('validate', false).trigger('submit');\n });\n};\n\nexport const validateAndSubmit = (e, type) => {\n e.preventDefault();\n e.stopPropagation();\n const formId = $(e.target).attr('form');\n const form = $(`#${formId}`);\n if (form.data('validate')) {\n const validationPath = form.data('validation-path');\n\n let url;\n let data;\n\n if (type === 'GET') {\n url = `${validationPath}?${form.serialize()}`;\n data = null;\n } else {\n url = validationPath;\n data = form.serialize();\n }\n\n $.ajax({\n url,\n type,\n dataType: 'JSON',\n data,\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success(resp) {\n if (!resp.valid) {\n $('.pre-validation-confirmation').modal('show');\n } else {\n form.data('validate', false).trigger('submit');\n }\n },\n });\n }\n};\n\nconst setupRoomBlockValidation = () => {\n const $btn = $('#save_btn');\n if ($btn.length === 0) return;\n\n initializePreValidationForm(false);\n\n $btn.attr('form', 'rooming_list_form');\n $btn.removeClass('hide');\n $btn[0].onclick = (e) => validateAndSubmit(e, 'PUT');\n};\n\nconst init = () => {\n if (document.querySelector('[data-rooming-list]')) {\n initRoomTypeFields();\n initRoomBlockEvents();\n setupRoomBlockValidation();\n initAllFlatpickrMulti();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import { initializeSemanticUI } from '../../plugins/SemanticUI';\nimport { initDatePicker } from '../DatetimeInit';\n\nconst initEditRoomRequest = () => {\n initializeSemanticUI();\n initDatePicker();\n};\n\ndocument.addEventListener('roomrequest:initedit', initEditRoomRequest);\n","import $ from 'jquery';\nimport { toggleContent } from '../Utils';\n\nconst initEventSpeaker = () => {\n $('#speaker_search_text').keyup((e) => {\n const term = e.target.value.toLowerCase();\n const speakers = document.getElementsByClassName('speaker_name');\n Array.from(speakers).forEach((speaker) => {\n const title = speaker.textContent.trim();\n if (title.toLowerCase().indexOf(term) !== -1) {\n speaker.parentElement.style.display = 'flex';\n } else {\n speaker.parentElement.style.display = 'none';\n }\n });\n });\n};\n\nconst initEventTrack = () => {\n $('#track_search_text').keyup((e) => {\n const term = e.target.value.toLowerCase();\n const tracks = document.getElementsByClassName('track_name');\n Array.from(tracks).forEach((track) => {\n const title = track.textContent.trim();\n if (title.toLowerCase().indexOf(term) !== -1) {\n track.parentElement.style.display = 'flex';\n } else {\n track.parentElement.style.display = 'none';\n }\n });\n });\n};\n\nconst initEventSponsor = () => {\n $('#sponsor_search_text').keyup((e) => {\n const term = e.target.value.toLowerCase();\n const sponsors = document.getElementsByClassName('sponsor_name');\n Array.from(sponsors).forEach((sponsor) => {\n const title = sponsor.textContent.trim();\n if (title.toLowerCase().indexOf(term) !== -1) {\n sponsor.parentElement.style.display = 'flex';\n } else {\n sponsor.parentElement.style.display = 'none';\n }\n });\n });\n};\n\nconst initSessionEditing = () => {\n document.dispatchEvent(new Event('documentmanagement:init'));\n document.dispatchEvent(new Event('clipboard:init'));\n\n const form = document.querySelector('.tw-container #event_session_form');\n const checkboxes = form.querySelectorAll('input[name^=\"event_session\"][type=\"checkbox\"]');\n const toggleContainer = form.querySelector('[data-toggle-check=\"bookable\"]');\n const cleanCheckboxName = (name) => name.replace(/(event_session)|[\\][]/g, '');\n const checkboxesBookable = Array.from(checkboxes).filter((box) => cleanCheckboxName(box.name) === 'website_bookable'\n || cleanCheckboxName(box.name) === 'app_bookable');\n const bookableOptions = Array.from(checkboxes).filter((box) => cleanCheckboxName(box.name) === 'included'\n || cleanCheckboxName(box.name) === 'enable_waitlist');\n const isBookable = (fields) => fields.map((field) => field.checked === true).some((v) => v === true);\n\n const toggleDisabled = (elem, disabledValue) => {\n elem.checked = false;\n elem.disabled = disabledValue;\n if (disabledValue) {\n elem.classList.add('disabled');\n } else {\n elem.classList.remove('disabled');\n }\n };\n\n const clearFields = (container) => {\n container.querySelectorAll('input').forEach((field) => {\n if (field.type === 'checkbox') {\n field.checked = false;\n toggleDisabled(field, false);\n } else {\n field.value = '';\n }\n });\n };\n\n checkboxes.forEach((cb) => {\n cb.addEventListener('change', (e) => {\n const box = e.target;\n const name = cleanCheckboxName(box.name);\n if (name === 'website_bookable' || name === 'app_bookable') {\n toggleContent(toggleContainer, isBookable(checkboxesBookable));\n if (!isBookable(checkboxesBookable)) { clearFields(toggleContainer); }\n }\n if (name === 'included' || name === 'enable_waitlist') {\n const elemToToggle = bookableOptions.find((option) => cleanCheckboxName(option.name) !== name);\n toggleDisabled(elemToToggle, box.checked);\n }\n });\n });\n};\n\nconst init = () => {\n if (document.querySelector('#new_event_speaker')) {\n initEventSpeaker();\n initEventTrack();\n initEventSponsor();\n }\n\n if (document.querySelector('[data-session-management]')) {\n initSessionEditing();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from \"jquery\";\n\nconst initializeExpertAssistActions = () => {\n $(\".deactivate-expert-assist\").on(\"change\", (e) => {\n $(\".expert_assist_input\").prop(\"disabled\", $(e.target).prop(\"checked\"));\n });\n};\n\ndocument.addEventListener(\"expertassistmanagement:init\", () => {\n initializeExpertAssistActions();\n});\n","import $ from \"jquery\";\nimport { nanoid } from \"nanoid\";\nimport { initializeSemanticUI } from \"../../plugins/SemanticUI\";\nimport { initCustomCheckboxes } from \"../../plugins/FormFields\";\nimport { initSortable } from \"../../plugins/SortableJS\";\n\nconst initWebsiteSections = (id) => {\n const initToggleScript = () => {\n $(\".section_item\").on(\"change\", \".js-checkbox-visibility\", (e) => {\n e.stopPropagation();\n const parentContainer = $(e.currentTarget)\n .parents(\".section_item\")\n .first();\n if (parentContainer) {\n parentContainer.toggleClass(\"grey\", !$(e.currentTarget).is(\":checked\"));\n }\n });\n $(\".js-fold\")\n .off(\"click\")\n .on(\"click\", (e) => {\n const parentContainer = $(e.currentTarget)\n .parents(\".section_item\")\n .first();\n if (parentContainer) {\n const contentArea = parentContainer.find(\".section_item__body\");\n const isOpened = parentContainer.hasClass(\"opened\");\n parentContainer.toggleClass(\"opened\", !isOpened);\n contentArea.slideToggle(isOpened);\n }\n });\n };\n\n // Initialize Sortable\n // Parameters:\n // - Container's ID\n // - Sortable item class\n // - Input to store it's position\n // - handler\n // - callback\n const hasSortableItems = $(\".js-sort-item\").length > 0;\n if (hasSortableItems) {\n initSortable(\n id,\n \".js-sort-item\",\n \".js-sort-item__position\",\n \".drag_handler\",\n window.updateSortOrder,\n );\n }\n\n initializeSemanticUI();\n initCustomCheckboxes();\n\n initToggleScript();\n\n $(`#${id}`)\n .on(\"cocoon:after-insert\", (e, item) => {\n const newId = nanoid();\n $(\"#custom__description\").prop(\"id\", `custom_${newId}_description`);\n $(\"#toolbar-custom__description\").prop(\n \"id\",\n `toolbar-custom_${newId}_description`,\n );\n $(\"#limit_custom__description\").prop(\n \"id\",\n `limit_custom_${newId}_description`,\n );\n\n initToggleScript();\n document.dispatchEvent(new Event(\"quill:rebind\"));\n window.scrollTo({\n top: $(item).offset().top,\n left: 0,\n behavior: \"smooth\",\n });\n })\n .on(\"cocoon:before-remove\", (e, item) => {\n $(e.target).data(\"remove-timeout\", 400);\n item.slideUp(300);\n });\n};\n\nconst init = () => {\n document.querySelectorAll(\"[data-website-sections]\").forEach((el) => {\n initWebsiteSections(el.id);\n });\n};\ndocument.addEventListener(\"DOMContentLoaded\", init);\n","import $ from 'jquery';\nimport Cookies from 'js-cookie';\nimport Splide from '@splidejs/splide';\nimport { getCSRFTokenValue } from '../CsrfToken';\nimport { removeQuerystring } from '../UrlParams';\nimport { showModal, hideModal } from '../Modal';\n\nconst getSelectedBidIds = (section, label) => {\n const bidIds = [];\n\n $(`.reg_table .select_bid_${section}_${label} input[type='checkbox']:checked`).each((index, elem) => {\n bidIds.push($(elem).data('bid-id'));\n });\n\n return bidIds;\n};\n\nconst initBulkActions = () => {\n document.querySelectorAll('[data-ebid-bulk-actions').forEach((table) => {\n const tableId = table.id;\n document.querySelectorAll(`#${tableId} a`).forEach((link) => {\n // eslint-disable-next-line consistent-return\n link.addEventListener('click', (e) => {\n const originalUrl = e.currentTarget.getAttribute('href');\n if (!originalUrl) return false; // Don't do anything if there is no url\n\n const result = getSelectedBidIds(table.dataset.section, table.dataset.label);\n const newUrl = removeQuerystring(originalUrl).concat('?bid_ids=', result);\n link.setAttribute('href', newUrl);\n });\n });\n });\n};\n\nconst updateEAMessages = () => {\n const container = document.getElementById('hotel_details');\n if (container) {\n $.ajax({\n method: 'PATCH',\n url: container.dataset.eaMessagesUrl,\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n }\n};\n\nconst setModalDisableCookie = (slideModalId, cookieName) => {\n if ($(`#${slideModalId}-disable-checkbox`)[0] && $(`#${slideModalId}-disable-checkbox`)[0].checked) {\n Cookies.set(cookieName, true);\n }\n};\n\nconst initIntroModal = (slideModalId = 'intro-slide', cookieName = 'intro_modal_disabled') => {\n const slideContainer = document.getElementById(slideModalId);\n if (!slideContainer) {\n return;\n }\n\n const numSlides = parseInt(slideContainer.dataset.numberOfSlides, 10) || 1;\n const splide = new Splide('.splide', { cover: false, type: 'slide', arrows: false }).mount();\n\n splide.on('moved', (newIndex) => {\n if ((newIndex + 1) >= numSlides) {\n document.querySelector('.next_slide').classList.add('is-final');\n }\n });\n\n const disabledModal = Cookies.get(cookieName);\n\n if ((disabledModal === undefined || disabledModal !== 'true')) {\n showModal(`#${slideModalId}`);\n } else {\n return;\n }\n\n document.querySelector('.next_slide').addEventListener('click', (e) => {\n e.preventDefault();\n if (e.currentTarget.classList.contains('is-final')) {\n hideModal(`#${slideModalId}`);\n setModalDisableCookie(slideModalId, cookieName);\n if (e.currentTarget.dataset.submitOnEnd) {\n document.querySelector(e.currentTarget.dataset.submitOnEnd)?.submit();\n }\n } else {\n splide.go('+1');\n }\n });\n\n document.querySelector('.skip_slide')?.addEventListener('click', (e) => {\n e.preventDefault();\n hideModal(`#${slideModalId}`);\n Cookies.set(cookieName, true);\n });\n};\n\nconst initEbidsTableScripts = (() => {\n if (window.location.search.search('message_notification=true') === 1) {\n $('.ebids_details__title .location_actions .checkbox').trigger('click');\n }\n\n $('.switch-communication-panel').on('click', (e) => {\n e.preventDefault();\n $('.ebids_details__title .location_actions .checkbox').trigger('click');\n });\n});\n\nconst init = () => {\n if (!document.querySelector('[data-ebid-management]')) {\n return;\n }\n\n initEbidsTableScripts();\n updateEAMessages();\n showModal('#ea-intro');\n initIntroModal('intro-slide', 'intro_modal_disabled');\n initBulkActions();\n};\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('beforeunload', updateEAMessages);\n","import $ from 'jquery';\n\nconst init = () => {\n if (!document.querySelector('[data-payment-management]')) {\n return;\n }\n\n const paymentLineAmount = document.getElementById('payment_line');\n const paymentFormAmount = document.getElementById('payment_amount');\n const paymentBalance = document.getElementById('payment_balance');\n const transactionPaymentsBalance = document.getElementById('transaction_payments_balance');\n const balanceClass = document.getElementById('balance_color');\n const convertedAmountInput = document.getElementById('payment_converted_transaction_amount_cents');\n const paymentCurrency = document.getElementById('payment_amount_currency');\n\n function updateBalance() {\n setTimeout(() => {\n paymentFormAmount.value = paymentLineAmount.value;\n const aux = parseFloat(transactionPaymentsBalance.innerHTML);\n const rate = $('.selected').data('exchange-rate') || 1;\n const convertedAmount = paymentLineAmount.value * rate;\n const balance = parseFloat(aux - parseFloat(convertedAmount || 0)).toFixed(2);\n convertedAmountInput.value = convertedAmount * 100;\n paymentBalance.innerHTML = balance;\n if (balance >= 0) {\n balanceClass.className = 'tw-text-green-500';\n } else {\n balanceClass.className = 'tw-text-red-500';\n }\n }, 200);\n }\n\n paymentLineAmount.addEventListener('input', updateBalance);\n paymentCurrency.addEventListener('change', updateBalance);\n};\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from \"jquery\";\n\nconst initRegistrationEvents = () => {\n const editRegistrationId = $(\"#edit_registration_id\").val();\n const eventId = $(\"#event_id\").val();\n const organizationId = $(\"#organization_id\").val();\n\n if (editRegistrationId && eventId && organizationId) {\n $.ajax({\n url: `/organizations/${organizationId}/events/${eventId}/admin/registrations/${editRegistrationId}/booked_sessions`,\n type: \"GET\",\n dataType: \"script\",\n });\n }\n\n const overCapacity = $(\"#over_capacity\").val();\n\n if (overCapacity) {\n $(\"#over_capacity_modal\").modal(\"show\");\n }\n};\n\nconst init = () => {\n const registrationListing = document.querySelector(\n \"[data-registration-listing]\",\n );\n if (registrationListing) {\n initRegistrationEvents();\n }\n};\n\ndocument.addEventListener(\"DOMContentLoaded\", init);\n","import $ from 'jquery';\nimport videojs from 'video.js/dist/alt/video.core';\n\nconst scaleVideoOnResize = () => {\n const videoArea = $('.video_area');\n\n const scalevideo = (videoContent, videoWrapper) => {\n // Got the wrapper video height and width\n const areaWidth = videoWrapper.outerWidth();\n const areaHeight = videoWrapper.outerHeight();\n\n // Got the native video height and width\n const videoNativeWidth = videoContent[0].videoWidth;\n const videoNativeHeight = videoContent[0].videoHeight;\n\n // Got the scale factor\n const widthScaleFactor = areaWidth / videoNativeWidth;\n const heightScaleFactor = areaHeight / videoNativeHeight;\n\n // Got the highest scale factor\n const scale = (widthScaleFactor > heightScaleFactor) ? widthScaleFactor : heightScaleFactor;\n\n // Got the scaled video width and height\n const scaledVideoWidth = videoNativeWidth * scale;\n const scaledVideoHeight = videoNativeHeight * scale;\n\n // Set the new height and width to videoContent\n videoContent.width(scaledVideoWidth);\n videoContent.height(scaledVideoHeight);\n\n // Position video at the center\n const diffWidth = scaledVideoWidth - areaWidth;\n const diffHeight = scaledVideoHeight - areaHeight;\n\n // Calculate negative positions\n const videoLeft = (diffWidth > 0) ? (-1) * diffWidth / 2 : 0;\n const videoTop = (diffHeight > 0) ? (-1) * diffHeight / 2 : 0;\n\n // Set new styles\n videoContent.css('left', videoLeft);\n videoContent.css('top', videoTop);\n\n videoArea.animate({ opacity: 1 }, 500);\n };\n\n if (videoArea.length > 0) {\n // eslint-disable-next-line func-names\n videojs('background_video').ready(function () {\n const video = this;\n const poster = videoArea.parent().find('.background_image_wrapper');\n const content = $('#background_video video');\n const wrapper = $('section.event-landing');\n\n video.play();\n\n content.on('loadedmetadata', () => {\n scalevideo(content, wrapper);\n poster.fadeOut(300);\n });\n\n $(window).on('resize load', () => {\n scalevideo(content, wrapper);\n });\n });\n }\n};\n\nconst init = () => {\n if (document.querySelector('.video_area')) {\n scaleVideoOnResize();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from 'jquery';\nimport { getCSRFTokenValue } from '../../CsrfToken';\n\nconst initHotelModalSubmit = () => {\n $('.hotel-edit-submit').off('click').on('click', (e) => {\n const url = $(e.target).data('updateUrl');\n const curatedPropertyId = $(e.target).attr('data-curatedPropertyId');\n const numberOfRooms = $(`#number_of_rooms_${curatedPropertyId}`)[0].value;\n const cutOffDate = $(`#cut_off_date_${curatedPropertyId}`)[0].value;\n const dealDescription = $(`#deal_description_${curatedPropertyId}`)[0].value;\n\n $(e.target).parents('.modal').modal('hide');\n\n $.ajax({\n url,\n type: 'PUT',\n data: {\n id: curatedPropertyId,\n curated_property: {\n number_of_rooms: numberOfRooms,\n cut_off_date: cutOffDate,\n deal_description: dealDescription,\n },\n },\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n });\n });\n};\nwindow.initialize_hotel_modal_submit = initHotelModalSubmit;\n\nconst init = () => {\n if (document.querySelector('.hotel-edit-submit')) {\n initHotelModalSubmit();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('hotelcuration:init', init);\n","/* eslint-disable func-names */\nimport \"../styles/application.scss\";\nimport \"../stylesheets/application.scss\";\n\n/* eslint-disable import/newline-after-import */\n/* eslint-disable import/no-duplicates */\n/* eslint-disable no-multi-assign */\n/* eslint-disable global-require */\nimport $ from \"jquery\";\nwindow.$ = window.JQuery = window.jQuery = $;\n/* eslint-disable import/extensions */\n/* eslint-disable import/first */\n// eslint-disable-next-line import/no-unresolved\nrequire(\"semantic/semantic.min.js\");\n\nimport Rails from \"@rails/ujs\";\n\n// eslint-disable-next-line no-underscore-dangle\nif (!window._rails_loaded) {\n Rails.start();\n}\n\nimport \"../src/turbo_configuration\";\n\nimport * as ActiveStorage from \"@rails/activestorage\";\nActiveStorage.start();\n\n// Requires by the places autocomplete stimulus controller to\n// trigger the global google maps functions\nwindow.initPlacesAutocomplete = function () {\n const event = new Event('google-maps-callback', {\n bubbles: true,\n cancelable: true,\n })\n\n window.dispatchEvent(event)\n}\n\nrequire('@nathanvda/cocoon');\n\nimport \"../controllers/global_controllers\";\nimport \"../controllers/admin_controllers\";\n\n// ThirdParty Plugins\nimport \"../src/plugins/Clipboard\";\nimport initClipboardBtn from \"../src/plugins/Clipboard\";\nimport \"../src/plugins/ColorPicker\";\nimport \"../src/plugins/Filestack\";\nimport \"../src/plugins/FilestackSingle\";\nimport \"../src/plugins/Gmap\";\nimport \"../src/plugins/LocationAutocomplete\";\nimport \"../src/plugins/Print\";\nimport \"../src/plugins/Quill\";\nimport \"../src/plugins/SortableJS\";\nimport \"../src/plugins/Swiper\";\nimport \"../src/plugins/Tabby\";\nimport \"../src/plugins/Toastr\";\nimport \"../src/plugins/UserPilot\";\nimport {\n initCustomCheckboxes,\n initCustomSelects,\n initRangeInput,\n} from \"../src/plugins/FormFields\";\n\nimport \"../src/custom/Utils\";\nimport \"../src/custom/UrlParams\";\nimport \"../src/custom/ListScrollTo\";\nimport \"../src/custom/HeaderInit\";\n\nimport { initHideShowLinks } from \"../src/custom/InitApp\";\nimport \"../src/custom/Modal\";\nimport \"../src/custom/ScrollTo\";\nimport \"../src/custom/TableShadow\";\nimport { InitDashboardWebsiteContentScripts } from \"../src/custom/InitDashboard\";\nimport \"../src/custom/PasswordChange\";\nimport { initDatePicker } from \"../src/custom/DatetimeInit\";\nimport \"../src/custom/batch_actions\";\nimport \"../src/custom/multi_select_table\";\nimport \"../src/custom/organizations\";\nimport \"../src/custom/TableAccordion\";\nimport \"../src/custom/Questions\";\n\n// // All component\nimport \"../src/custom/components\";\n\n// // All admin scripts\nimport \"../src/custom/admin\";\n\n// // All event scripts\nimport \"../src/custom/events\";\nimport \"../src/custom/events/VideoBackground\";\nimport \"../src/custom/registration/Medpro\";\n\nimport { initCookiesAcceptance } from \"../src/custom/cookies\";\n\nimport \"imagesloaded\";\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n initCookiesAcceptance();\n initHideShowLinks();\n initDatePicker();\n initRangeInput();\n document.dispatchEvent(new Event(\"colorpicker:init\"));\n initCustomCheckboxes();\n initCustomSelects();\n InitDashboardWebsiteContentScripts();\n initClipboardBtn(\".clipboard-btn\");\n document.dispatchEvent(new Event(\"airportselector:rebind\"));\n});\n","import $ from 'jquery';\nimport { getCSRFTokenValue } from './CsrfToken';\n\nexport const initCookiesAcceptance = () => {\n $.ajax({\n url: '/cookie_acceptances',\n type: 'get',\n dataType: 'JSON',\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success(data) {\n if (!data.accepted) {\n $('#cookies-acceptance').addClass('show');\n }\n },\n });\n\n $('#cookies-acceptance .button.deny').on('click', () => {\n $.ajax({\n url: '/cookie_acceptances/new',\n type: 'get',\n dataType: 'JSON',\n headers: {\n 'X-CSRF-Token': getCSRFTokenValue(),\n },\n success() {\n $('#cookies-acceptance').removeClass('show');\n },\n });\n });\n};\n","document.addEventListener('DOMContentLoaded', () => {\n const menu = document.getElementById('menu');\n\n if (menu) {\n const menuIcon = menu.querySelector('.menu__icon');\n const menuContent = menu.querySelector('.menu__content');\n const menuCloseIcon = menu.querySelector('.menu__icon.close');\n\n if (menuCloseIcon) {\n menuCloseIcon.onclick = () => {\n menuContent.classList.toggle('show');\n };\n }\n\n if (menuIcon) {\n menuIcon.onclick = () => {\n menuContent.classList.toggle('show');\n };\n }\n\n document.dispatchEvent(new Event('accountpicker:init'));\n }\n});\n","import $ from \"jquery\";\nimport { initializeSemanticUI } from \"../plugins/SemanticUI\";\nimport initClipboardBtn from \"../plugins/Clipboard\";\nimport { initExporter, setExportDownloadLink } from \"./exporter\";\n\nexport const InitDashboardWebsiteContentScripts = () => {\n $(\".remove_video\").on(\"click\", (e) => {\n e.preventDefault();\n $(\"#website_cover_video_url\").val(\"\");\n $(e.target).parents(\".segment\").find(\".video_file\").slideUp(300);\n });\n initClipboardBtn(\".clipboard\");\n initializeSemanticUI();\n if (document.querySelector(\".all-data-link\")) {\n initExporter(setExportDownloadLink, \".all-data-link\");\n }\n};\n","const init = () => {\n document.querySelectorAll('.js_toggle_data').forEach((toggleButton) => {\n const tableRowId = toggleButton.getAttribute('data-row_id');\n const accordionRow = document.getElementById(`${tableRowId}_data`) || document.querySelectorAll(`.${tableRowId}_data`);\n const observerOptions = {\n childList: true,\n attributes: true,\n // Omit (or set to false) to observe only changes to the parent node\n subtree: false,\n };\n\n const toggleClass = (row, add) => {\n const data = row.querySelector('.gr-table-grid__data');\n if (add) {\n row.classList.add('opened');\n row.classList.remove('tw-hidden');\n data.classList.add('opened');\n } else {\n row.classList.remove('opened');\n row.classList.add('tw-hidden');\n data.classList.remove('opened');\n }\n };\n\n const toggleMutation = (mutationList) => {\n mutationList.forEach((mutation) => {\n const subQuestion = mutation.target.closest('.gr-table-grid__data');\n if (mutation.type === 'attributes' && mutation.target.classList.contains('visible')) {\n subQuestion.style.overflow = 'visible';\n } else {\n subQuestion.style.overflow = 'hidden';\n }\n });\n };\n\n toggleButton.addEventListener('click', () => {\n const subQuestionMenus = document.querySelectorAll('.gr-table-grid__data .ui.dropdown.gr-button');\n const observer = new MutationObserver(toggleMutation);\n\n subQuestionMenus.forEach((menuBtn) => {\n observer.observe(menuBtn, observerOptions);\n });\n\n if (toggleButton.classList.contains('opened')) {\n toggleButton.classList.remove('opened');\n if (!accordionRow.nodeName) {\n accordionRow.forEach((row) => toggleClass(row, false));\n } else {\n toggleClass(accordionRow, false);\n }\n } else {\n toggleButton.classList.add('opened');\n if (!accordionRow.nodeName) {\n accordionRow.forEach((row) => toggleClass(row, true));\n } else {\n toggleClass(accordionRow, true);\n }\n }\n });\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('tableaccordion:rebind', init);\n","const initButtonDropdowns = () => {\n document.querySelectorAll('.bttn-dropdown').forEach((el) => {\n el.addEventListener('click', () => {\n el.classList.toggle('bttn-dropdown--open');\n });\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n initButtonDropdowns();\n});\n","const initMedproSettingsForm = () => {\n const searchCheckbox = document.querySelector('#medpro_vendor_configuration_search_external_id_format');\n const updateCheckbox = document.querySelector('#medpro_vendor_configuration_update_external_id_format');\n searchCheckbox.addEventListener('change', () => {\n if (searchCheckbox.checked) {\n updateCheckbox.disabled = false;\n } else {\n updateCheckbox.checked = false;\n updateCheckbox.disabled = true;\n }\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('#medpro_conf_form')) {\n initMedproSettingsForm();\n }\n});\n","const init = () => {\n const DiscountForm = document.getElementById('discount_form');\n const hasId = (form) => {\n let id;\n if (form) {\n const actionArray = form.action.split('/');\n id = actionArray[actionArray.length - 1];\n }\n return !Number.isNaN(Number(id));\n };\n\n if (DiscountForm && !hasId(DiscountForm)) {\n // New Discount Page\n // Variables\n const discountTypeSelect = document.getElementById('discount_percent_value');\n const fixedAmountOption = document.getElementById('discount_amount_off');\n const percentOffOption = document.getElementById('discount_percent_off');\n const discountApplicationSelect = document.getElementById('discount_applies_to');\n const ticketList = document.getElementsByName('discount[applies_to_tickets][]');\n const ticketContainer = document.getElementById('discount_tickets_container');\n const currencyContainer = document.getElementById('discount_currency');\n const codesContainer = document.getElementById('discount_codes_container');\n const addCodeButton = document.getElementById('secondary_add_code_btn');\n const codeField = document.getElementById('discount_code_names');\n const error = document.querySelector('[data-error=\"field-error\"]');\n const errorObj = error ? JSON.parse(error.dataset.fieldErrorContent) : null;\n\n // Functions\n const displayError = (obj) => {\n if (obj) {\n const field = document.querySelector(`input[name=\"discount[${obj.field}]\"]`)\n || document.querySelector(`input[name=\"discount[${obj.field}][]\"]`);\n const errorText = document.querySelector(`[data-error=\"${obj.field}\"]`);\n\n if (field.classList.contains('flatpickr')) {\n const fieldWrapper = field.closest('.gr-input__input');\n fieldWrapper.classList.add('error');\n }\n\n if (field && errorText) {\n errorText.innerHTML = obj.message;\n errorText.classList.remove('hide');\n errorText.classList.add('tw-text-red-500');\n field.classList.add('error');\n }\n }\n };\n const discountType = (option) => {\n if (typeof option === 'boolean') {\n if (option) {\n // True - Percent On\n fixedAmountOption.parentNode.classList.add('hide');\n fixedAmountOption.classList.add('hide');\n currencyContainer.classList.add('hide');\n percentOffOption.parentNode.classList.remove('hide');\n percentOffOption.classList.remove('hide');\n } else {\n // False - Fixed Amount On\n fixedAmountOption.parentNode.classList.remove('hide');\n fixedAmountOption.classList.remove('hide');\n currencyContainer.classList.remove('hide');\n percentOffOption.parentNode.classList.add('hide');\n percentOffOption.classList.add('hide');\n }\n }\n };\n\n const discountApplication = (option) => {\n if (typeof option === 'boolean' && ticketList.length) {\n if (option) {\n // True - Applies to all\n ticketContainer.classList.add('hide');\n ticketList.forEach((ticket) => {\n ticket.checked = true;\n });\n } else {\n // False - Applies to specific - checked only\n ticketContainer.classList.remove('hide');\n }\n }\n };\n\n const addCodeField = () => {\n const wrapper = codeField.parentNode.cloneNode(true);\n const field = wrapper.children.namedItem('discount_code_names');\n const trashBtn = document.createElement('i');\n trashBtn.classList.add('icon', 'trash', 'alternate', 'ml-1', 'mt-1', 'button');\n const rowBreak = document.createElement('br');\n\n field.removeAttribute('id');\n field.value = '';\n\n if (field.classList.contains('error')) {\n field.classList.remove('error');\n }\n\n wrapper.appendChild(trashBtn);\n codesContainer.appendChild(rowBreak);\n codesContainer.appendChild(wrapper);\n\n trashBtn.addEventListener('click', () => {\n wrapper.remove();\n rowBreak.remove();\n });\n };\n\n // Default\n discountType(JSON.parse(discountTypeSelect.value));\n discountApplication(JSON.parse(discountApplicationSelect.value));\n displayError(errorObj);\n\n // Listeners\n discountTypeSelect.addEventListener('change', (event) => {\n discountType(JSON.parse(event.target.value));\n });\n discountApplicationSelect.addEventListener('change', (event) => {\n discountApplication(JSON.parse(event.target.value));\n });\n addCodeButton.addEventListener('click', () => {\n addCodeField();\n });\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","const initResourceTypeSwitch = () => {\n document.querySelector('#resource_type').addEventListener('change', (e) => {\n const el = e.currentTarget;\n if (el.value === 'LinkResource') {\n document.querySelector('#document_uploader').setAttribute('hidden', 'hidden');\n document.querySelector('#resource_label').removeAttribute('hidden');\n } else {\n document.querySelector('#resource_label').setAttribute('hidden', 'hidden');\n document.querySelector('#document_uploader').removeAttribute('hidden');\n }\n });\n};\n\nconst init = () => {\n if (document.querySelector('#resource_form')) {\n initResourceTypeSwitch();\n }\n};\ndocument.addEventListener('DOMContentLoaded', init);\n","// app/javascript/src/channels/consumer.js\n// Action Cable provides the framework to deal with WebSockets in Rails.\n// You can generate new channels where WebSocket features live using the `bin/rails generate channel` command.\n\nimport { createConsumer } from '@rails/actioncable';\n\nexport default createConsumer();\n","const setState = (select) => {\n const hideClass = select.dataset.conditionalSelectContainer;\n document.querySelectorAll(hideClass).forEach((container) => {\n if (container.classList.contains(`${select.value}`)) {\n container.style.display = 'block';\n } else {\n container.style.display = 'none';\n }\n });\n};\n\nconst selectChanged = (ev) => {\n const select = ev.currentTarget;\n setState(select);\n};\n\nconst init = () => {\n document.querySelectorAll('.conditional-select').forEach((select) => {\n setState(select);\n select.addEventListener('change', selectChanged);\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","const bindFilteredTextBox = (elem) => {\n elem.addEventListener('keydown', (e) => {\n const pattern = new RegExp(e.currentTarget.dataset.filterPattern);\n const result = pattern.test(e.key);\n if (!result) {\n e.preventDefault();\n return false;\n }\n return true;\n });\n};\n\nconst init = () => {\n document.querySelectorAll('[data-filter-pattern]').forEach((elem) => {\n bindFilteredTextBox(elem);\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from 'jquery';\n\nexport const initMoreLessScript = () => {\n $('.js-section-more').on('click', (e) => {\n e.preventDefault();\n const parent = $(e.target).parents('.page_section');\n parent.addClass('detailed');\n });\n\n $('.js-section-less').on('click', (e) => {\n e.preventDefault();\n const parent = $(e.target).parents('.page_section');\n parent.removeClass('detailed');\n });\n};\n\nconst init = () => {\n if (document.querySelector('.js-section-more')) {\n initMoreLessScript();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","const updateProgressBar = (event) => {\n const progressBar = document.querySelector('[data-progress-bar]');\n if (event?.detail?.progress !== null) {\n progressBar.style.width = `${event.detail.progress}%`;\n }\n};\n\ndocument.addEventListener('progressbar:update', updateProgressBar);\n","const init = () => {\n document.querySelectorAll('[data-removable-tag-link]').forEach((el) => {\n el.addEventListener('click', (e) => {\n const link = e.currentTarget;\n const tag = link.closest('[data-removable-tag]');\n tag.parentNode.removeChild(tag);\n });\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\ndocument.addEventListener('removabletag:init', init);\n","import $ from 'jquery';\nimport Cookies from 'js-cookie';\nimport moment from 'moment-timezone';\n\nconst railsTimezone = require('rails-timezone');\n\nconst setShortTimezone = (target, selectedOptionText) => {\n const text = selectedOptionText || target.text();\n const index = text.indexOf(') ');\n const content = text.substring(0, index + 1);\n\n if (index > -1) {\n target.text(content);\n }\n};\n\nexport const updateTimes = () => {\n if (document.querySelectorAll('[data-dt-utc]').length) {\n const tz = railsTimezone.from(Cookies.get('timezone'));\n if (tz != null) {\n document.querySelectorAll('[data-dt-utc]').forEach((el) => {\n const formatString = el.dataset.dtFormat || 'ddd MMM D h:m A';\n const time = moment.utc(el.dataset.dtUtc).tz(tz).format(formatString);\n if (time !== null) {\n el.innerHTML = time;\n }\n });\n\n document.querySelectorAll('[data-dt-show-timezone]').forEach((el) => {\n const abbr = moment.tz(tz).format('z');\n el.innerHTML = abbr;\n });\n }\n }\n};\n\nexport const initTimezoneScripts = () => {\n const displayTimes = (zone) => {\n if (zone === null) {\n const guessedTimezone = moment.tz.guess();\n const tz = railsTimezone.to(guessedTimezone);\n Cookies.set('timezone', tz);\n }\n setShortTimezone($('.js_time_zone_dropdown .text'));\n };\n\n document.querySelector('.js_time_zone_dropdown').addEventListener('change', (e) => {\n const tz = $(e.target).val();\n Cookies.set('timezone', tz);\n setShortTimezone($('.js_time_zone_dropdown .text'), $(e.target)[0].selectedOptions[0].text);\n updateTimes();\n });\n displayTimes(Cookies.get('timezone'));\n};\n\nconst init = () => {\n if (document.querySelector('.js_time_zone_dropdown')) {\n initTimezoneScripts();\n }\n updateTimes();\n};\n\n// This is dependent on the semantic dropdowns being defined before this runs\ndocument.addEventListener('semanticui:initialized', init);\n","const init = () => {\n if (!document.querySelector('[data-transaction-management]')) {\n return;\n }\n\n document.querySelector('#save_and_pay')?.addEventListener('click', (e) => {\n e.preventDefault();\n document.querySelector('#pay_toggle').value = '1';\n const form = document.getElementById(e.currentTarget.getAttribute('form'));\n form.submit();\n });\n};\ndocument.addEventListener('DOMContentLoaded', init);\n","const init = () => {\n if (!document.querySelector('[data-vendor-management]')) {\n return;\n }\n\n document.querySelector('.sub_type')?.addEventListener('click', () => {\n document.querySelector(\"[name='financial_transaction[main_type]']\").value = this.dataset.mainType;\n });\n};\ndocument.addEventListener('DOMContentLoaded', init);\n","import $ from 'jquery';\nimport moment from 'moment';\n\nrequire('jquery-countdown');\n\nexport const showCountdownClock = (finalDate) => {\n const targetDate = moment.utc(finalDate, 'YYYY-MM-DD hh:mm:ss zz');\n $('#countdownClock').countdown(targetDate.toDate(), (e) => {\n const $el = $(e.target);\n const days = e.strftime('%D');\n const hrs = e.strftime('%H');\n const mins = e.strftime('%M');\n const secs = e.strftime('%S');\n\n $el.find('#days').find('.value').html(days);\n $el.find('#hrs').find('.value').html(hrs);\n $el.find('#mins').find('.value').html(mins);\n $el.find('#secs').find('.value').html(secs);\n }).on('finish.countdown', () => {});\n};\n\nexport const showCountdownLabel = (finalDate, label) => {\n $('#countdownClock')\n .countdown(finalDate, (e) => {\n $(e.target)\n .html(e.strftime(`%Dd %Hh %Mm ${label}`));\n }).on('finish.countdown', () => {});\n};\n\nexport const showCountdowns = () => {\n document.querySelectorAll('[data-target-date]').forEach((el) => {\n const targetDate = moment.utc(el.dataset.targetDate, 'YYYY-MM-DD hh:mm:ss zz');\n\n $(el).countdown(targetDate.toDate(), (e) => {\n const $el = $(e.target);\n const days = e.strftime('%D');\n const hrs = e.strftime('%H');\n const mins = e.strftime('%M');\n const secs = e.strftime('%S');\n\n $el.find('#days').find('.value').html(days);\n $el.find('#hrs').find('.value').html(hrs);\n $el.find('#mins').find('.value').html(mins);\n $el.find('#secs').find('.value').html(secs);\n });\n });\n};\n\nconst bindCountdownLabel = () => {\n document.querySelectorAll('[data-countdown-finaldate').forEach((el) => {\n if (el.dataset.countdownLabel) {\n showCountdownLabel(el.dataset.countdownFinaldate, el.dataset.countdownLabel);\n }\n });\n};\n\ndocument.addEventListener('DOMContentLoaded', bindCountdownLabel);\n\nwindow.showCountdownClock = showCountdownClock;\nwindow.showCountdownLabel = showCountdownLabel;\n","import $ from 'jquery';\n\nexport const initIBSearchScripts = (maxRooms) => {\n const updateRoomNights = () => {\n let number = 0;\n $('.select_rooms select').each((ind, el) => {\n const thisValue = +$(el).val();\n number += thisValue;\n\n if (number > parseInt(maxRooms, 10)) {\n $('.room_warning').show();\n $('.reserve_button').hide();\n } else {\n $('.room_warning').hide();\n $('.reserve_button').show();\n }\n\n const roomNights = parseInt($('.total_nights').text(), 10) * number;\n\n $('.room_count')\n .text(number);\n\n $('.room_nights')\n .text(roomNights);\n });\n };\n\n const selectedRoomsAmount = () => $.makeArray($('.select_rooms select')).map(\n (elem) => parseInt($(elem).val(), 10),\n ).reduce(\n (prev, elem) => prev + elem,\n );\n\n const updateReserveButton = () => {\n $('input.reserve_button').prop('disabled', !(selectedRoomsAmount() > 0));\n };\n\n $('#filter-menu .item').on('click', (e) => {\n $('.rooms_list tr').show();\n $('.rooms_list tr.no_results').hide();\n $(`.rooms_list tr.${$(e.target).data('hide')}`).hide();\n if ($('.rooms_list tr:visible').length === 0) {\n $('.rooms_list tr.no_results').show();\n }\n });\n\n $('.select_rooms select').on('change', () => {\n updateRoomNights();\n });\n\n $('.regbook_room_details__info').on('click', (e) => {\n $(e.target).addClass('loading');\n });\n\n $('.select_rooms select').on('change', () => {\n updateReserveButton();\n });\n\n updateReserveButton();\n updateRoomNights();\n};\n","import $ from \"jquery\";\nimport { getCSRFTokenValue } from \"../CsrfToken\";\n\n\nexport const checkProposalRequestStatus = (elem) => {\n if (elem === null) {\n return;\n }\n\n const url = elem.dataset.pollingUrl;\n const delay = elem.dataset.pollingDelay;\n\n setTimeout(() => {\n $.ajax({\n dataType: \"script\",\n url,\n type: \"GET\",\n headers: {\n \"X-CSRF-Token\": getCSRFTokenValue(),\n },\n });\n }, delay);\n};\n","import { saveAs } from \"file-saver\";\nimport consumer from \"./consumer\";\n\nimport toastr from \"../../plugins/Toastr\";\n\nexport const subscribeDownloadChannel = (uuid, callback, postAction) => {\n window.App.download = consumer.subscriptions.create(\n { channel: \"ExporterChannel\", uuid },\n {\n connected() {\n callback();\n },\n disconnected() {},\n received(data) {\n const filename = data.filename || \"download.xlsx\";\n\n // Sometimes this triggers a CORS error but the library has a fallback so do not log it\n saveAs(data.url, filename);\n\n consumer.subscriptions.remove(window.App.download);\n consumer.disconnect();\n delete window.App.download;\n\n if (typeof postAction !== \"undefined\") {\n postAction(uuid, data);\n }\n toastr.clear();\n },\n },\n );\n};\n","import $ from \"jquery\";\nimport Rails from \"@rails/ujs\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { i18n } from \"./Internationalization\";\nimport { subscribeDownloadChannel } from \"./channels/exporter\";\nimport toastr from \"../plugins/Toastr\";\n\nexport const initExporter = (callback, selector = \".exporter-link\") => {\n $(selector).on(\"click\", (e) => {\n e.preventDefault();\n const uuid = uuidv4();\n const currentHref = $(e.currentTarget).attr(\"href\");\n const url = currentHref.includes(\"?\")\n ? `${currentHref}&uuid=${uuid}`\n : `${currentHref}?uuid=${uuid}`;\n\n // Update link classes to prevent multiple highlighting, add closing of dropdown for exporter links, and show spinner for exporter links\n $(selector).removeClass(\"active selected\");\n $(selector).parent().find(\".active\").removeClass(\"active selected\");\n $(e.currentTarget).addClass(\"active selected\");\n const printDropdown = $('[data-loading-icon=\"spinner\"]');\n if (printDropdown) {\n printDropdown.trigger(\"click\");\n printDropdown.find(\".g-icon-chevron-down\").addClass(\"tw-hidden\");\n printDropdown.find(\".spinner\").removeClass(\"tw-hidden\");\n }\n\n subscribeDownloadChannel(\n uuid,\n () => {\n $.get(url);\n },\n callback,\n );\n return false;\n });\n\n $(\".exporter-form\").on(\"submit\", (e) => {\n e.preventDefault();\n const form = $(e.target);\n const uuid = uuidv4();\n form.children(\".uuid\").val(uuid);\n toastr.warning(i18n.t(\"cross_report.success\"), \"\", {\n timeOut: 0,\n iconClass: \"toast-warning-loading\",\n });\n subscribeDownloadChannel(\n uuid,\n () => {\n form.off(\"submit\");\n Rails.fire(form[0], \"submit\");\n },\n callback,\n );\n return false;\n });\n};\nwindow.initExporter = initExporter;\n\nexport const setExportDownloadLink = (uuid, data) => {\n const downloadReadyNotice = document.querySelector(\"#download-ready-notice\");\n const downloadPendingNotice = document.querySelector(\n \"#download-pending-notice\",\n );\n\n if (downloadReadyNotice && downloadPendingNotice) {\n downloadPendingNotice.classList.add(\"hide\");\n downloadReadyNotice.classList.remove(\"hide\");\n }\n\n const downloadLink = document.querySelector(\"#download-link\");\n if (downloadLink && data.url) {\n downloadLink.href = data.url;\n }\n const printDropdown = document.querySelector('[data-loading-icon=\"spinner\"]');\n if (printDropdown) {\n printDropdown\n .querySelector(\".g-icon-chevron-down\")\n .classList.remove(\"tw-hidden\");\n printDropdown.querySelector(\".spinner\").classList.add(\"tw-hidden\");\n }\n};\n\nconst init = () => {\n if (document.querySelector(\".exporter-link\")) {\n initExporter(setExportDownloadLink);\n }\n};\ndocument.addEventListener(\"DOMContentLoaded\", init);\n","import Clipboard from 'clipboard';\nimport $ from 'jquery';\n\nconst initClipboardBtn = (selector) => {\n const btnElement = selector || '.clipboard-btn';\n const clipboard = new Clipboard(btnElement);\n\n const setTooltip = (btn, message) => {\n $(btn).popup({\n position: 'bottom center',\n preserve: true,\n lastResort: true,\n transition: 'fade down',\n content: message,\n target: btn,\n on: 'click',\n }).popup('show');\n };\n\n const hideTooltip = (btn) => {\n setTimeout(() => {\n $(btn).popup('hide');\n }, 1000);\n };\n\n clipboard.on('success', (e) => {\n setTooltip(e.trigger, 'Copied!');\n hideTooltip(e.trigger);\n });\n\n clipboard.on('error', (e) => {\n setTooltip(e.trigger, 'Failed!');\n hideTooltip(e.trigger);\n });\n};\ndocument.addEventListener('DOMContentLoaded', () => {\n if (document.querySelector('[data-clipboard-action]')) {\n initClipboardBtn('[data-clipboard-action]');\n }\n});\n\ndocument.addEventListener('clipboard:init', (e) => {\n initClipboardBtn(e.selector);\n});\n\nexport default initClipboardBtn;\n","import Rails from \"@rails/ujs\";\nimport $ from \"jquery\";\n\nexport const initCustomCheckboxes = () => {\n document\n .querySelectorAll(\n \".toggle.checkbox input[type=checkbox], .autosubmit.checkbox input[type=checkbox]\",\n )\n .forEach((elem) => {\n if (!elem.classList.contains(\"no-submit\")) {\n elem.addEventListener(\"change\", (e) => {\n const form = e.target.closest(\"form\");\n Rails.fire(form, \"submit\");\n });\n }\n });\n\n const setConditionallyRequired = (input) => {\n const targetOptionalLabels = input.attr(\"data-optional\");\n\n if (input.is(\":checked\")) {\n $(`.${targetOptionalLabels}`).each((ind, el) => {\n $(el).text($(el).data(\"optional-text\"));\n });\n } else {\n $(`.${targetOptionalLabels}`).each((ind, el) => {\n $(el).text($(el).data(\"required-text\"));\n });\n }\n };\n\n const initCustomCheckbox = (element) => {\n const disableField = (field, show, $mainInput) => {\n $(field).each((ind, el) => {\n const $currentInputWrapper = $(el);\n const $eventWrapper = $currentInputWrapper.find(\".checkbox--disable\");\n const $currentInput = $currentInputWrapper.find(\"input\");\n const currentInputState = $currentInput.prop(\"checked\");\n $currentInputWrapper\n .find(\".ui.checkbox\")\n .toggleClass(\"disabled\", !show);\n $currentInputWrapper.find(\".ui.input\").toggleClass(\"disabled\", !show);\n $currentInputWrapper.find(\".ui.button\").toggleClass(\"disabled\", !show);\n $currentInputWrapper\n .find(\".ui.dropdown\")\n .toggleClass(\"disabled\", !show);\n $currentInput.prop(\"disabled\", !show);\n\n if (\n $currentInput.data(\"disabled-value\") &&\n $currentInput.data(\"disabled-value\") !== \"undefined\" &&\n !show\n ) {\n $currentInput.val($currentInput.data(\"disabled-value\"));\n }\n\n if ($eventWrapper) {\n $eventWrapper.toggleClass(\"show\", !show);\n $eventWrapper.unbind(\"click\").bind(\"click\", () => {\n if (!show) {\n $mainInput.prop(\"checked\", true).trigger(\"change\");\n $currentInput.prop(\"checked\", !currentInputState);\n }\n });\n }\n });\n };\n\n const $input = element;\n\n const targetFieldToDisable = $input.attr(\"data-disable-field\");\n if (targetFieldToDisable) {\n const currentInitState = $input.prop(\"checked\");\n disableField(`.${targetFieldToDisable}`, currentInitState, $input);\n\n $input.bind(\"change\", (e) => {\n const currentFieldState = $(e.target).prop(\"checked\");\n disableField(`.${targetFieldToDisable}`, currentFieldState, $input);\n });\n }\n\n const targetFieldToEnable = $input.attr(\"data-enable-field\");\n if (targetFieldToEnable) {\n const currentInitState = $input.prop(\"checked\");\n disableField(`.${targetFieldToEnable}`, !currentInitState, $input);\n\n $input.bind(\"change\", (e) => {\n const currentFieldState = $(e.target).prop(\"checked\");\n disableField(`.${targetFieldToEnable}`, !currentFieldState, $input);\n });\n }\n\n const hideEffect = $input.attr(\"data-effect\");\n // This whole thing is replacable with the conditional-display stimulus controller\n // It is left here for legacy until refactored out\n const targetFieldToHide = $input.attr(\"data-hide-field\");\n if (targetFieldToHide) {\n if ($input.prop(\"checked\")) {\n $(`.${targetFieldToHide}`).show();\n $(`.${targetFieldToHide}`)\n .find(\"input\")\n .each((ind, el) => {\n $(el).prop(\"disabled\", false);\n });\n } else {\n $(`.${targetFieldToHide}`).hide();\n $(`.${targetFieldToHide}`)\n .find(\"input\")\n .each((ind, el) => {\n $(el).prop(\"disabled\", true);\n });\n }\n\n $input.bind(\"change\", (e) => {\n if ($(e.target).prop(\"checked\")) {\n if (hideEffect === \"fade\") {\n $(`.${targetFieldToHide}`).fadeIn();\n } else {\n $(`.${targetFieldToHide}`).slideDown(300);\n }\n\n $(`.${targetFieldToHide}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", false);\n });\n } else {\n if (hideEffect === \"fade\") {\n $(`.${targetFieldToHide}`).fadeOut();\n } else {\n $(`.${targetFieldToHide}`).slideUp();\n }\n\n $(`.${targetFieldToHide}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", true);\n });\n }\n });\n }\n\n const targetFieldToShow = $input.attr(\"data-show-field\");\n if (targetFieldToShow) {\n if (!$input.prop(\"checked\")) {\n $(`.${targetFieldToShow}`).show();\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((ind, el) => {\n $(el).prop(\"disabled\", false);\n });\n } else {\n $(`.${targetFieldToShow}`).hide();\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", true);\n });\n }\n\n $input.bind(\"change\", (e) => {\n if (!$(e.target).prop(\"checked\")) {\n if (hideEffect === \"fade\") {\n $(`.${targetFieldToShow}`).fadeIn();\n } else {\n $(`.${targetFieldToShow}`).slideDown(300);\n }\n\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", false);\n });\n } else {\n if (hideEffect === \"fade\") {\n $(`.${targetFieldToShow}`).fadeOut();\n } else {\n $(`.${targetFieldToShow}`).slideUp();\n }\n\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", true);\n });\n }\n });\n }\n\n const targetOptionalLabels = $input.attr(\"data-optional\");\n if (targetOptionalLabels) {\n // If this exists\n // And the input is checked\n // Mark all conditionally-required as optional\n // else\n // Mark all conditionally-required as required\n if (!$input.prop(\"checked\")) {\n $(`.${targetFieldToShow} label.conditionally-required`);\n $(`.${targetFieldToShow} label.conditionally-required`).text();\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((ind, el) => {\n $(el).prop(\"disabled\", false);\n });\n } else {\n $(`.${targetFieldToShow}`).hide();\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((ind, el) => {\n $(el).prop(\"disabled\", true);\n });\n }\n\n $input.bind(\"change\", (e) => {\n if (!$(e.target).prop(\"checked\")) {\n if (hideEffect === \"fade\") {\n $(`.${targetFieldToShow}`).fadeIn();\n } else {\n $(`.${targetFieldToShow}`).slideDown(300);\n }\n\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", false);\n });\n } else {\n if (hideEffect === \"fade\") {\n $(`.${targetFieldToShow}`).fadeOut();\n } else {\n $(`.${targetFieldToShow}`).slideUp();\n }\n\n $(`.${targetFieldToShow}`)\n .find(\"input\")\n .each((indx, elem) => {\n $(elem).prop(\"disabled\", true);\n });\n }\n });\n }\n\n if ($input.attr(\"data-optional\")) {\n setConditionallyRequired($input);\n $input.bind(\"change\", () => {\n setConditionallyRequired($input);\n });\n }\n\n $(\".ui.sticky\").sticky(\"refresh\");\n };\n\n const initCustomRadiobox = (element) => {\n const $input = element;\n\n const targetFieldToHide = $input.attr(\"data-hide-field\");\n const targetFieldToShow = $input.attr(\"data-show-field\");\n\n const targetFieldToDisable = $input.attr(\"data-disable-field\");\n const targetFieldToEnable = $input.attr(\"data-enable-field\");\n\n const targetFieldToCheck = $input.attr(\"data-set-checked\");\n\n if ($input.prop(\"checked\")) {\n if (targetFieldToShow) {\n $(`.${targetFieldToShow}`).show();\n }\n\n if (targetFieldToHide) {\n $(`.${targetFieldToHide}`).hide();\n }\n\n if (targetFieldToDisable) {\n $(`.${targetFieldToDisable}`).addClass(\"disabled\");\n $(`.${targetFieldToDisable}`).prop(\"disabled\", true);\n }\n\n if (targetFieldToEnable) {\n $(`.${targetFieldToDisable}`).removeClass(\"disabled\");\n $(`.${targetFieldToDisable}`).prop(\"disabled\", false);\n }\n\n if (targetFieldToCheck) {\n $(`.${targetFieldToCheck}`).prop(\"checked\", true);\n }\n }\n\n $input.bind(\"change\", (e) => {\n const disableClearTarget = $(e.currentTarget).data(\"disable-field-clear\");\n if (disableClearTarget) {\n $(`.${disableClearTarget}`).removeClass(\"disabled\");\n $(`.${disableClearTarget}`).prop(\"disabled\", false);\n }\n\n const enableClearTarget = $(e.currentTarget).data(\"enable-field-clear\");\n if (enableClearTarget) {\n $(`.${enableClearTarget}`).addClass(\"disabled\");\n $(`.${enableClearTarget}`).prop(\"disabled\", true);\n }\n\n if ($(e.target).prop(\"checked\")) {\n if (targetFieldToShow) {\n if ($(`.${targetFieldToShow}`).is(\":hidden\")) {\n $(`.${targetFieldToShow}`).slideDown(300);\n }\n }\n\n if (targetFieldToHide) {\n if ($(`.${targetFieldToHide}`).is(\":visible\")) {\n $(`.${targetFieldToHide}`).slideUp(300);\n }\n }\n\n if (targetFieldToDisable) {\n $(`.${targetFieldToDisable}`).addClass(\"disabled\");\n $(`.${targetFieldToDisable}`).prop(\"disabled\", true);\n }\n\n if (targetFieldToEnable) {\n $(`.${targetFieldToEnable}`).removeClass(\"disabled\");\n $(`.${targetFieldToEnable}`).prop(\"disabled\", false);\n }\n\n if (targetFieldToCheck) {\n $(`.${targetFieldToCheck}`).prop(\"checked\", true);\n }\n }\n });\n\n $(\".ui.sticky\").sticky(\"refresh\");\n };\n\n $(\n \".conditional.checkbox input[type=checkbox], input[type=radio].conditional\",\n ).each((ind, el) => {\n initCustomCheckbox($(el));\n });\n\n $(\n \".conditional.checkbox input[type=radio], input[type=radio].conditional\",\n ).each((_, el) => {\n initCustomRadiobox($(el));\n });\n\n $(\".select_all\").checkbox({\n onChecked() {\n const items = $(this).parent().attr(\"data-items\");\n $(`.${items}`).each((ind, el) => {\n $(el).checkbox(\"check\");\n });\n $(\"#selected_count\").removeClass(\"hide\");\n },\n onUnchecked() {\n const items = $(this).parent().attr(\"data-items\");\n $(`.${items}`).each((ind, el) => {\n $(el).checkbox(\"uncheck\");\n });\n $(\"#selected_count\").addClass(\"hide\");\n },\n });\n};\nwindow.initCustomCheckboxes = initCustomCheckboxes;\n\n// Selects\nexport const initCustomSelects = () => {\n $(\".conditional.select select\").each((ind, el) => {\n const $input = $(el);\n const targetFieldToToggle = $input.attr(\"data-conditional-field\");\n\n if (targetFieldToToggle) {\n if ($input.val() === \"true\") {\n $(`.${targetFieldToToggle}_false`).hide();\n $(`.${targetFieldToToggle}_true`).show();\n } else {\n $(`.${targetFieldToToggle}_true`).hide();\n $(`.${targetFieldToToggle}_false`).show();\n }\n\n $input.on(\"change\", () => {\n if ($input.val() === \"true\") {\n $(`.${targetFieldToToggle}_true`).slideDown();\n $(`.${targetFieldToToggle}_false`).slideUp();\n } else {\n $(`.${targetFieldToToggle}_false`).slideDown();\n $(`.${targetFieldToToggle}_true`).slideUp();\n }\n });\n }\n });\n};\nwindow.initCustomSelects = initCustomSelects;\n\n// Range Input\nexport const initRangeInput = () => {\n $(\"input[type=range].range\").each((ind, el) => {\n const $labelEl = $(el).parent().find(\"label\");\n $(el)\n .on(\"input\", (e) => {\n $(e.target).trigger(\"change\");\n })\n .on(\"change\", (e) => {\n const value = $(e.target).val();\n $labelEl.find(\"span\").text(value);\n });\n });\n};\n","const init = () => {\n if (document.querySelector('[data-print-layout]')) {\n window.print();\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n","const init = () => {\n const userpilotElem = document.querySelector('[data-userpilot-data]');\n\n if (userpilotElem) {\n if (userpilotElem.dataset.userpilotData) {\n const decoded = atob(userpilotElem.dataset.userpilotData);\n const obj = JSON.parse(decoded);\n if (obj.id) {\n window.userpilot.identify(obj.id, obj);\n }\n }\n }\n};\n\ndocument.addEventListener('DOMContentLoaded', init);\n"],"names":["_default","_Controller","_classCallCheck","_callSuper","arguments","_inherits","key","value","this","element","classList","remove","dispatch","Controller","_this","_len","length","args","Array","_key","concat","ev","document","querySelector","target","getAttribute","getElementById","submit","_defineProperty","hasSelectAllTarget","selectAllTarget","checked","checkboxTargets","forEach","checkbox","filter","parentNode","add","dataset","defaultAttendeeType","event","allChecked","elem","currentTarget","options","series","chart","type","height","stacked","stackType","toolbar","show","plotOptions","bar","horizontal","barHeight","dataLabels","total","enabled","stroke","width","colors","xaxis","categories","pointContainerTarget","name","labels","axisBorder","axisTicks","yaxis","grid","position","padding","top","right","bottom","left","tooltip","legend","itemMargin","vertical","fill","opacity","pointValueTargets","t","push","data","parseInt","color","el","ApexCharts","render","buildObjectIdsField","objectIdsTarget","checkedValues","csvToNumberArray","totalRecordsTarget","innerHTML","endRecordTarget","querySelectorAll","row","_row$querySelector","_row$parentNode","rowId","Number","removedIds","indexOf","removeChild","hasRecordBlockTarget","targets","startRecordTarget","singlePageEndMessageTarget","singlePageStartMessageTarget","amount","paginationMessageTarget","e","preventDefault","_row$parentNode2","id","eventid","index","cleanRemovedEvents","join","allEventsTarget","syncCount","syncObjectIds","uuid","outerHTML","url","i18n","toastr","clear","reportType","selectEvents","downloadBtn","addEventListener","downloadButton","switchPaginationMessage","enableDownloadButton","initExporter","afterDownload","initButtons","objectIdsField","buildObjectIdsTarget","_toConsumableArray","Set","isNaN","selectedCountTarget","tagName","dispatchEvent","Event","bubbles","addEvent","removeEvent","reportNameField","allEventsField","syncCheckboxes","extCount","button","countDisplay","icon","formData","FormData","formTarget","formCount","entries","count","clearbtnTarget","replace","updateFilterCount","btn","startDatePicker","clearDatePicker","endDatePicker","clearfilters","allEventsIds","JSON","parse","alleventsids","includes","checkboxes","rowCheckboxTargets","startDate","endDate","modalContainer","closest","destroy","flatpickr","startDateTarget","dateFormat","defaultDate","Date","defaultValue","appendTo","onOpen","selectedDates","set","onChange","open","formatToUTCDate","handleSearchAndFilterChange","onClose","endDateTarget","resetFormData","setAttribute","CustomEvent","handleFilterClear","initDatePicker","reportNameTarget","handleReset","bind","handleSubmitEnd","handleUpdateEvents","hasFormTarget","removeEventListener","context","onFrameLoad","initAllFlatpickrMulti","datesTarget","initDatePickerInBlock","initAccordion","stopPropagation","detail","field_name","expenseTypeNameTarget","isHidden","nameFieldTarget","focus","setSelectionRange","nameDisplayContainerTarget","_e$detail","container_id","nameDisplayTarget","innerText","slice","scrollIntoView","behavior","attendeeTypeId","newFieldMappingButton","fieldMappingBaseUrl","removeQuerystring","href","defaultMappingsButton","baseUrl","table","newUrl","frameTarget","src","inviteBody","bodyTarget","invitePasscode","passcodeNotice","allCheckboxTarget","optionTargets","option","setSelectedText","setFilters","hasSelectedTarget","selectedCount","selectedIdsTargets","getCounts","selected","translation","selectedTarget","selected_count","filtersSet","searchForm","selectedIds","getSelectedIds","addHiddenField","hideTypeahead","keys","get","input","createElement","append","selectedItems","hasPreselectedTarget","preselectedTarget","recordId","hasTypeaheadTarget","typeaheadTarget","items","all","listing","selectedAll","totalCount","recordCount","success","selectAllEveryPage","allCheckboxCount","selectorTargets","checkedCount","clearPaginationParam","clearSelectedAll","allTarget","setCheckedCount","allPagesTarget","hasNoticeTarget","noticeTarget","totalRecordCount","setPaginationParam","hasPaginationTarget","paginationTarget","a","URL","searchParams","toString","_this$organizationsTa","organizationId","organizationsTarget","responseKind","dropdownTarget","triggerTarget","amountValue","setSuccess","errorsValue","setError","idValue","expenseReportId","expenseReportIdValue","errors","String","expenseProgressMapping","expenseIdsValue","allExpensesFinished","_i","_Object$entries","Object","_Object$entries$_i","_slicedToArray","showExpenseLink","showSuccess","link","successTarget","savingTarget","_this2","errorTarget","errorMessagesTarget","messages","message","errorItem","appendChild","createTextNode","expenseIds","mandatoryTarget","displayTarget","enableTarget","showWarning","hasToggleWarningValue","toggleWarningValue","timeOut","iconClass","toggleWarning","inviteTypeTarget","submitButtonTarget","linkMessageTarget","privateTarget","previewUrl","previewTarget","showModal","filterSelector","elements","filterFormTarget","initSortable","listId","item","field","handler","callback","onstart","container","setOrder","ind","undefined","fieldEl","sortable","Sortable","draggable","handle","onStart","onEnd","evt","dataIdAttr","animation","easing","ghostClass","window","updateSortOrder","orderUrl","axios","put","newDraggableIndex","parseFloat","console","log","totalAmountDiv","textContent","toFixed","_this$thresholdValueT","thresholdValueTarget","updateThreshold","sliderTargets","slider","updateGroupWeights","updateDisplayValue","changedSlider","group","targetId","labelTarget","adjustGroupWeights","displayElement","labelTargets","find","groupSliders","changedValue","otherSliders","s","remaining","totalOther","reduce","sum","currentVal","newValue","Math","max","min","error","abs","adjustableSlider","application","register","AccountPickerController","AddSubquestionController","AttendeeTypeSelectorController","ChartController","CrossEventReportsController","CrossEventReportsModalController","CrossEventReportsTurboFrameController","EventBookingPagesSearchDatesController","ExpenseController","ExpenseReportController","FieldMappingController","InternalMessagesController","InvitePreviewController","MultiCheckboxController","MultiSelectActionsController","MultiSelectTableController","OrgEventTypeController","PreviewTemplateSelectionController","ProgressController","PushExpenseReportController","RegistrationFieldController","RegistrationResponsesController","RegistrationInvite","SearchAndFilterController","SortableTableController","TotalAmountController","MatcherSlidersController","ColorPicker","init","$","each","_","minicolors","theme","renderFileDetails","_nameField","fileDetailsContainer","detailsContainer","fieldSelector","nameField","nameSelector","file","filename","fileObjectFromUrlName","filestackButton","clone","content","firstElementChild","cloneNode","getFilestackUrlForFile","style","display","previewFilestackFile","inputField","fpGroupize","maxFiles","transformations","crop","onUploadDone","filesFailed","filesUploaded","uploadedFile","updatedOptions","_objectSpread","transformationsUI","fromSources","picker","bindFilestackSingle","registerGooglePlacesAutocomplete","$el","model","gpAutocomplete","google","maps","places","Autocomplete","addListener","place","getPlace","geometry","lat","location","lng","locationName","formatted_address","adr_address","text","prefix","locationNameField","timeZoneField","headers","getCSRFTokenValue","response","nodeName","dropdown","time_zone","fillInLatLng","hasAttribute","mapEl","locationMapId","title","initMap","addressComponents","address","getAddressObject","city","addressLine1","addressLine2","postalCode","countryField","country","presetState","stateOrProvince","fillInAddress","address_components","trigger","on","parents","removeAttr","initLocationAutocomplete","displayModel","locationModel","locationCallback","QuillFilestackUploader","quill","range","filestack","warn","defaults","defaultFilestackOptions","uploadInBackground","accept","res","insertToEditor","getModule","addHandler","selectImage","handleDrop","handlePaste","root","getSelection","dataTransfer","files","caretRangeFromPoint","selection","clientX","clientY","setBaseAndExtent","startContainer","startOffset","_selection","_range","caretPositionFromPoint","offsetNode","offset","setTimeout","uploadToFilestack","then","result","err","Sentry","captureException","_this3","clipboard","clipboardData","IMAGE_MIME_REGEX","i","test","getAsFile","match","upload","Promise","resolve","insertEmbed","setSelection","initEditors","ph","contains","placeholder","Quill","modules","quillFilestackUploader","editor","themeClass","colorToggle","parentElement","toggle","setHiddenFieldText","getSemanticHTML","updateLimit","limit","textLength","getLength","deleteText","initWysiwygEditor","Font","sanitize","lowerUrl","toLowerCase","startsWith","normalizeUrl","defaultProtocol","removeTrailingSlash","stripWWW","whitelist","defaultOptions","direction","loop","nextButton","prevButton","pagination","_e$detail2","selector","Swiper","initSwiper","off","$containerPosition","scrollTo","initTableShadow","setTableShadow","tId","tableView","tableElement","parent","toggleClass","scrollLeft","scrollWidth","clientWidth","passInput","listMinLength","listHasUppercase","listHasLowercase","listHasNumber","listHasSymbol","oninput","passValue","className","initializeSemanticUI","setBulkActionsStatus","$container","hasSelectedItems","initBatchActions","appendBulkParams","$table","attr","ids","itemIds","dataId","getBulkIds","init_batch_actions","initMembersActions","map","locked","val","split","onLabelCreate","html","initMultiSelectTable","allSelected","joinOptions","current","trim","selectedOpts","unselectedOpts","toggleSelected","parentRowClass","$containerElem","$msgElem","unselectedCount","noun","addClass","removeClass","addToOptions","removeFromOptions","splice","selectItem","$elem","prop","onChecked","removeFromUnSelected","onUnchecked","addToUnSelected","setSelectedCheckboxes","memberId","pop","modal","onApprove","notify","dataType","keyFn","code","click","keyListener","deleteBtns","MutationObserver","answers","toTop","hasClass","thisOptions","allowCategorySelection","refresh","observe","childList","attributes","subtree","answerId","localStorage","getItem","subQuestions","c","filterName","filterValue","clearMultiUrlParameterAndReload","clearUrlParameterAndReload","setConditionalButtonState","select","hideClass","conditionalButtonContainer","selectChanged","detailedConfirmSelector","form","setExistingRegistrationId","registrationId","tableContainer","approvalToggleUrl","typeId","typeName","headerSelector","header","_headerSelector","_header","active","responseJSON","initOrgApprovalEvents","modalId","appendData","tempInput","appendDataSubmit","getUrlParameter","appendFilterParams","URLSearchParams","search","previewText","promoText","selectedBrands","accountId","first","account_id","brand_ids","initCustomCheckboxes","is","initCustomSelects","confirmModalId","setUniqIds","slideUp","validateTemplates","eventRegex","strBackup","query","validateAssignExpertTemplate","inviteRegex","websiteRegex","inviteCondition","websiteCondition","validateInviteTemplate","autofocus","answer","initEventsDashboardScripts","initializeEventTypeManagement","eventTypeId","createSubTypeOption","sub_type","typeInput","titleize","filterButton","mainInput","subTypeDropdown","subTypeOptionContainer","ajax","main_type","dropdownContainer","selectedSubType","selectedSubTypeValue","typeResults","hiddenInput","selectOption","addDefaultSubTypeOptions","sub_types","addSubtTypes","checkNumber","numberOfCheckedOptions","initFlightConfigurations","containerSelector","$mandatoryField","$displayField","prev","next","checkDisplayWithMandatoryFields","hide","removedItem","ignore","override","syncText","matchingInputDisplay","insertedItem","originalEvent","sectionCount","$parentRowId","initialize_get_organizations","isChecked","toggleUrl","initialize_question_events","dropdownLabel","activeSelection","isIconSet","selectedOptions","selectedValue","uuidv4","prevObject","removeItem","setItem","modalView","initReadOnly","setupRoomBlockValidation","$btn","hideParent","initializePreValidationForm","onclick","formId","validationPath","serialize","resp","valid","validateAndSubmit","addedRoom","randomizeAccordionSelector","fadeOut","initSessionEditing","toggleContainer","cleanCheckboxName","checkboxesBookable","from","box","bookableOptions","isBookable","fields","some","v","toggleDisabled","disabledValue","disabled","cb","toggleContent","elemToToggle","keyup","term","speakers","getElementsByClassName","speaker","tracks","track","sponsors","sponsor","initToggleScript","parentContainer","contentArea","isOpened","slideToggle","newId","nanoid","initBulkActions","tableId","originalUrl","section","label","bidIds","updateEAMessages","method","eaMessagesUrl","initIntroModal","_document$querySelect2","slideModalId","cookieName","slideContainer","numSlides","numberOfSlides","splide","Splide","cover","arrows","mount","newIndex","disabledModal","Cookies","_document$querySelect","hideModal","setModalDisableCookie","submitOnEnd","go","paymentLineAmount","paymentFormAmount","paymentBalance","transactionPaymentsBalance","balanceClass","convertedAmountInput","paymentCurrency","updateBalance","aux","rate","convertedAmount","balance","editRegistrationId","eventId","videoArea","scalevideo","videoContent","videoWrapper","areaWidth","outerWidth","areaHeight","outerHeight","videoNativeWidth","videoWidth","videoNativeHeight","videoHeight","widthScaleFactor","heightScaleFactor","scale","scaledVideoWidth","scaledVideoHeight","diffWidth","diffHeight","videoLeft","videoTop","css","animate","videojs","ready","poster","wrapper","play","initHotelModalSubmit","curatedPropertyId","numberOfRooms","cutOffDate","dealDescription","curated_property","number_of_rooms","cut_off_date","deal_description","initialize_hotel_modal_submit","JQuery","jQuery","require","_rails_loaded","Rails","start","ActiveStorage","initPlacesAutocomplete","cancelable","accepted","initHideShowLinks","initRangeInput","InitDashboardWebsiteContentScripts","initClipboardBtn","menu","menuIcon","menuContent","menuCloseIcon","setExportDownloadLink","toggleButton","tableRowId","accordionRow","observerOptions","toggleMutation","mutationList","mutation","subQuestion","overflow","subQuestionMenus","observer","menuBtn","searchCheckbox","updateCheckbox","DiscountForm","actionArray","action","hasId","discountTypeSelect","fixedAmountOption","percentOffOption","discountApplicationSelect","ticketList","getElementsByName","ticketContainer","currencyContainer","codesContainer","addCodeButton","codeField","errorObj","fieldErrorContent","discountType","discountApplication","ticket","obj","errorText","displayError","children","namedItem","trashBtn","rowBreak","removeAttribute","addCodeField","createConsumer","setState","conditionalSelectContainer","RegExp","filterPattern","bindFilteredTextBox","_event$detail","progressBar","progress","tag","railsTimezone","setShortTimezone","selectedOptionText","substring","updateTimes","tz","formatString","dtFormat","time","moment","dtUtc","format","abbr","zone","guessedTimezone","guess","to","displayTimes","mainType","showCountdownLabel","finalDate","countdown","strftime","showCountdowns","targetDate","toDate","days","hrs","mins","secs","countdownLabel","countdownFinaldate","showCountdownClock","initIBSearchScripts","maxRooms","updateRoomNights","number","thisValue","roomNights","updateReserveButton","checkProposalRequestStatus","pollingUrl","delay","pollingDelay","subscribeDownloadChannel","postAction","App","download","consumer","subscriptions","create","channel","connected","disconnected","received","saveAs","disconnect","currentHref","printDropdown","warning","fire","downloadReadyNotice","downloadPendingNotice","downloadLink","btnElement","Clipboard","setTooltip","popup","preserve","lastResort","transition","hideTooltip","setConditionallyRequired","targetOptionalLabels","disableField","$mainInput","$currentInputWrapper","$eventWrapper","$currentInput","currentInputState","unbind","$input","targetFieldToDisable","currentInitState","currentFieldState","targetFieldToEnable","_currentInitState","hideEffect","targetFieldToHide","fadeIn","slideDown","indx","targetFieldToShow","sticky","initCustomCheckbox","targetFieldToCheck","disableClearTarget","enableClearTarget","targetFieldToToggle","$labelEl","print","userpilotElem","userpilotData","decoded","atob","userpilot","identify"],"sourceRoot":""}