{"version":3,"sources":["webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/Programs.vue?2cc5","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/Programs.ts","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/Programs.vue?9890","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/Programs.vue?fe5b","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/Programs.vue","webpack:///./src/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.vue?0ec9","webpack:///./src/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.ts","webpack:///./src/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.vue?b7c2","webpack:///./src/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.vue?2abf","webpack:///./src/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.vue","webpack:///./src/assets/images/smartTableImages/settings-purple.svg","webpack:///./src/assets/images/smartTableImages/checkbox_sprite_lightgrey copy.svg","webpack:///./src/Model/shared/types.ts","webpack:///./src/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.less?3021","webpack:///./src/assets/images/smartTableImages/sort-z-to-a-purple.svg","webpack:///./src/assets/images/smartTableImages/checkbox_minus.svg","webpack:///./src/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.less?0b02","webpack:///./src/services/programs/api.ts","webpack:///./src/store/modules/Programs/mutationNames.ts","webpack:///./src/store/modules/Programs/module.ts","webpack:///./src/assets/images/smartTableImages/checkbox_sprite_lightgrey.svg","webpack:///./src/assets/images/smartTableImages/sort-z-to-a-white.svg","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/AddEditProgram.vue?1387","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/AddEditProgram.vue?bc42","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/AddEditProgram.vue?423d","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/AddEditProgram.vue","webpack:///./src/commoncomponents/smartTableComponents/displayColumnFilter/DisplayColumnFilter.vue?6e9f","webpack:///./src/commoncomponents/smartTableComponents/displayColumnFilter/DisplayColumnFilter.ts","webpack:///./src/commoncomponents/smartTableComponents/displayColumnFilter/DisplayColumnFilter.vue?f005","webpack:///./src/commoncomponents/smartTableComponents/displayColumnFilter/DisplayColumnFilter.vue?5227","webpack:///./src/commoncomponents/smartTableComponents/displayColumnFilter/DisplayColumnFilter.vue","webpack:///./src/commoncomponents/smartTableComponents/displayColumnFilter/DisplayColumnFilter.less?8a84","webpack:///./src/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.vue?7f8c","webpack:///./src/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.ts","webpack:///./src/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.vue?0f28","webpack:///./src/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.vue?47c6","webpack:///./src/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.vue","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/AddEditProgram.vue?1ad0","webpack:///./src/assets/images/icon-blue/filled-right-arrow.svg","webpack:///./node_modules/core-js/modules/es.map.js","webpack:///./src/assets/images/common-icon/search.svg","webpack:///./src/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.vue?73f7","webpack:///./src/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.ts","webpack:///./src/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.vue?719e","webpack:///./src/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.vue?5e83","webpack:///./src/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.vue","webpack:///./src/Model/forms/types.ts","webpack:///./src/store/modules/table.ts","webpack:///./src/commoncomponents/actionsdropdowncomponent/ActionsDropdown.vue?9e1d","webpack:///./src/commoncomponents/actionsdropdowncomponent/ActionsDropdown.ts","webpack:///./src/commoncomponents/actionsdropdowncomponent/ActionsDropdown.vue?8dbb","webpack:///./src/commoncomponents/actionsdropdowncomponent/ActionsDropdown.vue?dcbd","webpack:///./src/commoncomponents/actionsdropdowncomponent/ActionsDropdown.vue","webpack:///./src/store/modules/Sessions/mutationNames.ts","webpack:///./src/store/modules/Sessions/module.ts","webpack:///./src/popupcomponents/cancelConfirmation/CancelConfirmation.less?c069","webpack:///./src/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.less?fb7d","webpack:///./src/assets/images/smartTableImages/closeIconBlack.svg","webpack:///./src/commoncomponents/smartTableComponents/SmartTableContainer.vue?b819","webpack:///./src/commoncomponents/smartTableComponents/SmartTableContainer.ts","webpack:///./src/commoncomponents/smartTableComponents/SmartTableContainer.vue?69dc","webpack:///./src/commoncomponents/smartTableComponents/SmartTableContainer.vue?84a1","webpack:///./src/commoncomponents/smartTableComponents/SmartTableContainer.vue","webpack:///./src/assets/images/smartTableImages/search.svg","webpack:///./src/assets/images/smartTableImages/sort-z-to-a-green.svg","webpack:///./src/commoncomponents/smartTableComponents/sortingSearchingActions/SortingSearchingActions.less?64d9","webpack:///./src/assets/images/scholars/add-new-scholars/arrowDown.svg","webpack:///./src/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.less?59d2","webpack:///./src/assets/images/cloud.svg","webpack:///./src/assets/images/smartTableImages/sort-arrow-icon.svg","webpack:///./src/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.vue?b31e","webpack:///./src/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.ts","webpack:///./src/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.vue?2e01","webpack:///./src/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.vue?77f2","webpack:///./src/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.vue","webpack:///./src/assets/images/smartTableImages sync ^\\.\\/.*\\.svg$","webpack:///./src/assets/images/smartTableImages/filter-white.svg","webpack:///./src/commoncomponents/smartTableComponents/SmartTableContainer.less?2916","webpack:///./src/popupcomponents/cancelConfirmation/CancelConfirmation.vue?5425","webpack:///./src/popupcomponents/cancelConfirmation/CancelConfirmation.ts","webpack:///./src/popupcomponents/cancelConfirmation/CancelConfirmation.vue?632a","webpack:///./src/popupcomponents/cancelConfirmation/CancelConfirmation.vue?03b7","webpack:///./src/popupcomponents/cancelConfirmation/CancelConfirmation.vue","webpack:///./src/assets/images/smartTableImages/sort-a-to-z-green.svg","webpack:///./src/Model/sessions/types.ts","webpack:///./src/assets/images/smartTableImages/sort-a-to-z-white.svg","webpack:///./src/commoncomponents/actionsdropdowncomponent/ActionsDropdown.less?3271","webpack:///./src/assets/images/smartTableImages/settings.svg","webpack:///./src/components/accountDetailsComponent/accountDataTabs/programs/Programs.less?b7cd","webpack:///./src/assets/images/smartTableImages/sort-a-to-z-blue.svg","webpack:///./public/images/Vector.svg","webpack:///./src/assets/images/smartTableImages/sort-z-to-a-blue.svg","webpack:///./src/assets/images/account/bell.svg","webpack:///./src/services/sessions/api.ts","webpack:///./src/assets/images/smartTableImages/sort-a-to-z-purple.svg","webpack:///./src/commoncomponents/smartTableComponents/sortingSearchingActions/SortingSearchingActions.vue?2601","webpack:///./src/commoncomponents/smartTableComponents/sortingSearchingActions/SortingSearchingActions.ts","webpack:///./src/commoncomponents/smartTableComponents/sortingSearchingActions/SortingSearchingActions.vue?1054","webpack:///./src/commoncomponents/smartTableComponents/sortingSearchingActions/SortingSearchingActions.vue?f93f","webpack:///./src/commoncomponents/smartTableComponents/sortingSearchingActions/SortingSearchingActions.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","isAddEditProgramVisible","on","$event","_e","class","roleId","isAccountAdmin","actionsDropdown","programsList","performAction","_v","_s","programsData","totalActiveProgramsCount","responseStatus","isActionsDD","tableHeaders","totalProgramsCount","displayColumn","programsPayload","programsSearchObj","searchLists","programResizesData","programsListAllData","sortData","searchData","getDataForPage","viewProgramDetails","navigateToProgramAdmin","filterColumns","filterDisplayColumn","presistResize","programList","length","ignoredActionPrograms","popupInstructions","closeActionIgnoredPopup","selectedPrograms","resetTask","closePopup","staticRenderFns","Programs","APP_CONST","PROGRAMS_TABLE_HEADER","PROGRAMS_ACTIONS_DROPDOWN","programListResponse","header","values","first","second","displayAll","initialTotalItems","localConst","programsModule","ProgramsModule","currentUserRole","APP_UTILITIES","getCookie","ZERO","allowedRolesAddProgram","ROLES","BX_SUPER_ADMIN","BX_ADMIN","ACCOUNT_ADMIN","canAddProgram","some","r","forEach","program","startDate","formatShortDate","endDate","noOfSites","noOfScholar","enrolledScholars","selected","tableStore","allDataSelected","elementChecked","programId","programName","allSelect","unSelectData","setProgramTypeValues","programListStore","mutateProgramFilterObject","JSON","parse","stringify","MOVABLE","mutateCurrentObj","programType","programStatus","isExactMatch","storedAccountId","mutateProgramsPayload","PROGRAM_PAYLOAD","currentProgramsPayload","id","parseInt","mutateAllProgramListdata","currentProgramListPayloadForFullData","getFullProgramsData","then","getProgramList","coreids","Boolean","programsHeaders","data","userRoles","accountId","program_id","program_name","userData","PROGRAM_ADMIN_ROLE_ID","headerStore","mutateBxState","setCookie","accountData","accountName","ONE","$router","push","$emit","getAllProgramsData","res","programTypeList","programsListData","mutateSelectAll","mutateFewCheckData","mutateAllSelectedData","mutateUnSelectedData","mutateSelectStatus","element","document","getElementById","checked","key","addProgram","enableDisableProgram","TWO","getSelectedPrograms","unSelectedIds","selectedIds","selectAll","map","UIkit","modal","show","hide","clearSelection","status","payload","selectAllPayload","page","count","active","sortField","sortDir","searchField","search","notSelectedIds","isAllSelected","programIds","allProgramDataSelected","decodeURIComponent","isLoaderVisible","response","RESPONSE_200","elem","scrollTo","addTaskDto","programData","programStartDate","programEndDate","productId","resetTaskProgram","toString","mutateSitesPayload","siteListPayload","Number","setTimeout","RESET_FETCH_PROGRAM_DATA","APP_ROUTES","ACCOUNT_PROGRAMS_SESSIONS","catch","e","console","log","isSelected","column","display","clearAllColumns","mutateProgramSettingsData","searchObj","sortObjc","isSearchFieldFixed","FIXED","value","indexOf","isSortFieldFixed","MINUS_ONE","PROGRAM_NAME","mutateProgramsSearchObj","mutateSortPayload","columnName","resize","mutateProgramResizeData","sortObj","sortDirection","idx","findIndex","list","accountInfo","HUNDRED","Vue","Component","components","SmartTableContainer","BouncingPreloaderComponent","ActionsDropdown","CancelConfirmation","ActionIgnoredPopup","AddEditProgram","component","drill","showCheckBox","directives","name","rawName","showSettings","expression","componentName","highestRole","sessionAdminId","openGearDropdown","type","_k","keyCode","closeGearIcon","target","currentTarget","ref","tab","enter","limitOneCheckbox","selectAllCheckboxClass","tableData","domProps","limitSelectAllToCurrentPage","currentPageSelection","anySelected","isSelectAll","selectAllRecords","_l","index","SearchField","theme","style","width","sortIcon","isOpen","openSortingDropdown","hoverIndex","callHover","callHoverOut","refInFor","userId","disableCheckbox","selectParticularRecord","staticStyle","navigateToPage","hasOwnProperty","FixedTableComponent","selectedTableRecords","nonSelectedData","isSameUser","SESSION_ADMIN_ROLE_ID","isMobileForAPiCall","tabKey","enterKey","val","previouslySelectedRadioInput","clearRadioInput","SUPER_USER_DRILLDOWN","drilldrown","getElementsByClassName","parentElement","stickyLeftDiv","paddingLeft","scrollWidth","table","isSortingSearching","pos","getBoundingClientRect","x","left","y","top","FOURTY_FIVE","headers","originalHeader","selectAllRecordsOnCurrentPage","halfDataChecked","selectParticularRecordOnCurrentPage","siteId","splice","row","addRowToSelectedRecords","removeRowFromSelectedRecords","rowKey","rowIndex","selectedRow","addData","allListData","filter","n","n2","deactive","totalItems","total_items","allUnSelectData","event","focus","preventDefault","clickedRadioInput","$refs","Array","isArray","castObject","fewCheckedData","allSelected","tableRow","checkboxSelectAllClasses","checkboxClasses","ROLE_TYPE_BX_ADMIN","ROLE_TYPE_SUPER_ADMIN","tslib_1","Prop","default","Watch","deep","immediate","DisplayColumnFilter","module","exports","SortDirection","Status","FamilyPortalStatus","ProfileStatus","getProgramTypes","httpCMSClient","get","API_CONST","GET_PRODUCTS","httpClient","post","CONFIGURE_PROGRAM","getProgramData","GET_PROGRAM_DATA","updateProgram","put","EDIT_PROGRAM_UPDATE","programDto","FETCH_PROGRAM_TYPES_REQUESTED","FETCH_PROGRAM_TYPES_SUCCEEDED","FETCH_PROGRAM_TYPES_FAILED","RESET_FETCH_PROGRAM_TYPES","SET_PROGRAM_TYPES","SAVE_PROGRAM_REQUESTED","SAVE_PROGRAM_SUCCEEDED","SAVE_PROGRAM_FAILED","RESET_SAVE_PROGRAM","FETCH_PROGRAM_DATA_REQUESTED","FETCH_PROGRAM_DATA_SUCCEEDED","FETCH_PROGRAM_DATA_FAILED","SET_PROGRAM_DATA","programTypes","isFetchingProgramTypes","didFetchProgramTypesFail","fetchProgramTypesFailedError","isSavingProgram","didSaveProgramFail","saveProgramFailedError","isInitialFetchingProgramData","isFetchingProgramData","didFetchProgramDataFail","fetchProgramDataFailedError","_a","_b","error","_d","_f","_g","_j","_m","_o","_p","apiErrorResponse","errorToApiErrorResponse","newProgramId","VuexModule","Mutation","Action","Module","namespaced","store","dynamic","getModule","isAddEditProgramVisibleSync","onBeforeClose","onClose","formTitle","programNameLabel","modifiers","shouldApplyErrorClassForProgramName","programNameMaxLength","composing","$set","trim","onInputProgramName","$forceUpdate","formFieldStates","errorMessage","programStartDateLabel","startDateDatepickerInputClass","programStartDateMax","startDateOpenDate","onChangeProgramStartDate","programEndDateLabel","endDateDatepickerInputClass","programEndDateMin","endDateOpenDate","onChangeProgramEndDate","programSessionDateConflictHint","programEnrollmentGoalLabel","programEnrollmentGoalQualifierLabel","shouldApplyErrorClassForProgramEnrollmentGoal","programEnrollmentGoalMaxLength","forceNumberInput","_n","onInputProgramEnrollmentGoal","programEnrollmentGoal","programTypeLabel","programTypeDropdownListOptions","onSelectProgramType","programDescriptionLabel","shouldApplyErrorClassForProgramDescription","programDescriptionMaxLength","onInputProgramDescription","programDescription","onCancel","cancelButtonText","saveProgressButtonState","isValidForProgressButton","saveButtonText","onSubmit","footerErrorMessage","isCancelConfirmationVisible","onContinueConfirmation","screenText","ScreenText","sessionsModule","SessionsModule","programEnrollmentGoalMin","programEnrollmentGoalMax","defaultInitialProgramData","skipCancelConfirmation","hasUserSubmitted","initialProgramData","getDefaultFormFieldValidationState","ApiErrorType","Error_ProgramNameExistsInAccount","formFieldState","FormValidationError","DUPLICATE","valid","fetchProgramTypes","isEditMode","changes","dirty","field","initial","current","hasChanges","checkFormValid","checkFormFieldChanges","MAX_LENGTH","getScreenText","REQUIRED","MIN","undefined","TYPE","MAX","selection","find","pt","hasFormChanges","resetForm","allowSubmit","isFormValid","prepDate","date","formatFullYearDate","toISOString","accountIdCookie","numberOfScholars","initialStatus","programAdminId","isFinalSubmit","validationMode","isProgramDateChanged","accId","description","previousProductId","previousProgramTypeId","onProgramUpdate","createProgram","checkProgramNameValid","checkProgramStartDateValid","checkProgramEndDateValid","checkProgramEnrollmentGoalValid","checkProgramTypeValid","checkProgramDescriptionValid","Object","shouldApplyErrorClassForFormField","startOrEndDate","formFieldDate","today","Date","isPastDate","storeProgramData","dropdownList","programTypeId","programTypeName","singleSelect","showSelectLabel","errorText","shouldShowErrorForFormField","sessionStartDateTimes","sessions","session","startDateTime","sessionStartDateTimesExist","earliestSessionStartDate","reduce","prev","cur","getTime","sessionEndDateTimes","endDateTime","sessionEndDateTimesExist","furthestOutSessionEndDate","message","isProgramNameDuplicateApiError","isUnknownApiError","Error_Unknown","doAnyFormFieldsHaveSpecificError","getDatepickerInputClass","PropSync","required","Emit","OffCanvas","DatepickerComponent","DropdownList","ProgressButton","BouncingPreloader","removeClass","onDropdownOpen","hoverState","_i","toggleAllColumns","$$a","$$el","$$c","$$v","$$i","concat","slice","checkAllColumns","allColumns","activeIndex","dropdownElementList","activeIndexLetter","counter","activeIndexElement","callToggle","tabPress","enterPress","eventName","stopPropagation","querySelector","dropdownMenuListItems","children","input","String","fromCharCode","selectAllElement","classList","add","drop","remove","scrollIntoView","test","iterationCount","i","innerText","charAt","toLowerCase","inp","dropdownMenuItems","STYLE","COLOR","PRIMARY_700","collection","collectionStrong","init","arguments","close","instructions","records","tableHeader","VeeValidateProviderMode","TableModule","programQuery","filteredObj","ACCOUNTS_HEADER","accountSettingsObj","allSelectedData","fewChecked","accountResizeData","resizableArray","resizeObj","authKey","commonSearchInputSave","selectStatus","authTokenKeyToManage","setFilteredColumns","obj","keyIndex","maxWidth","minWidth","query","commit","toggleDropDown","toggleDrop","keyValue","disable","dropDownHandler","objScreenText","dropdownElement","activeLetter","activeElement","keyName","blur","dropdownLists","closeDropdown","escFocus","FALSE","ADD_PRIVILEGES_ACTION","SEND_INVITATION_ACTION","RESET_PASSWORD_ACTION","selectedStatus","MutationNames","SUPRESS_GLOBAL_ERROR_POPUP","GlobalMutationNames","FETCH_SESSIONS_REQUESTED","FETCH_SESSIONS_SUCCEEDED","FETCH_SESSIONS_FAILED","RESET_FETCH_SESSIONS","SET_SESSIONS","CLEAR_SESSIONS","SAVE_SESSION_REQUESTED","SAVE_SESSION_SUCCEEDED","SAVE_SESSION_FAILED","RESET_SAVE_SESSION","totalSessionCount","isFetchingSessions","didFetchSessionsFail","fetchSessionsFailedError","isSavingSessions","didSessionsSaveFail","sessionSaveFailedError","errorMessages","ErrorMessages","getSessionResponse","results","totalSetCount","request","getPagedSessionsForProgram","newSession","context","root","addNewSession","updateSession","content","programsArrow","closeSortingDropdown","showEditIcon","hoverRow","calculateTableWidth","selectionChanged","isSearching","isResizer","resizesData","togglePanelActive","movableTableHeaders","navigateToProgram","showPagination","paginationProps","isShow","itemsPerPage","showItemsPerPageSelector","itemsPerPageChanged","deleteCell","getPage","sortingDropdownStyleObj","isMobileView","hoveredTableId","hoveredRowIndex","mobileAndTabletCheck","body","tableId","fixedTable","movableTable","coordObj","xCord","yCord","handleSortingArrows","fromClearSelection","setWidth","numberOfItems","MovableTableComponent","PaginationComponent","SortingSearchingActions","getColumnWidth","openSortingDropdownFixedMobile","getStatus","dynamicHeight","decidedWidth","isTooltip","hoverText","cellIndex","includes","split","dynamicWidth","elementScroller","offsetWidth","leftTableEle","scrollTimeout","headerLength","mainContainerWidth","tableWidth","hoverId","hoverStyleObj","safeMargin","$route","path","box","widthfixed","firstChild","movable","fixedHeaders","TEAM_ROSTER_HEADER","totalFixedWidth","totalMovableWidth","resizeCols","noOfresizableColumns","resizeElement","item","spaceToAdjust","widthDivide","Math","floor","colWidth","movableTableHeader","movableTableData","scrollLeft","enableResizer","window","addEventListener","closePanelMobile","closePanel","el","onMouseWheel","createResizableTable","deltaX","scrollerView","d","wheelDelta","detail","clearTimeout","cols","querySelectorAll","col","resizer","createElement","height","offsetHeight","appendChild","createResizableColumn","colm","className","w","mouseDownHandler","clientX","styles","getComputedStyle","mouseMoveHandler","mouseUpHandler","dx","removeEventListener","updateScrollBar","setHeight","columnAvaiable","tableHeight","mainContainer","FIVE_HUNDRED_FIFTY","scrollBar","overflowX","FIFTY","FOURTEEN","xPosPercent","innerWidth","SEVENTY_FIVE","elemen","action","deviceWidth","documentElement","clientWidth","parent","hoverTextLength","tagName","STRONG_UPPERCASE","boundBox","coordX","coordY","position","stopImmediatePropagation","mobileFixedTableHeaders","head","filteredHead","filterKey","groupedColumns","childHead","scrollAndHeight","tableCells","cell","Map","set","has","webpackContext","req","webpackContextResolve","__webpack_require__","o","Error","code","keys","resolve","instructionFor","programsCount","continueCancel","isVisible","isElementShowing","$el","isToggled","util","isVisibleSync","defaultPrevented","hasContinueEvent","previousRouteDetails","returnTo","FilterOption","SortOption","AutoEnrollmentFilter","SESSIONS_END_POINT","getSessionsForProgram","PROGRAM_SESSIONS_ENDPOINT","url","encodeURIComponent","Undefined","pageItemCount","sessionAutoEnrollmentFilter","All","isSort","resetSearch","listElement","filterValue","searchFromList","searchInputValues","updatecommonSearchArray","updateSearchValue","fromList","searchValue","openDropDownSearchListIdx","selectElement","unselectElement"],"mappings":"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","file":"js/chunk-386d27bc.0332b667faa0548f7754.1732066582532.min.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[(_vm.canAddProgram)?_c('AddEditProgram',{attrs:{\"isAddEditProgramVisible\":_vm.isAddEditProgramVisible},on:{\"update:isAddEditProgramVisible\":function($event){_vm.isAddEditProgramVisible=$event},\"update:is-add-edit-program-visible\":function($event){_vm.isAddEditProgramVisible=$event}}}):_vm._e(),(_vm.programListResponse)?_c('div',{staticClass:\"program-container\"},[_c('div',{staticClass:\"action-wrapper\",class:[\n (_vm.roleId < 5 && _vm.roleId !== 0) || _vm.isAccountAdmin ? '' : 'justify-right' ]},[(_vm.isActionsDD)?_c('div',{staticClass:\"actions-div\"},[_c('actions-dropdown',{attrs:{\"dropdownList\":_vm.actionsDropdown,\"content\":_vm.programsList},on:{\"performAction\":_vm.performAction}})],1):_vm._e(),_c('span',{staticClass:\"active-programs\"},[_vm._v(\" \"+_vm._s(\"Total Active Programs: \")),_c('span',{staticClass:\"font-weight-normal\"},[_vm._v(_vm._s(_vm.programsData && _vm.programsData.totalActiveProgramsCount ? _vm.programsData.totalActiveProgramsCount : \"--\"))])])]),(_vm.programsData.responseStatus == 200)?_c('div',{staticClass:\"table-wrapper\"},[_c('programs-table',{attrs:{\"showCheckBox\":_vm.isActionsDD,\"content\":_vm.programsList,\"headers\":_vm.tableHeaders,\"total_items\":_vm.programsData && _vm.programsData.totalProgramsCount,\"displayColumn\":_vm.displayColumn,\"isSortingSearching\":true,\"payload\":_vm.programsPayload,\"search\":_vm.programsSearchObj,\"searchLists\":_vm.searchLists,\"componentName\":'programs-table',\"resizesData\":_vm.programResizesData,\"isResizer\":true,\"allListData\":_vm.programsListAllData},on:{\"sortData\":_vm.sortData,\"searchData\":_vm.searchData,\"selectedPage\":function($event){return _vm.getDataForPage($event)},\"navigateToPage\":_vm.viewProgramDetails,\"navigateToProgram\":function($event){return _vm.navigateToProgramAdmin($event)},\"filterColumns\":_vm.filterColumns,\"filterDisplayColumn\":_vm.filterDisplayColumn,\"presistResize\":_vm.presistResize}}),(_vm.programsData.programList.length == 0)?_c('div',{staticClass:\"program-empty-state no-background\"},[_c('p',[_vm._v(\"No search results found.\")])]):_vm._e()],1):(_vm.programsData.responseStatus == 204)?_c('div',{staticClass:\"program-empty-state\"},[_c('img',{attrs:{\"src\":require(\"../../../../assets/images/cloud.svg\"),\"alt\":\"\"}}),_c('p',[_vm._v(\" \"+_vm._s(\"Hmm. Looks like you haven’t added any program to this account yet. Click on Add in actions to get started.\")+\" \")])]):_vm._e()]):_c('div',[(_vm.isLoaderVisible)?[_c('bouncing-preloader')]:_vm._e()],2),_c('div',{attrs:{\"id\":\"programList\"}},[_c('action-ignored-popup',{attrs:{\"component\":\"programList\",\"records\":_vm.ignoredActionPrograms,\"tableHeader\":\"Program Name\",\"instructions\":_vm.popupInstructions},on:{\"closePopup\":function($event){return _vm.closeActionIgnoredPopup()}}}),_c('reset-task-confirmation',{attrs:{\"instructionFor\":\"resetTasks\",\"programsCount\":_vm.selectedPrograms,\"component\":\"programList\"},on:{\"continue\":function($event){return _vm.resetTask()},\"closePopup\":function($event){return _vm.closePopup()}}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import tableStore from '@/store/modules/table';\nimport { Vue, Component } from 'vue-property-decorator';\nimport APP_CONST from '@/constants/AppConst';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport programListStore from '@/store/modules/programList';\nimport SmartTableContainer from '@/commoncomponents/smartTableComponents/SmartTableContainer.vue';\nimport BouncingPreloaderComponent from '@/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.vue';\nimport ActionsDropdown from '@/commoncomponents/actionsdropdowncomponent/ActionsDropdown.vue';\nimport headerStore from '@/store/modules/headerStore';\nimport UIkit from 'uikit';\nimport CancelConfirmation from '@/popupcomponents/cancelConfirmation/CancelConfirmation.vue';\nimport ActionIgnoredPopup from '@/popupcomponents/actionIgnoredPopup/ActionIgnoredPopup.vue';\nimport { SearchObj, SortObjc } from '@/Model/model';\nimport AddEditProgram from './AddEditProgram.vue';\nimport ProgramsModule from '@/store/modules/Programs/module';\n\n@Component({\n components: {\n 'programs-table': SmartTableContainer,\n 'bouncing-preloader': BouncingPreloaderComponent,\n 'actions-dropdown': ActionsDropdown,\n 'reset-task-confirmation': CancelConfirmation,\n 'action-ignored-popup': ActionIgnoredPopup,\n AddEditProgram\n }\n})\nexport default class Programs extends Vue {\n public tableHeaders = APP_CONST.PROGRAMS_TABLE_HEADER;\n public actionsDropdown: any = APP_CONST.PROGRAMS_ACTIONS_DROPDOWN;\n public totalProgramsCount: number = 0;\n public totalActiveProgramsCount: number = 0;\n public programListResponse: boolean = false;\n public roleId: number = -1;\n public isAccountAdmin: boolean = false;\n public displayColumn:any = [];\n public searchLists: any = [ { header: 'programType', values: []}, { header: 'programStatus', values: ['Active', 'Inactive']} ];\n public programsList:any = [];\n public selectedPrograms: number = -1;\n public ignoredActionPrograms: string[] = [];\n public popupInstructions: {} = {first:'The action was NOT completed for the below', second: 'programs as they are ineligible for the action.'};\n public displayAll: boolean = true;\n public initialTotalItems: number = 0;\n public localConst:any = APP_CONST;\n readonly programsModule = ProgramsModule;\n isAddEditProgramVisible = false;\n private currentUserRole: number = +(APP_UTILITIES.getCookie('highest_role') || APP_CONST.ZERO);\n private allowedRolesAddProgram: Array = [\n APP_CONST.ROLES.BX_SUPER_ADMIN,\n APP_CONST.ROLES.BX_ADMIN,\n APP_CONST.ROLES.ACCOUNT_ADMIN\n ];\n canAddProgram = this.allowedRolesAddProgram.some(r => r === this.currentUserRole); // TODO (REFACTOR): This will need to be reworked when role checks are centralized\n\n /* istanbul ignore next */\n get programsHeaders() {\n return programListStore.programsHeaders;\n }\n\n /* istanbul ignore next */\n get programsData() {\n return programListStore.programsList;\n }\n\n /* istanbul ignore next */\n get programsListAllData() {\n return programListStore.programsListAllData;\n }\n\n /* istanbul ignore next */\n get accountData(){\n return programListStore.accountInfo;\n }\n\n /* istanbul ignore next */\n get allDataSelected() {\n return tableStore.allDataSelected;\n }\n\n /* istanbul ignore next */\n get isLoaderVisible(){\n return (this.initialTotalItems>=this.localConst.HUNDRED || this.initialTotalItems <= this.localConst.ZERO);\n }\n\n /* istanbul ignore next */\n programsListData() {\n this.programsData && this.programsData.programList && this.programsData.programList.forEach((program: any) => {\n program.startDate = APP_UTILITIES.formatShortDate(program.startDate);\n program.endDate = APP_UTILITIES.formatShortDate(program.endDate);\n program.noOfSites = program.noOfSites != 0\n ? program.noOfSites\n : '0';\n program.noOfScholar = program.noOfScholar != 0\n ? program.noOfScholar\n : '0';\n program.enrolledScholars = program.enrolledScholars != 0\n ? program.enrolledScholars\n : '0';\n program.selected = false;\n });\n this.programsData && this.programsData.programList && this.programsData.programList.forEach((program: any) => {\n tableStore.allDataSelected && tableStore.allDataSelected.length && tableStore.allDataSelected.forEach((elementChecked: any) => {\n if (elementChecked.programId === program.programId && program.programName === elementChecked.programName) {\n program.selected = elementChecked.selected;\n }\n });\n });\n if (tableStore.allSelect) {\n this.programsData && this.programsData.programList && this.programsData.programList.forEach((program: any) => {\n program.selected = true;\n });\n this.programsData && this.programsData.programList && this.programsData.programList.forEach((program: any) => {\n tableStore.unSelectData && tableStore.unSelectData.length && tableStore.unSelectData.forEach((elementChecked: any) => {\n if (elementChecked.programId === program.programId && program.programName === elementChecked.programName) {\n program.selected = false;\n }\n });\n });\n }\n this.programsList = this.programsData.programList;\n }\n\n /* istanbul ignore next */\n get programsPayload() {\n return programListStore.currentProgramsPayload;\n }\n\n /* istanbul ignore next */\n get currentProgramListPayloadForFullData() {\n return programListStore.currentProgramListPayloadForFullData;\n }\n\n /* istanbul ignore next */\n get isActionsDD(){\n return ((this.roleId < 5 && this.roleId !== 0) || this.isAccountAdmin)\n ? true\n : false;\n }\n\n /* istanbul ignore next */\n get programResizesData() {\n return programListStore.programResizesData;\n }\n\n /* istanbul ignore next */\n get allProgramDataSelected() {\n return tableStore.allDataSelected;\n }\n\n /* istanbul ignore next */\n get programsSearchObj(){\n return programListStore.programsSearchObj;\n }\n\n /* istanbul ignore next */\n created() {\n this.setProgramTypeValues([]);\n programListStore.mutateProgramFilterObject(JSON.parse(JSON.stringify(APP_CONST.PROGRAMS_TABLE_HEADER.MOVABLE)));\n\n programListStore.mutateCurrentObj({ ...this.programsSearchObj, programName: '', programType: '', noOfScholar: '', enrolledScholars: '', programStatus: '', noOfSites: '', isExactMatch: false });\n }\n\n /* istanbul ignore next */\n beforeMount() {\n const storedAccountId: any = APP_UTILITIES.getCookie('accountId');\n programListStore.mutateProgramsPayload(JSON.parse(JSON.stringify(APP_CONST.PROGRAM_PAYLOAD)));\n programListStore.mutateProgramsPayload({ ...programListStore.currentProgramsPayload, id: parseInt(storedAccountId) });\n this.programListResponse = false;\n programListStore.mutateAllProgramListdata({ ...programListStore.currentProgramListPayloadForFullData, id: parseInt(storedAccountId) });\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList().then(()=>{\n this.initialTotalItems = this.programsData.totalProgramsCount;\n });\n });\n const { roleId } = APP_UTILITIES.coreids();\n this.roleId = roleId;\n this.isAccountAdmin = Boolean(APP_UTILITIES.getCookie('isAccountAdmin'));\n this.displayColumn = programListStore.programsHeaders;\n }\n\n navigateToProgramAdmin(data: any) {\n /* istanbul ignore else */\n const userRoles: any = APP_UTILITIES.getCookie('user_role');\n const accountId: any = APP_UTILITIES.getCookie('accountId');\n const program_id = data.programId;\n const program_name = data.programName;\n const userData = JSON.parse(userRoles);\n userData[0].roleId = APP_CONST.PROGRAM_ADMIN_ROLE_ID;\n userData[0].accountId = accountId;\n userData[0].programId = program_id;\n headerStore.mutateBxState(true);\n APP_UTILITIES.setCookie('super_user_drilldown', 'true', 1);\n APP_UTILITIES.setCookie('user_role', JSON.stringify(userData), 1);\n APP_UTILITIES.setCookie('progName', program_name, 1);\n APP_UTILITIES.setCookie('programId', program_id, 1);\n if(this.accountData && this.accountData.accountName){\n APP_UTILITIES.setCookie('accountName', this.accountData && this.accountData.accountName, APP_CONST.ONE);\n }\n this.$router && this.$router.push('/home');\n this.$emit('loadNav', {});\n }\n\n async getProgramList() {\n await programListStore.getAllProgramsData().then((res: any) => {\n const programTypeList = res.data && res.data.programTypeList || [];\n this.setProgramTypeValues(programTypeList);\n this.programsListData();\n this.programListResponse = true;\n });\n }\n\n clearSelection() {\n tableStore.mutateSelectAll(false);\n tableStore.mutateFewCheckData('');\n tableStore.mutateAllSelectedData([]);\n tableStore.mutateUnSelectedData([]);\n tableStore.mutateSelectStatus('');\n const element = document.getElementById('all-data-checkbox');\n if (element) {\n element.checked = false;\n }\n this.programsList && this.programsList.length && this.programsList.forEach((element: any) => {\n element.selected = false;\n });\n }\n\n performAction(key: string) {\n switch (key) {\n case 'Add':\n this.addProgram();\n break;\n case 'Disable':\n this.enableDisableProgram(APP_CONST.TWO);\n break;\n case 'Enable':\n this.enableDisableProgram(APP_CONST.ONE);\n break;\n case 'Reset Tasks':\n this.getSelectedPrograms();\n break;\n default:\n break;\n }\n }\n\n getSelectedPrograms(){\n let unSelectedIds: any = [];\n let selectedIds:any = [];\n if (tableStore.selectAll) {\n if (tableStore.unSelectData.length) {\n unSelectedIds = tableStore.unSelectData.map((program: any) => {\n return program.programId;\n });\n }\n if (unSelectedIds && unSelectedIds.length) {\n this.selectedPrograms = this.programsData.totalProgramsCount - unSelectedIds.length;\n }\n else {\n this.selectedPrograms = this.programsData.totalProgramsCount;\n }\n }\n else{\n selectedIds = this.allDataSelected.map((program: any) => {\n return program.programId;\n });\n this.selectedPrograms = selectedIds.length;\n }\n\n if(this.selectedPrograms && UIkit.modal('#cancel-confirmation')) {\n UIkit.modal('#cancel-confirmation').show();\n }\n }\n\n closePopup(){\n if(UIkit.modal('#cancel-confirmation')) {\n UIkit.modal('#cancel-confirmation').hide();\n }\n this.clearSelection();\n }\n\n closeActionIgnoredPopup(){\n if(UIkit.modal('#actions-ignored-popup')) {\n UIkit.modal('#actions-ignored-popup').hide();\n }\n this.ignoredActionPrograms = [];\n }\n\n addProgram() {\n this.isAddEditProgramVisible = true;\n }\n\n async enableDisableProgram(status:number){\n const accountId: any = APP_UTILITIES.getCookie('accountId');\n const payload: any = {\n selectAllPayload: {\n page: null,\n count: null,\n id: parseInt(accountId),\n active: 0,\n sortField: this.programsPayload.sortField,\n sortDir: this.programsPayload.sortDir,\n searchField: this.programsPayload.searchField,\n search: this.programsPayload.search,\n selectedIds: [],\n notSelectedIds: [],\n isAllSelected: tableStore.selectAll,\n isExactMatch: this.programsPayload.isExactMatch\n },\n status,\n };\n let unSelectedIds: any = [];\n if (tableStore.selectAll) {\n if (tableStore.unSelectData.length) {\n unSelectedIds = tableStore.unSelectData.map((program: any) => {\n return program.programId;\n });\n }\n }\n payload.selectAllPayload.notSelectedIds = unSelectedIds;\n const programIds: any = this.allProgramDataSelected.map((program: any) => {\n return program.programId;\n });\n payload.selectAllPayload.selectedIds = programIds;\n programListStore.mutateProgramsPayload({ ...this.programsPayload, page: APP_CONST.ONE, search: decodeURIComponent(this.programsPayload.search) });\n this.programListResponse = this.isLoaderVisible\n ?false\n :this.programListResponse;\n this.ignoredActionPrograms = [];\n await programListStore.enableDisableProgram(payload).then((response: any) => {\n if (response.status == APP_CONST.RESPONSE_200) {\n this.ignoredActionPrograms = response && response.data;\n if( this.ignoredActionPrograms.length && UIkit.modal('#actions-ignored-popup')) {\n UIkit.modal('#actions-ignored-popup').show();\n const elem : any = document.getElementById('popup-content') ;\n elem.scrollTo(0, 0);\n }\n this.clearSelection();\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n });\n }\n\n async resetTask(){\n if(UIkit.modal('#cancel-confirmation')) {\n UIkit.modal('#cancel-confirmation').hide();\n }\n const accountId: any = APP_UTILITIES.getCookie('accountId');\n const payload: any = {\n page: null,\n count: null,\n id: parseInt(accountId),\n active: 0,\n sortField: this.programsPayload.sortField,\n sortDir: this.programsPayload.sortDir,\n searchField: this.programsPayload.searchField,\n search: this.programsPayload.search,\n selectedIds: [],\n notSelectedIds: [],\n isAllSelected: tableStore.selectAll,\n addTaskDto:[],\n isExactMatch: this.programsPayload.isExactMatch\n };\n let unSelectedIds: any = [];\n if (tableStore.selectAll) {\n if (tableStore.unSelectData.length) {\n unSelectedIds = tableStore.unSelectData.map((program: any) => {\n return program.programId;\n });\n }\n }\n payload.notSelectedIds = unSelectedIds;\n const programIds: any = this.allProgramDataSelected.map((program: any) => {\n return program.programId;\n });\n payload.selectedIds = programIds;\n const programData: any = this.allProgramDataSelected.map((program: any) => {\n return {\n programId:program.programId,\n programStartDate: program.startDate,\n programEndDate: program.endDate,\n productId:program.productId,\n programName:program.programName,\n };\n });\n if (programData.length) {\n payload.addTaskDto = programData;\n }\n else{\n payload.addTaskDto = [\n {\n 'programId': 0,\n 'programStartDate': '2022-06-13T11:35:19.446Z',\n 'programEndDate': '2022-06-13T11:35:19.446Z',\n 'productId': 0,\n 'programName': 'string'\n }\n ];\n }\n programListStore.mutateProgramsPayload({ ...this.programsPayload, page: APP_CONST.ONE, search: decodeURIComponent(this.programsPayload.search) });\n this.programListResponse = this.isLoaderVisible\n ?false\n :this.programListResponse;\n await programListStore.resetTaskProgram(payload).then((response: any) => {\n if (response.status == APP_CONST.RESPONSE_200) {\n this.clearSelection();\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n });\n }\n\n getDataForPage(page: number) {\n programListStore.mutateProgramsPayload({ ...programListStore.currentProgramsPayload, page: page });\n this.getProgramList();\n }\n\n viewProgramDetails(programData: any) : void {\n const programId: string = programData.programId.toString();\n APP_UTILITIES.setCookie('program_id', programId, APP_CONST.ONE);\n programListStore.mutateSitesPayload({ ...programListStore.siteListPayload, id: Number(programId) });\n setTimeout(()=>{\n this.programsModule.RESET_FETCH_PROGRAM_DATA();\n this.$router && this.$router.push(APP_CONST.APP_ROUTES.ACCOUNT_PROGRAMS_SESSIONS)\n .catch((e) => console.log('Error navigating', e));\n }, APP_CONST.ZERO);\n }\n\n filterColumns(displayColumn: any) {\n let isSelected = false;\n displayColumn && displayColumn.length && displayColumn.forEach((column: any) => {\n if(column.display) {\n isSelected = true;\n }\n });\n this.displayAll = isSelected;\n this.clearAllColumns(this.displayAll);\n programListStore.mutateProgramFilterObject(displayColumn);\n programListStore.mutateProgramSettingsData(displayColumn);\n const storedAccountId: any = APP_UTILITIES.getCookie('accountId');\n programListStore.mutateProgramsPayload({ ...programListStore.currentProgramsPayload, id: parseInt(storedAccountId) });\n }\n\n clearAllColumns(displayAll:boolean){\n let searchObj:SearchObj = {\n 'searchField' : this.programsPayload && this.programsPayload.searchField\n ? this.programsPayload.searchField\n : '',\n 'search' : this.programsPayload && this.programsPayload.search\n ? this.programsPayload.search\n : '',\n };\n let sortObjc:SortObjc = {\n 'sortField' : this.programsPayload && this.programsPayload.sortField\n ? this.programsPayload.sortField\n : '',\n 'sortDir' : this.programsPayload && this.programsPayload.sortDir\n ? this.programsPayload.sortDir\n : 0\n };\n const isSearchFieldFixed = this.tableHeaders.FIXED.map((e:any)=> {\n return e.value; \n }).indexOf(searchObj.searchField);\n const isSortFieldFixed = this.tableHeaders.FIXED.map((e:any)=> {\n return e.value; \n }).indexOf(sortObjc.sortField);\n if(!displayAll && isSearchFieldFixed == APP_CONST.MINUS_ONE){\n searchObj={\n 'searchField': this.programsPayload && this.programsPayload.searchField == APP_CONST.PROGRAM_NAME\n ? this.programsPayload.searchField\n : '',\n 'search' : this.programsPayload && this.programsPayload.searchField == APP_CONST.PROGRAM_NAME\n ? this.programsPayload.search\n : '',\n };\n programListStore.mutateProgramsSearchObj({ ...this.programsSearchObj, programType: '', noOfScholar: '', enrolledScholars: '', programStatus: '', noOfSites: ''});\n programListStore.mutateProgramsPayload({ ...this.programsPayload ,searchField: searchObj.searchField, search: searchObj.search, sortField: sortObjc.sortField, sortDir: sortObjc.sortDir,});\n programListStore.mutateAllProgramListdata({ ...this.currentProgramListPayloadForFullData ,searchField: searchObj.searchField, search: searchObj.search, sortField: sortObjc.sortField, sortDir: sortObjc.sortDir,});\n this.clearSelection();\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n\n }\n if(!displayAll && isSortFieldFixed == APP_CONST.MINUS_ONE){\n sortObjc={\n 'sortField':this.programsPayload && this.programsPayload.sortField == APP_CONST.PROGRAM_NAME\n ? this.programsPayload.sortField\n : '',\n 'sortDir': this.programsPayload && this.programsPayload.sortField == APP_CONST.PROGRAM_NAME\n ? this.programsPayload.sortDir\n : APP_CONST.ZERO\n };\n programListStore.mutateSortPayload({ ...this.programsPayload , sortField: sortObjc.sortField, sortDir: sortObjc.sortDir});\n programListStore.mutateProgramsSearchObj({ ...this.programsSearchObj, programType: '', noOfScholar: '', enrolledScholars: '', programStatus: '', noOfSites: '' });\n programListStore.mutateProgramsPayload({ ...this.programsPayload ,searchField: searchObj.searchField, search: searchObj.search, sortField: sortObjc.sortField, sortDir: sortObjc.sortDir,});\n programListStore.mutateAllProgramListdata({ ...this.currentProgramListPayloadForFullData ,searchField: searchObj.searchField, search: searchObj.search, sortField: sortObjc.sortField, sortDir: sortObjc.sortDir,});\n this.clearSelection();\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n }\n\n filterDisplayColumn(column:any){\n let searchObj:SearchObj = {\n 'searchField' : this.programsPayload && this.programsPayload.searchField\n ? this.programsPayload.searchField\n : '',\n 'search' : this.programsPayload && this.programsPayload.search\n ? this.programsPayload.search\n : '',\n };\n let sortObjc:SortObjc = {\n 'sortField' : this.programsPayload && this.programsPayload.sortField\n ? this.programsPayload.sortField\n : '',\n 'sortDir' : this.programsPayload && this.programsPayload.sortDir\n ? this.programsPayload.sortDir\n : 0\n };\n if(!column.display){\n if(column.value == this.programsPayload.searchField){\n searchObj={\n 'searchField': '',\n 'search' : '',\n };\n const columnName = column.value;\n programListStore.mutateProgramsSearchObj({ ...this.programsSearchObj, [columnName]: '' });\n programListStore.mutateProgramsPayload({ ...this.programsPayload ,searchField: searchObj.searchField, search: searchObj.search});\n programListStore.mutateAllProgramListdata({ ...this.currentProgramListPayloadForFullData ,searchField: searchObj.searchField, search: searchObj.search});\n this.clearSelection();\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n if(column.value == this.programsPayload.sortField){\n sortObjc={\n 'sortField':'',\n 'sortDir': 0,\n };\n programListStore.mutateSortPayload({ ...this.programsPayload , sortField: sortObjc.sortField, sortDir: sortObjc.sortDir});\n programListStore.mutateProgramsPayload({ ...this.programsPayload ,sortField: sortObjc.sortField, sortDir: sortObjc.sortDir,});\n programListStore.mutateAllProgramListdata({ ...this.currentProgramListPayloadForFullData ,sortField: sortObjc.sortField, sortDir: sortObjc.sortDir,});\n this.clearSelection();\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n }\n }\n\n presistResize(resize: { column: any; maxWidth: any; minWidth: any }) {\n programListStore.mutateProgramResizeData(resize);\n }\n sortData(sortObj: { sortField: string; sortDirection: number }){\n programListStore.mutateSortPayload({ ...this.programsPayload , sortField: sortObj.sortField, sortDir: sortObj.sortDirection, page: APP_CONST.ONE});\n programListStore.mutateProgramsPayload({ ...this.programsPayload , sortField: sortObj.sortField, sortDir: sortObj.sortDirection, page: APP_CONST.ONE});\n this.programListResponse = this.isLoaderVisible\n ?false\n :this.programListResponse;\n this.clearSelection();\n programListStore.mutateAllProgramListdata({ ...this.currentProgramListPayloadForFullData , sortField: sortObj.sortField, sortDir: sortObj.sortDirection, page: APP_CONST.ONE});\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n\n searchData(search:{searchField: string; isExactMatch: boolean}){\n if(search.searchField){\n programListStore.mutateProgramsSearchObj({ ...this.programsSearchObj, [search.searchField]: (this.programsSearchObj && this.programsSearchObj[search.searchField]\n ? this.programsSearchObj[search.searchField]\n : ''), isExactMatch: search.isExactMatch });\n }\n else{\n programListStore.mutateProgramsSearchObj({ ...this.programsSearchObj, programName: '', programType: '', noOfScholar: '', enrolledScholars: '', programStatus: '', noOfSites: '' , isExactMatch: false});\n }\n\n programListStore.mutateProgramsPayload({ ...this.programsPayload, searchField: search.searchField, search: (this.programsSearchObj && this.programsSearchObj[search.searchField]\n ? this.programsSearchObj[search.searchField]\n : ''), page: APP_CONST.ONE, isExactMatch: search.isExactMatch});\n this.programListResponse = this.isLoaderVisible\n ?false\n :this.programListResponse;\n this.clearSelection();\n programListStore.mutateAllProgramListdata({ ...this.currentProgramListPayloadForFullData, searchField: search.searchField, search: (this.programsSearchObj && this.programsSearchObj[search.searchField]\n ? this.programsSearchObj[search.searchField]\n : ''), page: APP_CONST.ONE, isExactMatch: search.isExactMatch});\n programListStore.getFullProgramsData().then(() => {\n this.getProgramList();\n });\n }\n\n setProgramTypeValues(values: any[]){\n const idx = this.searchLists.findIndex((list:any) => {\n return list.header == 'programType';\n });\n /* istanbul ignore next */\n if (idx >= APP_CONST.ZERO ) {\n this.searchLists[idx].values = values;\n }\n }\n\n destroyed() {\n tableStore.mutateSelectAll(false);\n this.clearSelection();\n }\n\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Programs from './Programs';\nimport AddEditProgram from './AddEditProgram.vue';\nexport default Programs;\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Programs.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Programs.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Programs.vue?vue&type=template&id=4ee982d2&scoped=true&\"\nimport script from \"./Programs.vue?vue&type=script&lang=ts&\"\nexport * from \"./Programs.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Programs.less?vue&type=style&index=0&id=4ee982d2&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4ee982d2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"fixed-table-container\"}},[_c('div',{staticClass:\"fixed-left-column-freezed table-main\",attrs:{\"id\":\"smart-fixed-table\"}},[_c('div',{class:['table-row header-tbl', _vm.drill ? 'super-tbl' : '']},[_c('div',{staticClass:\"table-cell\",class:[!_vm.showCheckBox && 'align-setting-icon']},[_c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(function () { _vm.showSettings = false }),expression:\"() => { showSettings = false }\"}],class:[_vm.componentName == 'team-roster' ? 'settings-icon-team-roster cursor-pointer' : 'settings-icon cursor-pointer', _vm.componentName == 'user-table' && _vm.highestRole == _vm.sessionAdminId && 'user-table-settingicon'],attrs:{\"tabindex\":\"0\"},on:{\"keydown\":function($event){return _vm.openGearDropdown($event)},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.closeGearIcon($event)},\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }_vm.showSettings = !_vm.showSettings}}},[_c('display-columns-dropdown',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showSettings),expression:\"showSettings\"}],ref:\"displayColumns\",attrs:{\"displayColumn\":_vm.displayColumn,\"componentName\":_vm.componentName,\"showSettings\":_vm.showSettings},on:{\"filterColumns\":_vm.filterColumns,\"filterDisplayColumn\":_vm.filterDisplayColumn,\"tab\":_vm.tab,\"closeGearIcon\":_vm.closeGearIcon,\"enter\":_vm.enter}})],1),(_vm.showCheckBox && !_vm.limitOneCheckbox)?_c('input',{class:_vm.selectAllCheckboxClass,attrs:{\"id\":\"all-data-checkbox\",\"bx-attr\":\"selectall-data-checkbox\",\"type\":\"checkbox\",\"disabled\":!_vm.tableData.length},domProps:{\"checked\":_vm.limitSelectAllToCurrentPage ? _vm.currentPageSelection.anySelected : _vm.isSelectAll},on:{\"change\":_vm.selectAllRecords}}):_vm._e()]),_vm._l((_vm.headers),function(header,index){return _c('div',{key:index,staticClass:\"table-cell fixed-header\",class:[header.value, _vm.componentName == 'team-roster' && 'team-roster', (_vm.payload && (header.value == _vm.payload.searchField || header.value == _vm.payload.SearchField)) && (\"background-\" + _vm.theme)],style:({ 'width': header.width, 'min-width': header.width }),attrs:{\"id\":header.value}},[_c('div',{staticClass:\"header-text\",attrs:{\"id\":header.name}},[_vm._v(\" \"+_vm._s(header.name)+\" \"),(_vm.payload && header.value == _vm.payload.sortField && _vm.payload.sortDir)?_c('div',{staticClass:\"sorting-icon\"},[_c('img',{attrs:{\"src\":require((\"../../../assets/images/smartTableImages/\" + _vm.sortIcon + \".svg\")),\"alt\":\"\"}})]):_vm._e()]),((_vm.payload && (header.value == _vm.payload.searchField || header.value == _vm.payload.SearchField)))?_c('div',{staticClass:\"filter-icon\",on:{\"click\":function($event){return _vm.openSortingDropdown(header, $event)}}},[_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/filter-white.svg\"),\"alt\":\"filter-icon\"}})]):(header.action)?_c('div',{staticClass:\"headerAction cursor-pointer\",class:header.isOpen && 'filterOpen',on:{\"click\":function($event){return _vm.openSortingDropdown(header, $event)}}}):_vm._e()])})],2),_c('div',{staticClass:\"table-left-column-number\"},[_vm._l((_vm.tableData),function(data,index){return _c('div',{key:index,staticClass:\"table-row\",class:{ 'hovered': index === _vm.hoverIndex },on:{\"touchstart\":function($event){return _vm.callHover(index)},\"touchend\":function($event){return _vm.callHoverOut()},\"mouseover\":function($event){return _vm.callHover(index)},\"mouseleave\":function($event){return _vm.callHoverOut()}}},[_c('div',{staticClass:\"table-cell\",class:[!_vm.showCheckBox && 'align-setting-icon', _vm.componentName == 'user-table' && _vm.highestRole == _vm.sessionAdminId && 'user-table-tableCellCheckbox']},[(_vm.showCheckBox)?_c('div',[(!_vm.limitOneCheckbox)?_c('input',{class:[_vm.componentName == 'user-table' && data && data.userId == _vm.disableCheckbox ? 'disabled' : '', 'uk-checkbox remember-checkbox pd0 align', _vm.componentName == 'user-table' && _vm.highestRole == _vm.sessionAdminId && 'user-table-scholarCheckbox'],attrs:{\"bx-attr\":\"selectall-scholars-checkbox\",\"type\":\"checkbox\"},domProps:{\"checked\":data.selected},on:{\"change\":function($event){return _vm.selectParticularRecord(data)}}}):_c('input',{ref:(\"radioInput\" + (data.id)),refInFor:true,class:[_vm.componentName == 'user-table' && data && data.userId == _vm.disableCheckbox ? 'disabled' : '', 'pd0 align', _vm.componentName == 'user-table' && _vm.highestRole == _vm.sessionAdminId],attrs:{\"bx-attr\":\"selectall-scholars-checkbox\",\"name\":\"radioInput\",\"type\":\"radio\"},on:{\"click\":function($event){return _vm.selectParticularRecord(data)}}})]):_vm._e()]),_vm._l((_vm.headers),function(key,index){return _c('div',{key:index,staticClass:\"table-cell\",class:[key.value, _vm.componentName == 'team-roster' && 'team-roster'],staticStyle:{\"cursor\":\"pointer\"},style:({ 'width': key.width, 'min-width': key.width }),on:{\"click\":function($event){return _vm.navigateToPage(data)}}},[_c('div',{staticClass:\"ellipsis\",attrs:{\"id\":key.value}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? data[key.value] : '--')+\" \"),(_vm.showEditIcon)?_c('img',{staticClass:\"editSiteIcon\",attrs:{\"src\":require(\"../../../../public/images/Vector.svg\")}}):_vm._e()])])})],2)}),_c('div',{staticClass:\"last-row-scroll\"})],2),_c('div',{staticClass:\"sticky-div-left-pane\",attrs:{\"id\":\"stickyLeftDiv\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Component, Prop, Vue, Watch } from 'vue-property-decorator';\nimport APP_CONST from '@/constants/AppConst';\nimport DisplayColumnFilter from '../displayColumnFilter/DisplayColumnFilter.vue';\nimport table from '@/store/modules/table';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport { SmartTableRow } from '@/Model/model';\n\n\n@Component({\n components: {\n 'display-columns-dropdown': DisplayColumnFilter\n }\n})\nexport default class FixedTableComponent extends Vue {\n public showSettings: boolean = false;\n public selectedTableRecords: SmartTableRow[] = [];\n public nonSelectedData: any = [];\n public isSameUser: boolean = false;\n public userId: string | null = '';\n public drill: boolean = false;\n public highestRole: number = JSON.parse(JSON.stringify(APP_UTILITIES.getCookie('highest_role')));\n public sessionAdminId: number = APP_CONST.SESSION_ADMIN_ROLE_ID;\n private isMobileForAPiCall: boolean = false;\n public tabKey: boolean = false;\n public enterKey: boolean = false;\n public hoverIndex: number = -1;\n private previouslySelectedRadioInput: any;\n\n @Prop({ default: false })\n showEditIcon!: boolean;\n\n @Prop()\n headers!: [];\n\n @Prop()\n tableData!: [];\n\n @Prop()\n allListData!: any;\n\n @Prop()\n displayColumn!: any;\n\n @Prop()\n componentName!: string;\n\n @Prop({ default: false })\n isSortingSearching!: boolean;\n\n @Prop({ default: true })\n showCheckBox!: boolean;\n\n @Prop({ default: false })\n limitOneCheckbox!: boolean;\n\n @Prop({ default: function () {\n return [];\n }})\n searchLists!: { header: string; values: any[] }[];\n\n @Prop()\n total_items!: 0;\n\n @Prop()\n payload!: any;\n\n @Prop({ default: 'blue' })\n theme!: string;\n\n /**\n * This property changes how the select all checkbox works;\n * instead of selecting all records from all pages, it will only consider the records on the current page.\n */\n @Prop({ default: false })\n limitSelectAllToCurrentPage!: boolean;\n\n /* istanbul ignore next */\n get allUnSelectData() {\n return table.allUnSelectData;\n }\n\n /* istanbul ignore next */\n get allDataSelected() {\n if (table.allDataSelected) {\n this.selectedTableRecords = table.allDataSelected;\n }\n return table.allDataSelected;\n }\n\n /* istanbul ignore next */\n get fewCheckedData() {\n return table.fewCheckedData;\n }\n\n @Watch('allDataSelected', { deep: true, immediate: true })\n allDataSelecteds(val: any) {\n this.selectedTableRecords = val;\n if (val.length === 0 && this.previouslySelectedRadioInput) {\n this.clearRadioInput(this.previouslySelectedRadioInput);\n }\n }\n\n /* istanbul ignore next */\n get isSelectAll() {\n if (table.allSelect) {\n const totalItems = this.componentName == 'user-table'\n ? this.userId\n ? this.total_items - 1\n : this.total_items\n : this.total_items;\n if (this.allUnSelectData.length === totalItems) {\n return false;\n }\n return true;\n }\n return this.selectedTableRecords.length > 0;\n }\n\n /**\n * Gets the current page selection status.\n * Used if the prop limitSelectAllToCurrentPage is set to true.\n * @returns An object containing the current page selection status.\n */\n get currentPageSelection(): { allSelected: boolean; anySelected: boolean } {\n if (this.limitSelectAllToCurrentPage) {\n let allSelected = true;\n let anySelected = false;\n\n for (const tableRow of this.tableData as SmartTableRow[]) {\n if (tableRow.selected) {\n anySelected = true;\n }\n else {\n allSelected = false;\n }\n }\n\n return { allSelected, anySelected };\n }\n\n return { allSelected: false, anySelected: false };\n }\n\n /**\n * Gets the classes for the select all checkbox.\n * The classes are determined based on the current rows selection.\n * @returns An array of strings representing the classes for the select all checkbox.\n */\n get selectAllCheckboxClass(): (string | false)[] {\n const { allSelected, anySelected } = this.currentPageSelection;\n let checkboxSelectAllClasses: (string | false)[] = [];\n\n const checkboxClasses = [\n 'uk-checkbox remember-checkbox pd0 align',\n this.componentName == 'user-table' && this.highestRole == this.sessionAdminId && 'user-table-checkbox',\n !this.tableData.length && 'disabled'\n ];\n\n if (this.limitSelectAllToCurrentPage) {\n checkboxSelectAllClasses = [\n allSelected && 'darkCheckBox',\n !allSelected && anySelected && 'select-action-checkbox'\n ];\n }\n else {\n checkboxSelectAllClasses = [\n this.isSelectAll && 'darkCheckBox',\n this.fewCheckedData,\n ];\n }\n\n return [...checkboxClasses, ...checkboxSelectAllClasses];\n }\n\n /* istanbul ignore next */\n get disableCheckbox() {\n const userRoles: any = APP_UTILITIES.getCookie('highest_role');\n if (userRoles != APP_CONST.ROLE_TYPE_BX_ADMIN && userRoles != APP_CONST.ROLE_TYPE_SUPER_ADMIN) {\n this.userId = this.componentName == 'user-table' && APP_UTILITIES.getCookie('user_id')\n ? APP_UTILITIES.getCookie('user_id')\n : '';\n }\n return this.userId;\n }\n\n get sortIcon() {\n if (this.payload.sortField == this.payload.searchField || this.payload.sortField == this.payload.SearchField) {\n return this.payload.sortDir == 1\n ? 'sort-a-to-z-white'\n : 'sort-z-to-a-white';\n }\n else {\n return this.payload.sortDir == 1\n ? `sort-a-to-z-${this.theme}`\n : `sort-z-to-a-${this.theme}`;\n }\n }\n\n /* istanbul ignore next */\n mounted() {\n if (APP_UTILITIES.getCookie(APP_CONST.SUPER_USER_DRILLDOWN)) {\n const drilldrown: any = APP_UTILITIES.getCookie(APP_CONST.SUPER_USER_DRILLDOWN);\n this.drill = JSON.parse(JSON.stringify(drilldrown));\n }\n const element = document.getElementsByClassName('fixed-left-column-freezed')[0];\n const parentElement = document.getElementById('padding');\n if (parentElement) {\n const stickyLeftDiv = document.getElementById('stickyLeftDiv');\n parentElement.style.paddingLeft = !stickyLeftDiv\n ? element.scrollWidth - 1 + 'px'\n : element.scrollWidth + 'px';\n if (stickyLeftDiv) {\n stickyLeftDiv.style.width = parentElement.style.paddingLeft;\n }\n }\n if (table.allDataSelected) {\n this.selectedTableRecords = table.allDataSelected;\n }\n if (table.unSelectData) {\n this.nonSelectedData = table.unSelectData;\n }\n }\n\n navigateToPage(accountData: any) {\n this.$emit('navigateToPage', accountData);\n }\n callHover(index: number) {\n this.hoverIndex = index;\n this.$emit('rowHovered', index);\n }\n callHoverOut() {\n this.hoverIndex = -1;\n this.$emit('rowHovered', -1); // Reset hover state\n }\n\n filterColumns(displayColumn: any) {\n this.$emit('filterColumns', displayColumn);\n this.$emit('calculateTableWidth');\n }\n\n filterDisplayColumn(column: any) {\n this.$emit('filterDisplayColumn', column);\n }\n\n openSortingDropdown(header: any, $event: any) {\n /* istanbul ignore else */\n if (this.isSortingSearching) {\n const elem = document.getElementById(header.value);\n const pos = elem.getBoundingClientRect();\n const x: any = pos.left + 16;\n const y = pos.top + APP_CONST.FOURTY_FIVE;\n this.$emit('openSortingDropdown', header, { x, y });\n }\n }\n\n handleSortingArrows(header: any) {\n this.headers.forEach((originalHeader: any) => {\n /* istanbul ignore else */\n if (originalHeader.value === header.value) {\n originalHeader.isOpen = !originalHeader.isOpen;\n }\n });\n }\n\n selectAllRecords($event: any) {\n const selected = $event.target.checked;\n\n if (this.limitSelectAllToCurrentPage) {\n this.selectAllRecordsOnCurrentPage(selected);\n return;\n }\n\n if (selected) {\n table.mutateSelectAll(true);\n table.mutateAllSelectedData([]);\n table.mutateUnSelectedData([]);\n this.nonSelectedData = [];\n }\n else {\n table.mutateSelectAll(false);\n table.mutateAllSelectedData([]);\n table.mutateUnSelectedData([]);\n this.nonSelectedData = [];\n }\n this.selectedTableRecords = [];\n this.tableData && this.tableData.forEach((data: any) => {\n data.selected = selected;\n /* istanbul ignore else */\n if (this.componentName == 'user-table' && data && data.userId == this.userId) {\n data.selected = false;\n /* istanbul ignore else */\n }\n });\n this.halfDataChecked();\n this.$emit('selectionChanged');\n }\n\n selectParticularRecord(data: any) {\n data.selected = !data.selected;\n\n if (this.limitSelectAllToCurrentPage) {\n this.selectParticularRecordOnCurrentPage(data);\n return;\n }\n\n if (table.allDataSelected) {\n this.selectedTableRecords = table.allDataSelected;\n }\n if (table.unSelectData) {\n this.nonSelectedData = table.unSelectData;\n }\n if (table.allSelect) {\n const index = this.nonSelectedData.findIndex((element: any) => this.componentName == 'account-table'\n ? element.accountId == data.accountId\n : this.componentName == 'programs-table'\n ? element.programId == data.programId\n : this.componentName == 'sites-table'\n ? element.siteId == data.siteId\n : this.componentName == 'user-table'\n ? element.userId == data.userId\n : this.componentName === 'site-locations-table'\n ? element.id === data.id\n : '');\n if (index == -1) {\n this.nonSelectedData.push(data);\n }\n else {\n this.nonSelectedData.splice(index, 1);\n }\n }\n else {\n const index = this.selectedTableRecords.findIndex((element: any) => this.componentName == 'account-table'\n ? element.accountId == data.accountId\n : this.componentName == 'programs-table'\n ? element.programId == data.programId\n : this.componentName == 'sites-table'\n ? element.siteId == data.siteId\n : this.componentName == 'user-table'\n ? element.userId == data.userId\n : this.componentName === 'site-locations-table'\n ? element.id === data.id\n : '');\n if (index == -1) {\n if (this.limitOneCheckbox) {\n if (this.previouslySelectedRadioInput && this.previouslySelectedRadioInput !== data) {\n this.previouslySelectedRadioInput.selected = false;\n }\n this.selectedTableRecords.splice(0, this.selectedTableRecords.length);\n }\n this.selectedTableRecords.push(data);\n }\n else {\n if (this.limitOneCheckbox) {\n this.clearRadioInput(data);\n }\n this.selectedTableRecords.splice(index, 1);\n }\n }\n if (this.limitOneCheckbox) {\n this.previouslySelectedRadioInput = data;\n }\n this.halfDataChecked();\n this.$emit('selectionChanged', data);\n }\n\n /**\n * Selects or deselects all records on the current page.\n * @param selected - A boolean indicating whether to select or deselect the records.\n */\n selectAllRecordsOnCurrentPage(selected: boolean): void {\n this.tableData && this.tableData.forEach((row: SmartTableRow) => {\n row.selected = selected;\n\n if (selected) {\n this.addRowToSelectedRecords(row);\n }\n else {\n this.removeRowFromSelectedRecords(row.rowKey);\n }\n });\n\n table.mutateAllSelectedData(this.selectedTableRecords);\n this.$emit('selectionChanged');\n }\n\n /**\n * Selects or deselects a particular record on the current page.\n * @param row - The row to be selected or deselected.\n */\n selectParticularRecordOnCurrentPage(row: SmartTableRow): void {\n const selected = row.selected;\n\n if (selected) {\n this.addRowToSelectedRecords(row);\n }\n else {\n this.removeRowFromSelectedRecords(row.rowKey);\n }\n\n table.mutateAllSelectedData(this.selectedTableRecords);\n this.$emit('selectionChanged', row);\n }\n\n /**\n * Adds a row to the selected records.\n * @param row - The row to be added.\n */\n addRowToSelectedRecords(row: SmartTableRow): void {\n this.selectedTableRecords.push(row);\n }\n\n /**\n * Removes a row from the selected table records based on the provided row key.\n * @param {string} rowKey - The key of the row to be removed.\n */\n removeRowFromSelectedRecords(rowKey: string): void {\n const rowIndex = this.selectedTableRecords.findIndex((selectedRow: SmartTableRow) => selectedRow.rowKey === rowKey);\n // If the prop limitSelectAllToCurrentPage is set to true,\n // it could happen that the row is not found in the selectedTableRecords.\n // As the row could be in a different page.\n if (rowIndex > -1) {\n this.selectedTableRecords.splice(rowIndex, 1);\n }\n }\n\n halfDataChecked() {\n if (table.allSelect) {\n table.mutateUnSelectedData(this.nonSelectedData);\n if (!this.nonSelectedData.length) {\n const active: any = this.allListData && this.allListData.filter((element: any) => {\n return element.status == 1;\n });\n const deactive: any = this.allListData && this.allListData.filter((element: any) => {\n return element.status == 2;\n });\n if (active && active.length && deactive && deactive.length) {\n table.mutateSelectStatus('All');\n }\n else if (active && active.length) {\n table.mutateSelectStatus('Disable');\n }\n else if (deactive && deactive.length) {\n table.mutateSelectStatus('Enable');\n }\n else {\n table.mutateSelectStatus('');\n }\n }\n else {\n const addData: any = this.allListData && this.allListData.filter((n: any) => !this.nonSelectedData.some((n2: any) => this.componentName == 'account-table'\n ? n.accountId == n2.accountId\n : this.componentName == 'programs-table'\n ? n.programId == n2.programId\n : ''));\n const active: any = addData && addData.filter((element: any) => {\n return element.status == 1;\n });\n const deactive: any = addData && addData.filter((element: any) => {\n return element.status == 2;\n });\n if (active && active.length && deactive && deactive.length) {\n table.mutateSelectStatus('All');\n }\n else if (active && active.length) {\n table.mutateSelectStatus('Disable');\n }\n else if (deactive && deactive.length) {\n table.mutateSelectStatus('Enable');\n }\n else {\n table.mutateSelectStatus('');\n }\n }\n const totalItems = this.componentName == 'user-table'\n ? this.userId\n ? this.total_items - 1\n : this.total_items\n : this.total_items;\n if (this.allUnSelectData.length && this.allUnSelectData.length !== totalItems) {\n table.mutateFewCheckData('select-action-checkbox');\n }\n else {\n table.mutateFewCheckData('');\n }\n if (this.nonSelectedData.length === this.total_items) {\n table.mutateSelectAll(false);\n table.mutateAllSelectedData([]);\n table.mutateUnSelectedData([]);\n const element = document.getElementById('all-data-checkbox');\n if (element) {\n element.checked = false;\n }\n }\n }\n else {\n table.mutateAllSelectedData(this.selectedTableRecords);\n const active: any = this.selectedTableRecords.filter((element: any) => {\n return element.status == 1;\n });\n const deactive: any = this.selectedTableRecords.filter((element: any) => {\n return element.status == 2;\n });\n if (active && active.length && deactive && deactive.length) {\n table.mutateSelectStatus('All');\n }\n else if (active && active.length) {\n table.mutateSelectStatus('Disable');\n }\n else if (deactive && deactive.length) {\n table.mutateSelectStatus('Enable');\n }\n else {\n table.mutateSelectStatus('');\n }\n /* istanbul ignore else */\n const totalItems = this.componentName == 'user-table'\n ? this.userId\n ? this.total_items - 1\n : this.total_items\n : this.total_items;\n if (this.allDataSelected && this.allDataSelected.length && this.allDataSelected.length !== totalItems) {\n table.mutateFewCheckData('select-action-checkbox');\n }\n else {\n table.mutateFewCheckData('');\n }\n }\n }\n\n closeGearIcon(event?: any) {\n this.showSettings = false;\n event.currentTarget.focus();\n }\n\n openGearDropdown(event: any) {\n event.preventDefault();\n if (event.keyCode == 40 || event.keyCode == 38 || event.keyCode == 32 || event.keyCode == 13) {\n this.showSettings = true;\n }\n const id: any = document.getElementById('display-all');\n if (id) {\n setTimeout(() => {\n id.focus();\n }, 20);\n }\n }\n\n clearRadioInput(data: any) {\n const clickedRadioInput = this.$refs[`radioInput${data.id}`];\n if (Array.isArray(clickedRadioInput)) {\n const castObject = clickedRadioInput[0] as HTMLInputElement;\n castObject.checked = false;\n }\n }\n\n tab(val: boolean) {\n this.tabKey = true;\n this.showSettings = false;\n }\n\n enter(val: boolean) {\n this.enterKey = true;\n this.showSettings = false;\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport FixedTableComponent from './FixedTableComponent';\nexport default FixedTableComponent;\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FixedTableComponent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FixedTableComponent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FixedTableComponent.vue?vue&type=template&id=7e313ae2&scoped=true&\"\nimport script from \"./FixedTableComponent.vue?vue&type=script&lang=ts&\"\nexport * from \"./FixedTableComponent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FixedTableComponent.less?vue&type=style&index=0&id=7e313ae2&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7e313ae2\",\n null\n \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/settings-purple.e3e0fb2a.svg\";","module.exports = __webpack_public_path__ + \"img/checkbox_sprite_lightgrey copy.4a0fa101.svg\";","export enum SortDirection {\n Undefined = 0,\n Asc = 1,\n Desc = 2\n}\n\nexport interface BasePagedDataRequest {\n page?: number;\n pageItemCount?: number;\n maximumItemsPerPage?: number;\n sortField?: string;\n sortDir?: SortDirection;\n searchField?: string;\n search?: string;\n isExactMatch?: boolean;\n}\n\nexport enum Status {\n Active = 1,\n Inactive = 2,\n Deleted = 3,\n Done = 4,\n Invite = 5,\n Pending = 6,\n Expired = 7,\n Accepted = 8,\n UnEnrolled = 9,\n Enroll = 10,\n Waitlist = 11,\n Reject = 12,\n Draft = 13,\n Published = 14,\n Closed = 15,\n Archived = 16,\n ValidToken = 17,\n InValidToken = 18,\n ValidityExpired = 19,\n MultipleSession = 20,\n All = 21,\n Completed = 22\n}\n\nexport enum FamilyPortalStatus {\n Deactivated = 2,\n Invite = 5,\n Pending = 6,\n Expired = 7,\n Accepted = 8,\n All = 21\n}\n\nexport enum ProfileStatus {\n InComplete = 0,\n Complete = 1,\n All = 2\n}\n\nexport interface GuardianListPayload {\n accountId: number;\n programId: number;\n page: number;\n count: number;\n SortDir: number;\n SortField: string;\n SearchField: string;\n Search: string;\n GlobalSearch: string;\n ProgramIdValues: string;\n isExactMatch: boolean;\n familyPortalStatus: FamilyPortalStatus;\n applyRoleFilter?: boolean;\n}\n\nexport interface DeleteContactPayload {\n accountId: number;\n guardiansIds: {\n guardianGuid: string;\n userId: number;\n }[];\n}\n\nexport interface Scholar {\n firstName: string;\n lastName: string;\n scholarGuid: string;\n}\n\nexport interface DeleteParticipantPayload {\n accountId: number;\n participantsGuid: string[];\n}\n\nexport interface ContactAddress {\n id: number;\n guid: string;\n userId: string;\n status: number;\n isGuardian: boolean;\n address1?: string;\n address2?: string;\n zip?: string;\n city?: string;\n state?: string;\n}\n\nexport interface ContactData {\n accountId: number;\n guardianGuid: string;\n guardianId: string;\n userId: number;\n programId: number;\n firstName: string;\n lastName: string;\n email: string;\n phone: string;\n phoneType: string;\n secondaryPhone: string;\n secondaryPhoneType: string;\n profileStatus: number;\n familyPortalStatus: number;\n homeLanguage: string;\n fullName: string;\n scholarData: Scholar[];\n address: ContactAddress;\n initialAddress: ContactAddress;\n}\nexport interface ContactDataCvsParams {\n AccountId: number;\n ProgramIdValues: string;\n SessionIdValues: string;\n GlobalSearch: string;\n IsBulk: boolean;\n IsReport: boolean;\n Status: number;\n Id: number;\n Active: number;\n SearchField: string;\n Search: string;\n CustomField: string;\n RoleType: number;\n IsExactMatch: boolean;\n Page?: number;\n Count?: number;\n SortField: string;\n SortDir: number;\n columnsToHide?: string;\n accountName?: string;\n fileType?: number;\n applyRoleFilter?: boolean;\n}\n\nexport type GuardianRevokeAccessDto = Pick & { status: FamilyPortalStatus };\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./ActionIgnoredPopup.less?vue&type=style&index=0&id=08614441&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/sort-z-to-a-purple.4ddbc705.svg\";","module.exports = __webpack_public_path__ + \"img/checkbox_minus.7df4f020.svg\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./BouncingPreloaderComponent.less?vue&type=style&index=0&id=4eff2a66&lang=less&scoped=true&\"","import API_CONST from '@/constants/ApiConst';\nimport { AddEditProgramPayload, ProgramData, ProgramType } from '@/Model/programs/types';\nimport { httpClient, httpCMSClient } from '@/services/common/httpClient';\n\nexport function getProgramTypes() {\n return httpCMSClient().get>(`${API_CONST.GET_PRODUCTS}`);\n}\n\nexport function addProgram(payload: AddEditProgramPayload) {\n return httpClient().post(`${API_CONST.CONFIGURE_PROGRAM}`, payload);\n}\n\nexport function getProgramData(programId: number) {\n return httpClient().get(`${API_CONST.GET_PROGRAM_DATA}/${programId}/info`);\n}\n\nexport function updateProgram(payload: AddEditProgramPayload) {\n return httpClient().put<''>(`${API_CONST.EDIT_PROGRAM_UPDATE}/${payload.programDto.id}`, payload);\n}","// Program Types\nexport const FETCH_PROGRAM_TYPES_REQUESTED = 'FETCH_PROGRAM_TYPES_REQUESTED';\nexport const FETCH_PROGRAM_TYPES_SUCCEEDED = 'FETCH_PROGRAM_TYPES_SUCCEEDED';\nexport const FETCH_PROGRAM_TYPES_FAILED = 'FETCH_PROGRAM_TYPES_FAILED';\nexport const RESET_FETCH_PROGRAM_TYPES = 'RESET_FETCH_PROGRAM_TYPES';\nexport const SET_PROGRAM_TYPES = 'SET_PROGRAM_TYPES';\n\n// Save Program\nexport const SAVE_PROGRAM_REQUESTED = 'SAVE_PROGRAM_REQUESTED';\nexport const SAVE_PROGRAM_SUCCEEDED = 'SAVE_PROGRAM_SUCCEEDED';\nexport const SAVE_PROGRAM_FAILED = 'SAVE_PROGRAM_FAILED';\nexport const RESET_SAVE_PROGRAM = 'RESET_SAVE_PROGRAM';\n\n// Program Data\nexport const FETCH_PROGRAM_DATA_REQUESTED = 'FETCH_PROGRAM_DATA_REQUESTED';\nexport const FETCH_PROGRAM_DATA_SUCCEEDED = 'FETCH_PROGRAM_DATA_SUCCEEDED';\nexport const FETCH_PROGRAM_DATA_FAILED = 'FETCH_PROGRAM_DATA_FAILED';\nexport const RESET_FETCH_PROGRAM_DATA = 'RESET_FETCH_PROGRAM_DATA'; \nexport const SET_PROGRAM_DATA = 'SET_PROGRAM_DATA';","import { ApiErrorResponse } from '@/Model/errors/api/types';\nimport { AddEditProgramPayload, ProgramData, ProgramType } from '@/Model/programs/types';\nimport { getProgramTypes, addProgram, getProgramData, updateProgram } from '@/services/programs/api';\nimport store from '@/store';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport { Action, getModule, Module, Mutation, VuexModule } from 'vuex-module-decorators';\nimport { FETCH_PROGRAM_TYPES_REQUESTED, FETCH_PROGRAM_TYPES_SUCCEEDED, FETCH_PROGRAM_TYPES_FAILED, RESET_FETCH_PROGRAM_TYPES, SET_PROGRAM_TYPES, SAVE_PROGRAM_REQUESTED, SAVE_PROGRAM_SUCCEEDED, SAVE_PROGRAM_FAILED, RESET_SAVE_PROGRAM, FETCH_PROGRAM_DATA_REQUESTED, FETCH_PROGRAM_DATA_SUCCEEDED, FETCH_PROGRAM_DATA_FAILED, RESET_FETCH_PROGRAM_DATA, SET_PROGRAM_DATA } from './mutationNames';\n\n@Module({\n namespaced: true,\n name: 'programs',\n store,\n dynamic: true\n})\nexport class ProgramsModule extends VuexModule {\n programTypes: Array = [];\n isFetchingProgramTypes = false;\n didFetchProgramTypesFail = false;\n fetchProgramTypesFailedError: ApiErrorResponse | null = null;\n\n isSavingProgram = false;\n didSaveProgramFail = false;\n saveProgramFailedError: ApiErrorResponse | null = null;\n\n programData: ProgramData | null = null;\n isInitialFetchingProgramData = true;\n isFetchingProgramData = false;\n didFetchProgramDataFail = false;\n fetchProgramDataFailedError: ApiErrorResponse | null = null;\n\n @Mutation\n [FETCH_PROGRAM_TYPES_REQUESTED]() {\n this.isFetchingProgramTypes = true;\n this.didFetchProgramTypesFail = false;\n this.fetchProgramTypesFailedError = null;\n }\n\n @Mutation\n [FETCH_PROGRAM_TYPES_SUCCEEDED]() {\n this.isFetchingProgramTypes = false;\n this.didFetchProgramTypesFail = false;\n this.fetchProgramTypesFailedError = null;\n }\n\n @Mutation\n [FETCH_PROGRAM_TYPES_FAILED](error: ApiErrorResponse) {\n this.isFetchingProgramTypes = false;\n this.didFetchProgramTypesFail = true;\n this.fetchProgramTypesFailedError = error;\n }\n\n @Mutation\n [RESET_FETCH_PROGRAM_TYPES]() {\n this.isFetchingProgramTypes = false;\n this.didFetchProgramTypesFail = false;\n this.fetchProgramTypesFailedError = null;\n }\n\n @Mutation\n [SET_PROGRAM_TYPES](programTypes: Array) {\n this.programTypes = programTypes;\n }\n\n @Mutation\n [SAVE_PROGRAM_REQUESTED]() {\n this.isSavingProgram = true;\n this.didSaveProgramFail = false;\n this.saveProgramFailedError = null;\n }\n\n @Mutation\n [SAVE_PROGRAM_SUCCEEDED]() {\n this.isSavingProgram = false;\n this.didSaveProgramFail = false;\n this.saveProgramFailedError = null;\n }\n\n @Mutation\n [SAVE_PROGRAM_FAILED](error: ApiErrorResponse) {\n this.isSavingProgram = false;\n this.didSaveProgramFail = true;\n this.saveProgramFailedError = error;\n }\n\n @Mutation\n [RESET_SAVE_PROGRAM]() {\n this.isSavingProgram = false;\n this.didSaveProgramFail = false;\n this.saveProgramFailedError = null;\n }\n\n @Mutation\n [FETCH_PROGRAM_DATA_REQUESTED]() {\n this.isFetchingProgramData = true;\n this.didFetchProgramDataFail = false;\n this.fetchProgramDataFailedError = null;\n }\n\n @Mutation\n [FETCH_PROGRAM_DATA_SUCCEEDED]() {\n this.isFetchingProgramData = false;\n this.didFetchProgramDataFail = false;\n this.fetchProgramDataFailedError = null;\n this.isInitialFetchingProgramData = false;\n }\n\n @Mutation\n [FETCH_PROGRAM_DATA_FAILED](error: ApiErrorResponse) {\n this.isFetchingProgramData = false;\n this.didFetchProgramDataFail = true;\n this.fetchProgramDataFailedError = error;\n this.isInitialFetchingProgramData = false;\n }\n\n @Mutation\n [RESET_FETCH_PROGRAM_DATA]() {\n this.isInitialFetchingProgramData = true;\n this.isFetchingProgramData = false;\n this.didFetchProgramDataFail = false;\n this.fetchProgramDataFailedError = null;\n }\n\n @Mutation\n [SET_PROGRAM_DATA](programData: ProgramData | null) {\n this.programData = programData;\n }\n\n @Action\n async fetchProgramTypes() {\n try {\n this.FETCH_PROGRAM_TYPES_REQUESTED();\n const response = await getProgramTypes();\n this.SET_PROGRAM_TYPES(response.data);\n this.FETCH_PROGRAM_TYPES_SUCCEEDED();\n return response;\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.FETCH_PROGRAM_TYPES_FAILED(apiErrorResponse);\n }\n }\n\n @Action\n async createProgram(payload: AddEditProgramPayload) {\n try {\n this.SAVE_PROGRAM_REQUESTED();\n const response = await addProgram(payload);\n const newProgramId: number = response.data; // The API literally just returns the ID and that's it\n APP_UTILITIES.setCookie('program_id', `${newProgramId}`, 1); // TODO (REFACTOR): This is how the app currently stores/passes the ID to the next page to fetch data -- not ideal, but keeping for now\n this.SAVE_PROGRAM_SUCCEEDED();\n return response;\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.SAVE_PROGRAM_FAILED(apiErrorResponse);\n }\n }\n\n @Action\n async fetchProgramData(programId: number) {\n try {\n this.FETCH_PROGRAM_DATA_REQUESTED();\n const response = await getProgramData(programId);\n this.SET_PROGRAM_DATA(response && response.data);\n this.FETCH_PROGRAM_DATA_SUCCEEDED();\n return response;\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.FETCH_PROGRAM_DATA_FAILED(apiErrorResponse);\n }\n }\n\n @Action\n async updateProgram(payload: AddEditProgramPayload) {\n try {\n this.SAVE_PROGRAM_REQUESTED();\n const response = await updateProgram(payload);\n this.SAVE_PROGRAM_SUCCEEDED();\n return response;\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.SAVE_PROGRAM_FAILED(apiErrorResponse);\n }\n }\n}\nexport default getModule(ProgramsModule);","module.exports = __webpack_public_path__ + \"img/checkbox_sprite_lightgrey.4a0fa101.svg\";","module.exports = __webpack_public_path__ + \"img/sort-z-to-a-white.a9fe51e4.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('OffCanvas',{attrs:{\"isVisible\":_vm.isAddEditProgramVisibleSync,\"shouldFocusFirstField\":true},on:{\"update:isVisible\":function($event){_vm.isAddEditProgramVisibleSync=$event},\"update:is-visible\":function($event){_vm.isAddEditProgramVisibleSync=$event},\"onBeforeClose\":_vm.onBeforeClose,\"onClose\":_vm.onClose}},[_c('aside',{staticClass:\"add-new-sec add-edit-program\"},[(!_vm.programsModule.isFetchingProgramTypes)?_c('div',[_c('div',{staticClass:\"stepper-section-header\"},[_c('h3',{attrs:{\"bx-attr\":\"add-program-label\"}},[_vm._v(\" \"+_vm._s(_vm.formTitle)+\" \")])]),_c('div',{staticClass:\"add-head\"},[_c('form',{staticClass:\"form-wrapper\",attrs:{\"autocomplete\":\"off\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"form-group-wrapper uk-padding-remove uk-margin-remove\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"bx-attr\":\"program-name-label\",\"for\":\"programName\"}},[_vm._v(\" \"+_vm._s(_vm.programNameLabel)),_c('span',{staticClass:\"asterisk\"},[_vm._v(\"*\")])]),_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.programData.programName),expression:\"programData.programName\",modifiers:{\"trim\":true}}],class:{ 'outline-red': _vm.shouldApplyErrorClassForProgramName },attrs:{\"bx-attr\":\"program-name-input\",\"id\":\"programName\",\"name\":\"programName\",\"required\":\"\",\"maxlength\":_vm.programNameMaxLength},domProps:{\"value\":(_vm.programData.programName)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.$set(_vm.programData, \"programName\", $event.target.value.trim())},_vm.onInputProgramName],\"blur\":function($event){return _vm.$forceUpdate()}}}),(_vm.shouldShowErrorForProgramName)?_c('span',{staticClass:\"error-message\",attrs:{\"bx-attr\":\"program-name-error-message\"}},[_vm._v(\" \"+_vm._s(_vm.formFieldStates.programName.errorMessage)+\" \")]):_vm._e()])]),_c('div',{staticClass:\"form-group-wrapper uk-padding-remove uk-margin-remove\"},[_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"uk-grid\"},[_c('div',{staticClass:\"uk-width-1-2\"},[_c('div',{staticClass:\"form-group-wrapper datepicker-wrapper uk-padding-remove uk-margin-remove\"},[_c('label',[_vm._v(\" \"+_vm._s(_vm.programStartDateLabel)),_c('span',{staticClass:\"asterisk\"},[_vm._v(\"*\")])]),_c('DatepickerComponent',{attrs:{\"bx-attr\":\"program-start-date-input\",\"id\":\"programStartDate\",\"inputClass\":_vm.startDateDatepickerInputClass,\"date\":_vm.programData.programStartDate,\"fromDate\":_vm.programStartDateMax,\"openDate\":_vm.startDateOpenDate},on:{\"onDateChange\":_vm.onChangeProgramStartDate}}),(_vm.shouldShowErrorForProgramStartDate)?_c('span',{staticClass:\"error-message\",attrs:{\"bx-attr\":\"program-start-date-error-message\"}},[_vm._v(\" \"+_vm._s(_vm.formFieldStates.programStartDate.errorMessage)+\" \")]):_vm._e()],1)]),_c('div',{staticClass:\"uk-width-1-2\"},[_c('div',{staticClass:\"form-group-wrapper datepicker-wrapper uk-padding-remove uk-margin-remove\"},[_c('label',[_vm._v(\" \"+_vm._s(_vm.programEndDateLabel)),_c('span',{staticClass:\"asterisk\"},[_vm._v(\"*\")])]),_c('DatepickerComponent',{attrs:{\"bx-attr\":\"program-end-date-input\",\"id\":\"programEndDate\",\"inputClass\":_vm.endDateDatepickerInputClass,\"date\":_vm.programData.programEndDate,\"toDate\":_vm.programEndDateMin,\"openDate\":_vm.endDateOpenDate},on:{\"onDateChange\":_vm.onChangeProgramEndDate}}),(_vm.shouldShowErrorForProgramEndDate)?_c('span',{staticClass:\"error-message\",attrs:{\"bx-attr\":\"program-end-date-error-message\"}},[_vm._v(\" \"+_vm._s(_vm.formFieldStates.programEndDate.errorMessage)+\" \")]):_vm._e()],1)])])]),_c('div',{staticClass:\"form-row\"},[_c('p',{staticClass:\"program-session-conflict-warning\"},[(_vm.shouldShowDateRangeSessionHint)?_c('span',[_vm._v(\" \"+_vm._s(_vm.programSessionDateConflictHint)+\" \")]):_vm._e()])])])]),_c('div',{staticClass:\"form-group-wrapper uk-padding-remove uk-margin-remove\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"bx-attr\":\"program-enrollment-goal-label\",\"for\":\"programEnrollmentGoal\"}},[_vm._v(\" \"+_vm._s(_vm.programEnrollmentGoalLabel)),_c('span',{staticClass:\"asterisk\"},[_vm._v(\"*\")]),_c('span',{staticClass:\"normal-font input-qualifier\"},[_vm._v(\"(\"+_vm._s(_vm.programEnrollmentGoalQualifierLabel)+\")\")])]),_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.programData.programEnrollmentGoal),expression:\"programData.programEnrollmentGoal\",modifiers:{\"number\":true}}],class:{ 'outline-red': _vm.shouldApplyErrorClassForProgramEnrollmentGoal },attrs:{\"bx-attr\":\"program-enrollment-goal-input\",\"id\":\"programEnrollmentGoal\",\"name\":\"programEnrollmentGoal\",\"required\":\"\",\"maxlength\":_vm.programEnrollmentGoalMaxLength},domProps:{\"value\":(_vm.programData.programEnrollmentGoal)},on:{\"keypress\":_vm.forceNumberInput,\"input\":[function($event){if($event.target.composing){ return; }_vm.$set(_vm.programData, \"programEnrollmentGoal\", _vm._n($event.target.value))},_vm.onInputProgramEnrollmentGoal],\"blur\":function($event){return _vm.$forceUpdate()}}}),(_vm.shouldShowErrorForProgramEnrollmentGoal)?_c('span',{staticClass:\"error-message\",attrs:{\"bx-attr\":\"program-enrollment-goal-error-message\"}},[_vm._v(\" \"+_vm._s(_vm.formFieldStates.programEnrollmentGoal.errorMessage)+\" \")]):_vm._e()])]),_c('div',{staticClass:\"form-group-wrapper uk-padding-remove uk-margin-remove\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"bx-attr\":\"program-type-label\"}},[_vm._v(\" \"+_vm._s(_vm.programTypeLabel)),_c('span',{staticClass:\"asterisk\"},[_vm._v(\"*\")])]),_c('DropdownList',{attrs:{\"dropdown\":_vm.programTypeDropdownListOptions,\"autoSelectionAllowed\":true},on:{\"onSelectionChange\":_vm.onSelectProgramType}}),(_vm.shouldShowErrorForProgramType)?_c('span',{staticClass:\"error-message\",attrs:{\"bx-attr\":\"program-type-error-message\"}},[_vm._v(\" \"+_vm._s(_vm.formFieldStates.programType.errorMessage)+\" \")]):_vm._e()],1)]),_c('div',{staticClass:\"form-group-wrapper uk-padding-remove uk-margin-remove\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"bx-attr\":\"program-description-label\",\"for\":\"programDescription\"}},[_vm._v(\" \"+_vm._s(_vm.programDescriptionLabel)+\" \")]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.programData.programDescription),expression:\"programData.programDescription\"}],class:{ 'outline-red': _vm.shouldApplyErrorClassForProgramDescription },attrs:{\"id\":\"programDescription\",\"name\":\"programDescription\",\"maxlength\":_vm.programDescriptionMaxLength},domProps:{\"value\":(_vm.programData.programDescription)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.$set(_vm.programData, \"programDescription\", $event.target.value)},_vm.onInputProgramDescription]}}),(_vm.shouldShowErrorForProgramDescription)?_c('span',{staticClass:\"error-message\",attrs:{\"bx-attr\":\"program-description-error-message\"}},[_vm._v(\" \"+_vm._s(_vm.formFieldStates.programDescription.errorMessage)+\" \")]):_vm._e()])])]),_c('div',{staticClass:\"form-group button-container\"},[_c('a',{staticClass:\"cancel-btn btn-secondary\",attrs:{\"bx-attr\":\"cancel-btn\",\"href\":\"javascript:void(0)\"},on:{\"click\":_vm.onCancel}},[_vm._v(\" \"+_vm._s(_vm.cancelButtonText)+\" \")]),_c('ProgressButton',{attrs:{\"bx-attr\":\"save-btn\",\"apiResponseCode\":_vm.saveProgressButtonState,\"isValidation\":_vm.isValidForProgressButton,\"buttonIndex\":_vm.saveButtonText,\"buttonText\":_vm.saveButtonText,\"updateProgress\":true},on:{\"submitData\":function($event){return _vm.onSubmit()}}})],1),(_vm.footerErrorMessage)?_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"error-message lineheight\",attrs:{\"bx-attr\":\"common-error\"}},[_vm._v(\" \"+_vm._s(_vm.footerErrorMessage)+\" \")])]):_vm._e()])])]):_c('div',[_c('BouncingPreloader')],1)]),_c('CancelConfirmation',{attrs:{\"isVisible\":_vm.isCancelConfirmationVisible,\"hasContinueEvent\":true},on:{\"update:isVisible\":function($event){_vm.isCancelConfirmationVisible=$event},\"update:is-visible\":function($event){_vm.isCancelConfirmationVisible=$event},\"continue\":_vm.onContinueConfirmation}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Emit, Prop, PropSync, Vue, Watch } from 'vue-property-decorator';\nimport { ScreenText } from '@/lang/ScreenText';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport ProgramsModule from '@/store/modules/Programs/module';\nimport SessionsModule from '@/store/modules/Sessions/module';\nimport OffCanvas from '@/commoncomponents/OffCanvas.vue';\nimport DatepickerComponent from '@/ui-components/datepicker/DatepickerComponent.vue';\nimport DropdownList from '@/ui-components/dropdownListBx/DropdownList.vue';\nimport { DropdownListItem, DropdownListOptions } from '@/ui-components/dropdownListBx/types';\nimport ProgressButton from '@/commoncomponents/progressButton/progressButton.vue';\nimport { AddEditProgramData, AddEditProgramPayload, ProgramType, AddEditProgramDataFormField, AddEditProgramFormData } from '@/Model/programs/types';\nimport CancelConfirmation from '@/popupcomponents/cancelConfirmation/CancelConfirmation.vue';\nimport APP_CONST from '@/constants/AppConst';\nimport BouncingPreloader from '@/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent.vue';\nimport { ApiErrorType } from '@/Model/errors/api/types';\nimport { FormFieldValidation, FormValidation, FormValidationError } from '@/Model/forms/types';\n\n@Component({\n components: {\n OffCanvas,\n DatepickerComponent,\n DropdownList,\n ProgressButton,\n CancelConfirmation,\n BouncingPreloader\n }\n})\nexport default class AddEditProgram extends Vue {\n\n @Prop({ type: Boolean, default: false }) readonly isEditMode!: boolean;\n @PropSync('isAddEditProgramVisible', { type: Boolean, required: true }) isAddEditProgramVisibleSync!: boolean;\n\n @Emit('onProgramUpdate')\n onProgramUpdate(programId: number) {\n return programId;\n }\n\n readonly screenText = new ScreenText();\n readonly programsModule = ProgramsModule;\n readonly sessionsModule = SessionsModule;\n readonly programNameMaxLength = 100;\n readonly programEnrollmentGoalMin = 1;\n readonly programEnrollmentGoalMax = 10000000;\n readonly programEnrollmentGoalMaxLength = 8;\n readonly programDescriptionMaxLength = 500;\n readonly defaultInitialProgramData: AddEditProgramData = {\n programId: 0,\n programName: '',\n programStartDate: null,\n programEndDate: null,\n programType: null,\n programEnrollmentGoal: '',\n programDescription: ''\n };\n\n isValidForProgressButton = true;\n isCancelConfirmationVisible = false;\n skipCancelConfirmation = false;\n hasUserSubmitted = false;\n programData: AddEditProgramData = { ...this.initialProgramData };\n\n get previousProgramTypeId(): number {\n return (this.initialProgramData.programType && this.initialProgramData.programType.id) || -1;\n }\n\n get initialProgramData(): AddEditProgramData {\n const storeProgramData = this.programsModule.programData;\n if (!this.isEditMode || !storeProgramData || !storeProgramData.programDto) {\n return this.defaultInitialProgramData;\n }\n let startDate: Date | null = null;\n let endDate: Date | null = null;\n try {\n startDate = new Date(storeProgramData.programDto.startDate);\n endDate = new Date(storeProgramData.programDto.endDate);\n }\n catch (error) {\n console.log('Error converting initial program data:', error);\n }\n const programType: ProgramType | null = this.programsModule.programTypes\n .find(pt => pt.id === storeProgramData.programDto.productId) || null;\n return {\n programId: storeProgramData.programDto.id,\n programName: storeProgramData.programDto.name,\n programStartDate: startDate,\n programEndDate: endDate,\n programEnrollmentGoal: storeProgramData.programDto.numberOfScholars,\n programType: programType,\n programDescription: storeProgramData.programDto.description\n };\n }\n\n get formTitle(): string {\n return this.isEditMode\n ? this.screenText.getScreenText('EDIT_PROGRAM_TITLE')\n : this.screenText.getScreenText('ADD_PROGRAM_TITLE');\n }\n\n get programNameLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_NAME');\n }\n\n get programStartDateLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_START_DATE');\n }\n\n get programEndDateLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_END_DATE');\n }\n\n get programSessionDateConflictHint(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_SESSION_DATE_CONFLICT_HINT');\n }\n\n get programEnrollmentGoalLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_ENROLLMENT_GOAL');\n }\n\n get programEnrollmentGoalQualifierLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_ENROLLMENT_INPUT_QUALIFIER');\n }\n\n get programTypeLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_TYPE');\n }\n\n get programDescriptionLabel(): string {\n return this.screenText.getScreenText('ADD_EDIT_PROGRAM_DESCRIPTION');\n }\n\n get cancelButtonText(): string {\n return this.screenText.getScreenText('BTN_CANCEL');\n }\n\n get saveButtonText(): string {\n return this.screenText.getScreenText('BTN_SAVE');\n }\n\n get programTypeDropdownListOptions(): DropdownListOptions {\n const dropdownList: Array = this.programsModule.programTypes.map((programType) => ({\n id: programType.id,\n value: programType.name\n }));\n const programTypeId = (this.programData.programType && this.programData.programType.id) || 0;\n const programTypeName = (this.programData.programType && this.programData.programType.name) || this.screenText.getScreenText('ADD_EDIT_PROGRAM_TYPE_DEFAULT_SELECT');\n return {\n id: programTypeId,\n singleSelect: true,\n showSelectLabel: true,\n value: programTypeName,\n dropdownList,\n error: this.shouldApplyErrorClassForFormField('programType'),\n errorText: this.shouldShowErrorForFormField('programType')\n ? this.formFieldStates.programType.errorMessage\n : ''\n };\n }\n\n get programStartDateMax(): Date | null {\n if (this.isEditMode) {\n const sessionStartDateTimes = this.sessionsModule.sessions.map(session => new Date(session.startDateTime));\n const sessionStartDateTimesExist = (sessionStartDateTimes || []).length > 0;\n if (sessionStartDateTimesExist) {\n const earliestSessionStartDate = sessionStartDateTimes.reduce((prev, cur) => cur.getTime() < prev.getTime()\n ? cur\n : prev, sessionStartDateTimes[0]);\n return earliestSessionStartDate;\n }\n }\n const programEndDate = this.programData.programEndDate;\n if (programEndDate && programEndDate instanceof Date) {\n return programEndDate;\n }\n return null;\n }\n\n get programEndDateMin(): Date | null {\n if (this.isEditMode) {\n const sessionEndDateTimes = this.sessionsModule.sessions.map(session => new Date(session.endDateTime));\n const sessionEndDateTimesExist = (sessionEndDateTimes || []).length > 0;\n if (sessionEndDateTimesExist) {\n const furthestOutSessionEndDate = sessionEndDateTimes.reduce((prev, cur) => cur.getTime() > prev.getTime()\n ? cur\n : prev, sessionEndDateTimes[0]);\n return furthestOutSessionEndDate;\n }\n }\n const programStartDate = this.programData.programStartDate;\n if (programStartDate && programStartDate instanceof Date) {\n return programStartDate;\n }\n return null;\n }\n\n get footerErrorMessage(): string {\n let message = '';\n if (this.programsModule.saveProgramFailedError) {\n const isProgramNameDuplicateApiError = this.programsModule.saveProgramFailedError.name === ApiErrorType.Error_ProgramNameExistsInAccount;\n if (isProgramNameDuplicateApiError && this.formFieldStates.programName.error === FormValidationError.DUPLICATE) {\n message = this.programsModule.saveProgramFailedError.value;\n }\n const isUnknownApiError = this.programsModule.saveProgramFailedError.name === ApiErrorType.Error_Unknown;\n if (isUnknownApiError) {\n message = this.programsModule.saveProgramFailedError.value;\n }\n }\n if (!message && this.hasUserSubmitted && (this.doAnyFormFieldsHaveSpecificError(FormValidationError.REQUIRED))) {\n message = this.screenText.getScreenText('ALL_FIELDS_MANDATORY');\n }\n return message;\n }\n\n get startDateOpenDate(): Date {\n return this.programData.programStartDate || this.programData.programEndDate || new Date();\n }\n\n get endDateOpenDate(): Date {\n return this.programData.programEndDate || this.programData.programStartDate || new Date();\n }\n\n get startDateDatepickerInputClass(): string {\n return this.getDatepickerInputClass('programStartDate');\n }\n\n get endDateDatepickerInputClass(): string {\n return this.getDatepickerInputClass('programEndDate');\n }\n\n get saveProgressButtonState(): number {\n if (!this.programsModule.isSavingProgram && !this.programsModule.didSaveProgramFail) {\n return 200;\n }\n else if (!this.programsModule.isSavingProgram && this.programsModule.didSaveProgramFail) {\n return 400;\n }\n return 0;\n }\n\n get shouldShowDateRangeSessionHint(): boolean {\n return (!this.shouldShowErrorForFormField('programStartDate') && !this.shouldShowErrorForFormField('programEndDate'));\n }\n\n get shouldApplyErrorClassForProgramName(): boolean {\n return this.shouldApplyErrorClassForFormField('programName');\n }\n\n get shouldApplyErrorClassForProgramEnrollmentGoal(): boolean {\n return this.shouldApplyErrorClassForFormField('programEnrollmentGoal');\n }\n\n get shouldApplyErrorClassForProgramType(): boolean {\n return this.shouldApplyErrorClassForFormField('programType');\n }\n\n get shouldApplyErrorClassForProgramDescription(): boolean {\n return this.shouldApplyErrorClassForFormField('programDescription');\n }\n\n get shouldShowErrorForProgramName(): boolean {\n if (\n this.programsModule.saveProgramFailedError &&\n this.programsModule.saveProgramFailedError.name === ApiErrorType.Error_ProgramNameExistsInAccount &&\n this.formFieldStates.programName.error === FormValidationError.DUPLICATE &&\n this.shouldApplyErrorClassForFormField('programName')\n ) {\n return true;\n }\n return this.shouldShowErrorForFormField('programName');\n }\n\n get shouldShowErrorForProgramStartDate(): boolean {\n return this.shouldShowErrorForFormField('programStartDate');\n }\n\n get shouldShowErrorForProgramEndDate(): boolean {\n return this.shouldShowErrorForFormField('programEndDate');\n }\n\n get shouldShowErrorForProgramEnrollmentGoal(): boolean {\n return this.shouldShowErrorForFormField('programEnrollmentGoal');\n }\n\n get shouldShowErrorForProgramType(): boolean {\n return this.shouldShowErrorForFormField('programType');\n }\n\n get shouldShowErrorForProgramDescription(): boolean {\n return this.shouldShowErrorForFormField('programDescription');\n }\n\n // Form validation -- ideally should be done via a library\n formFieldStates: FormFieldValidation = {\n programName: this.getDefaultFormFieldValidationState(),\n programStartDate: this.getDefaultFormFieldValidationState(),\n programEndDate: this.getDefaultFormFieldValidationState(),\n programEnrollmentGoal: this.getDefaultFormFieldValidationState(),\n programType: this.getDefaultFormFieldValidationState(),\n programDescription: this.getDefaultFormFieldValidationState(),\n };\n\n @Watch('programsModule.saveProgramFailedError')\n onSaveProgramFailedErrorChanged(saveProgramFailedError: typeof ProgramsModule.saveProgramFailedError) {\n if (saveProgramFailedError && saveProgramFailedError.name === ApiErrorType.Error_ProgramNameExistsInAccount) {\n const formFieldState = this.formFieldStates.programName;\n formFieldState.error = FormValidationError.DUPLICATE;\n formFieldState.errorMessage = saveProgramFailedError.value;\n formFieldState.valid = false;\n }\n }\n\n created() {\n this.programsModule.fetchProgramTypes().then(() => {\n if (this.isEditMode) {\n this.programData = {\n ...this.programData,\n programType: this.initialProgramData.programType\n };\n }\n });\n }\n\n forceNumberInput = APP_UTILITIES.forceNumberInput;\n\n getDefaultFormFieldValidationState(): FormValidation {\n return {\n changes: false,\n dirty: false,\n error: null,\n errorMessage: '',\n valid: false\n };\n }\n\n checkFormFieldChanges(field: AddEditProgramDataFormField) {\n const formFieldState = this.formFieldStates[field];\n let initial = this.initialProgramData[field];\n let current = this.programData[field];\n if (typeof initial === 'string') {\n initial = initial.trim();\n }\n if (typeof current === 'string') {\n current = current.trim();\n }\n let hasChanges = (initial !== current);\n\n // Special condition for enrollment goal because if input is erased\n // it is modelled as an empty string rather than a number, so we\n // instead check if both are falsy, meaning no changes occurred\n if (field === 'programEnrollmentGoal' && !initial && !current) {\n hasChanges = false;\n }\n\n formFieldState.changes = hasChanges;\n\n if (hasChanges && this.hasUserSubmitted) {\n this.checkFormValid();\n }\n }\n\n onInputProgramName() {\n const formFieldState = this.formFieldStates.programName;\n if (!formFieldState.dirty) {\n formFieldState.dirty = true;\n }\n this.checkFormFieldChanges('programName');\n }\n\n checkProgramNameValid() {\n const programName = this.programData.programName;\n const formFieldState = this.formFieldStates.programName;\n if (!programName || !programName.trim() || !programName.trim().length) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.REQUIRED;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_NAME')} ${this.screenText.getScreenText('FORM_VALIDATION_REQUIRED_PREDICATE')}.`;\n }\n else if (programName.length > this.programNameMaxLength) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.MAX_LENGTH;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_NAME')} ${this.screenText.getScreenText('FORM_VALIDATION_MAX_LENGTH_PREDICATE')} ${this.programNameMaxLength}.`;\n }\n else {\n formFieldState.valid = true;\n formFieldState.error = null;\n formFieldState.errorMessage = '';\n }\n }\n\n onChangeProgramStartDate(startDate: Date) {\n this.programData.programStartDate = startDate;\n const formFieldState = this.formFieldStates.programStartDate;\n if (!formFieldState.dirty) {\n formFieldState.dirty = true;\n }\n this.checkFormFieldChanges('programStartDate');\n }\n\n checkProgramStartDateValid() {\n const programStartDate = this.programData.programStartDate;\n const formFieldState = this.formFieldStates.programStartDate;\n if (!programStartDate) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.REQUIRED;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_START_DATE')} ${this.screenText.getScreenText('FORM_VALIDATION_REQUIRED_PREDICATE')}.`;\n }\n else {\n formFieldState.valid = true;\n formFieldState.error = null;\n formFieldState.errorMessage = '';\n }\n }\n\n onChangeProgramEndDate(endDate: Date) {\n this.programData.programEndDate = endDate;\n const formFieldState = this.formFieldStates.programEndDate;\n if (!formFieldState.dirty) {\n formFieldState.dirty = true;\n }\n this.checkFormFieldChanges('programEndDate');\n }\n\n checkProgramEndDateValid() {\n const programStartDate = this.programData.programStartDate;\n const programEndDate = this.programData.programEndDate;\n const formFieldState = this.formFieldStates.programEndDate;\n if (!programEndDate) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.REQUIRED;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_END_DATE')} ${this.screenText.getScreenText('FORM_VALIDATION_REQUIRED_PREDICATE')}.`;\n }\n else if (programStartDate && programStartDate > programEndDate) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.MIN;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_END_DATE')} ${this.screenText.getScreenText('FORM_VALIDATION_GREATER_THAN_PREDICATE')} ${this.screenText.getScreenText('ADD_EDIT_PROGRAM_START_DATE')}.`;\n }\n else {\n formFieldState.valid = true;\n formFieldState.error = null;\n formFieldState.errorMessage = '';\n }\n }\n\n onInputProgramEnrollmentGoal() {\n const formFieldState = this.formFieldStates.programEnrollmentGoal;\n if (!formFieldState.dirty) {\n formFieldState.dirty = true;\n }\n this.checkFormFieldChanges('programEnrollmentGoal');\n }\n\n checkProgramEnrollmentGoalValid() {\n const programEnrollmentGoal = this.programData.programEnrollmentGoal;\n const formFieldState = this.formFieldStates.programEnrollmentGoal;\n if (programEnrollmentGoal === undefined || programEnrollmentGoal === null || programEnrollmentGoal === '') {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.REQUIRED;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_ENROLLMENT_GOAL')} ${this.screenText.getScreenText('FORM_VALIDATION_REQUIRED_PREDICATE')}.`;\n }\n else if (typeof programEnrollmentGoal !== 'number') {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.TYPE;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_ENROLLMENT_GOAL')} ${this.screenText.getScreenText('FORM_VALIDATION_NUMBER_ONLY_PREDICATE')}.`;\n }\n else if (programEnrollmentGoal > this.programEnrollmentGoalMax) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.MAX;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_ENROLLMENT_GOAL')} ${this.screenText.getScreenText('FORM_VALIDATION_LESS_THAN_EQUAL_TO_PREDICATE')} ${this.programEnrollmentGoalMax}.`;\n }\n else if (programEnrollmentGoal < this.programEnrollmentGoalMin) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.MIN;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_ENROLLMENT_GOAL')} ${this.screenText.getScreenText('FORM_VALIDATION_GREATER_THAN_PREDICATE')} ${this.programEnrollmentGoalMin - 1}.`;\n }\n else {\n formFieldState.valid = true;\n formFieldState.error = null;\n formFieldState.errorMessage = '';\n }\n }\n\n onSelectProgramType(selection: DropdownListItem) {\n this.programData.programType = this.programsModule.programTypes.find(pt => pt.id === selection.id) || null;\n const formFieldState = this.formFieldStates.programType;\n if (!formFieldState.dirty) {\n formFieldState.dirty = true;\n }\n this.checkFormFieldChanges('programType');\n }\n\n checkProgramTypeValid() {\n const programType = this.programData.programType;\n const formFieldState = this.formFieldStates.programType;\n if (!programType) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.REQUIRED;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_TYPE')} ${this.screenText.getScreenText('FORM_VALIDATION_REQUIRED_PREDICATE')}.`;\n }\n else {\n formFieldState.valid = true;\n formFieldState.error = null;\n formFieldState.errorMessage = '';\n }\n }\n\n onInputProgramDescription() {\n const formFieldState = this.formFieldStates.programDescription;\n if (!formFieldState.dirty) {\n formFieldState.dirty = true;\n }\n this.checkFormFieldChanges('programDescription');\n }\n\n checkProgramDescriptionValid() {\n const programDescription = this.programData.programDescription;\n const formFieldState = this.formFieldStates.programDescription;\n if (programDescription && programDescription.trim() && programDescription.length > this.programDescriptionMaxLength) {\n formFieldState.valid = false;\n formFieldState.error = FormValidationError.MAX_LENGTH;\n formFieldState.errorMessage = `${this.screenText.getScreenText('ADD_EDIT_PROGRAM_DESCRIPTION')} ${this.screenText.getScreenText('FORM_VALIDATION_MAX_LENGTH_PREDICATE')} ${this.programDescriptionMaxLength}.`;\n }\n else {\n formFieldState.valid = true;\n formFieldState.error = null;\n formFieldState.errorMessage = '';\n }\n }\n\n onCancel() {\n this.isAddEditProgramVisibleSync = false;\n }\n\n onBeforeClose(event: Event) {\n if (this.programsModule.isSavingProgram) {\n event.preventDefault();\n }\n else if (this.hasFormChanges() && !this.skipCancelConfirmation) {\n this.isCancelConfirmationVisible = true;\n event.preventDefault();\n }\n }\n\n onClose() {\n this.isAddEditProgramVisibleSync = false;\n this.skipCancelConfirmation = false;\n this.resetForm();\n this.programsModule.RESET_SAVE_PROGRAM();\n }\n\n onContinueConfirmation() {\n this.isCancelConfirmationVisible = false;\n this.onClose();\n }\n\n async onSubmit() {\n this.hasUserSubmitted = true;\n this.programsModule.RESET_SAVE_PROGRAM();\n const allowSubmit = !this.programsModule.isSavingProgram && this.isFormValid() && this.hasFormChanges();\n if (!allowSubmit) {\n return;\n }\n\n const prepDate = (date: Date | null) => {\n return date\n ? APP_UTILITIES.formatFullYearDate(date.toISOString())\n : '';\n };\n const accountIdCookie = APP_UTILITIES.getCookie('accountId');\n const accountId = accountIdCookie\n ? Number.parseInt(accountIdCookie)\n : 0;\n const productId = (this.programData.programType && this.programData.programType.id) || 0;\n const startDate = prepDate(this.programData.programStartDate);\n const endDate = prepDate(this.programData.programEndDate);\n const numberOfScholars = this.programData.programEnrollmentGoal || 0;\n const initialStatus = (this.programsModule.programData && this.programsModule.programData.programDto.status) || 1;\n\n // Many of these values are hardcoded in the previous implementation\n const payload: AddEditProgramPayload = {\n programAdminId: 0, // Hardcoded `0` in original implementation\n isFinalSubmit: true, // Originally took the value of a component prop of the same name, but always got set to `true` during validation\n validationMode: this.isEditMode\n ? 2\n : 0,\n isProgramDateChanged: true, // Hardcoded `true` in original implementation\n programDto: {\n id: this.programData.programId,\n roleId: 0, // Hardcoded `0` in original implementation\n accId: accountId,\n name: this.programData.programName,\n productId,\n description: this.programData.programDescription,\n startDate,\n endDate,\n numberOfScholars,\n previousProductId: this.previousProgramTypeId,\n status: initialStatus,\n }\n };\n this.isValidForProgressButton = false;\n if (this.isEditMode) {\n await this.programsModule.updateProgram(payload);\n if (!this.programsModule.didSaveProgramFail) {\n this.isValidForProgressButton = true;\n this.programsModule.RESET_FETCH_PROGRAM_DATA();\n this.onProgramUpdate(payload.programDto.id);\n this.skipCancelConfirmation = true;\n this.isAddEditProgramVisibleSync = false;\n this.onClose();\n }\n }\n else {\n await this.programsModule.createProgram(payload);\n if (!this.programsModule.didSaveProgramFail) {\n this.isValidForProgressButton = true;\n this.skipCancelConfirmation = true;\n this.programsModule.RESET_FETCH_PROGRAM_DATA();\n this.$router.push(APP_CONST.APP_ROUTES.ACCOUNT_PROGRAMS_SESSIONS);\n }\n }\n }\n\n checkFormValid() {\n this.checkProgramNameValid();\n this.checkProgramStartDateValid();\n this.checkProgramEndDateValid();\n this.checkProgramEnrollmentGoalValid();\n this.checkProgramTypeValid();\n this.checkProgramDescriptionValid();\n }\n\n resetForm() {\n this.hasUserSubmitted = false;\n this.programData = { ...this.initialProgramData };\n this.formFieldStates = {\n programName: this.getDefaultFormFieldValidationState(),\n programStartDate: this.getDefaultFormFieldValidationState(),\n programEndDate: this.getDefaultFormFieldValidationState(),\n programEnrollmentGoal: this.getDefaultFormFieldValidationState(),\n programType: this.getDefaultFormFieldValidationState(),\n programDescription: this.getDefaultFormFieldValidationState(),\n };\n this.programsModule.SET_PROGRAM_TYPES([...this.programsModule.programTypes]); // TODO (REFACTOR): This is a workaround for now because the DropdownList component currently has no way of resetting the selection properly\n }\n\n isFormValid(): boolean {\n this.checkFormValid();\n for (const formFieldState of Object.values(this.formFieldStates)) {\n if (!formFieldState.valid) {\n return false;\n }\n }\n return true;\n }\n\n hasFormChanges(): boolean {\n for (const formFieldState of Object.values(this.formFieldStates)) {\n if (formFieldState.changes) {\n return true;\n }\n }\n return false;\n }\n\n doAnyFormFieldsHaveSpecificError(error: FormValidationError): boolean {\n for (const formFieldState of Object.values(this.formFieldStates)) {\n if (formFieldState.error === error) {\n return true;\n }\n }\n return false;\n }\n\n shouldApplyErrorClassForFormField(field: AddEditProgramDataFormField): boolean {\n const formFieldState = this.formFieldStates[field];\n if (this.hasUserSubmitted && !formFieldState.valid) {\n return true;\n }\n return false;\n }\n\n shouldShowErrorForFormField(field: AddEditProgramDataFormField): boolean {\n const formFieldState = this.formFieldStates[field];\n if (this.shouldApplyErrorClassForFormField(field) && formFieldState.error !== FormValidationError.REQUIRED) {\n return true;\n }\n return false;\n }\n\n getDatepickerInputClass(startOrEndDate: Extract): string {\n const formFieldDate = this.initialProgramData[startOrEndDate];\n if (this.isEditMode && formFieldDate) {\n const today = new Date();\n const isPastDate = today > formFieldDate;\n if (startOrEndDate === 'programEndDate' && isPastDate) {\n return 'disabled';\n }\n }\n if (this.shouldApplyErrorClassForFormField(startOrEndDate)) {\n return 'outline-red';\n }\n return '';\n }\n}\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddEditProgram.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddEditProgram.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddEditProgram.vue?vue&type=template&id=35015947&scoped=true&\"\nimport script from \"./AddEditProgram.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddEditProgram.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AddEditProgram.vue?vue&type=style&index=0&id=35015947&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"35015947\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(function () {_vm.removeClass()}),expression:\"() => {removeClass()}\"}],class:_vm.componentName=='team-roster' ? 'team-roaster-checkbox' : 'statusChange-dropdown',attrs:{\"id\":\"reset-scroll\"},on:{\"mouseout\":function () {_vm.removeClass()},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.removeClass()}}},[_c('div',{staticClass:\"dropdown-title\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }_vm.showSettings=false}}},[_vm._v(_vm._s(\"Display Columns\"))]),_c('div',{staticClass:\"displayAll\",attrs:{\"id\":\"select-all-div\"},on:{\"keydown\":function($event){return _vm.onDropdownOpen($event)},\"mouseover\":function($event){return _vm.hoverState('selectAll',-1)}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.displayAll),expression:\"displayAll\"}],attrs:{\"type\":\"checkbox\",\"name\":\"display-all\",\"id\":\"display-all\"},domProps:{\"checked\":Array.isArray(_vm.displayAll)?_vm._i(_vm.displayAll,null)>-1:(_vm.displayAll)},on:{\"click\":function($event){return _vm.toggleAllColumns($event,'click')},\"keydown\":function($event){return _vm.toggleAllColumns($event)},\"change\":function($event){var $$a=_vm.displayAll,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.displayAll=$$a.concat([$$v]))}else{$$i>-1&&(_vm.displayAll=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.displayAll=$$c}}}}),_c('span',{staticClass:\"display-all\",on:{\"click\":function($event){return _vm.toggleAllColumns($event,'click')},\"keydown\":function($event){return _vm.toggleAllColumns($event)}}},[_vm._v(_vm._s(\"Display All\"))])]),_c('ul',[_c('div',{attrs:{\"id\":\"dropdown-menu-list\"}},_vm._l((_vm.displayColumn),function(column,index){return _c('li',{key:index,on:{\"keydown\":function($event){return _vm.onDropdownOpen($event,column)},\"mouseover\":function($event){return _vm.hoverState('listItem',index)}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(column.display),expression:\"column.display\"}],attrs:{\"type\":\"checkbox\",\"name\":\"\",\"id\":index},domProps:{\"checked\":Array.isArray(column.display)?_vm._i(column.display,null)>-1:(column.display)},on:{\"change\":[function($event){var $$a=column.display,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(column, \"display\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(column, \"display\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(column, \"display\", $$c)}},function($event){return _vm.checkAllColumns(column)}]}}),_c('span',{on:{\"click\":function($event){column.display = !column.display; _vm.checkAllColumns(column)}}},[_vm._v(_vm._s(column.name))])])}),0)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Component, Prop, Vue, Watch } from 'vue-property-decorator';\n\n@Component({\n components: {\n }\n})\nexport default class DisplayColumnFilter extends Vue {\n\n @Prop()\n displayColumn!: any;\n\n @Prop()\n componentName!: string;\n\n @Prop()\n showSettings!: boolean;\n\n public displayAll: boolean = true;\n public allColumns: any = [];\n public activeIndex: number = -1;\n public dropdownElementList: any = {};\n public activeIndexLetter: string = '';\n public counter: number = 0;\n public activeIndexElement: string = '';\n public callToggle: boolean = false;\n public tabPress: boolean = false;\n public enterPress: boolean = false;\n\n @Watch('displayColumn', { deep: true, immediate: true })\n displayedColumn(value:any) {\n if (value) {\n this.displayColumn = value;\n }\n let isSelected = true;\n this.displayColumn && this.displayColumn.length && this.displayColumn.forEach((column: any) => {\n if (!column.display) {\n isSelected = false;\n }\n });\n this.displayAll = isSelected;\n }\n\n checkAllColumns(column:any) {\n this.$emit('filterColumns', this.displayColumn);\n this.$emit('filterDisplayColumn',column);\n }\n\n toggleAllColumns(event:any,eventName?:string) {\n if (event && event.keyCode == 32 && this.callToggle || eventName && eventName == 'click') {\n if (this.displayAll) {\n this.displayColumn && this.displayColumn.forEach((column:any) => {\n column.display = false;\n });\n this.displayAll = false;\n }\n else {\n this.displayColumn && this.displayColumn.forEach((column:any) => {\n column.display = true;\n });\n this.displayAll = true;\n }\n this.$emit('filterColumns', this.displayColumn);\n }\n else {\n return event.preventDefault();\n }\n }\n\n onDropdownOpen(e:any,column?:any) {\n e.preventDefault();\n if (e.keyCode == 9) {\n this.tabPress = true;\n this.removeClass();\n this.$emit('tab',this.tabPress);\n }\n else if (e.keyCode == 13) {\n this.enterPress = true;\n this.removeClass();\n this.$emit('enter',this.enterPress);\n }\n e.stopPropagation();\n this.dropdownElementList = document.querySelector('#dropdown-menu-list');\n const dropdownMenuListItems = this.dropdownElementList && this.dropdownElementList.children;\n if (this.showSettings) {\n const input = String.fromCharCode(e.keyCode);\n const selectAllElement = document.querySelector('#select-all-div');\n if (e.keyCode == 40) {\n e.preventDefault();\n if (this.activeIndex == -1 && this.counter == 0) {\n selectAllElement && selectAllElement.classList.add('dropbtn-selected');\n this.counter++;\n }\n else if (this.activeIndex < this.dropdownElementList.children.length - 1) {\n this.activeIndex = this.activeIndex+1;\n dropdownMenuListItems[this.activeIndex].classList.add('dropbtn-selected');\n dropdownMenuListItems.forEach((drop:any,index: number)=>{\n if (index!=this.activeIndex) {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n }\n });\n selectAllElement && selectAllElement.classList.remove('dropbtn-selected');\n dropdownMenuListItems[this.activeIndex].scrollIntoView(false);\n }\n }\n else if (e.keyCode == 38) {\n e.preventDefault();\n if (this.activeIndex == -1 && this.counter == 0) {\n selectAllElement && selectAllElement.classList.add('dropbtn-selected');\n this.counter++;\n }\n else if (this.activeIndex > 0) {\n this.activeIndex--;\n if (this.activeIndex != -1) {\n dropdownMenuListItems[this.activeIndex].classList.add('dropbtn-selected');\n dropdownMenuListItems.forEach((drop:any,index: number)=>{\n if (index!=this.activeIndex) {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n }\n });\n selectAllElement && selectAllElement.classList.remove('dropbtn-selected');\n dropdownMenuListItems[this.activeIndex].scrollIntoView(false);\n }\n }\n else if (this.activeIndex == 0) {\n this.activeIndex = -1;\n selectAllElement && selectAllElement.classList.add('dropbtn-selected');\n dropdownMenuListItems.forEach((drop: any, index: number) => {\n if (index != this.activeIndex) {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n }\n });\n selectAllElement && selectAllElement.scrollIntoView(false);\n const elem:any = document.getElementById('reset-scroll') as HTMLElement ;\n elem.scrollTo(0,0);\n }\n }\n else if (/[a-zA-Z0-9]/.test(input)) {\n let iterationCount:number = 1;\n let i:number = this.activeIndex;\n selectAllElement && selectAllElement.classList.remove('dropbtn-selected');\n while (iterationCount!=this.dropdownElementList.children.length) {\n if (++i==this.dropdownElementList.children.length) {\n i=0;\n }\n const val = dropdownMenuListItems[i].innerText.charAt(0).toLowerCase();\n const inp = input.toLowerCase();\n if (val == inp) {\n const dropdownMenuItems = this.dropdownElementList.children;\n this.activeIndex = i;\n dropdownMenuItems[this.activeIndex].classList.add('dropbtn-selected');\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.activeIndex) {\n dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n dropdownMenuItems[this.activeIndex].scrollIntoView(false);\n break;\n }\n iterationCount++;\n }\n }\n if (e.keyCode == 32) {\n e.preventDefault();\n if (this.activeIndex && this.activeIndex == 0) {\n this.displayColumn[this.activeIndex].display = !this.displayColumn[this.activeIndex].display;\n this.checkAllColumns(this.displayColumn[this.activeIndex]);\n }\n else if (this.activeIndex && this.activeIndex > -1) {\n this.displayColumn[this.activeIndex].display = !this.displayColumn[this.activeIndex].display;\n this.checkAllColumns(this.displayColumn[this.activeIndex]);\n }\n else if (this.activeIndex == -1 || this.activeIndex == -2) {\n this.activeIndex = this.activeIndex == -2\n ? -1\n : -1;\n this.callToggle = true;\n this.toggleAllColumns(e);\n this.callToggle=false;\n }\n }\n }\n }\n\n hoverState(type:string, index:number) {\n this.dropdownElementList = document.querySelector('#dropdown-menu-list');\n const selectAllElement = document.querySelector('#select-all-div');\n if (type == 'listItem') {\n const dropdownMenuListItems = this.dropdownElementList && this.dropdownElementList.children;\n this.activeIndex = index;\n if (this.activeIndex==0) {\n dropdownMenuListItems && dropdownMenuListItems[this.activeIndex].classList.add('dropbtn-selected');\n dropdownMenuListItems && dropdownMenuListItems.forEach((drop: any, index: number) => {\n if (index != this.activeIndex) {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n }\n });\n selectAllElement && selectAllElement.classList.remove('dropbtn-selected');\n }\n else if (this.activeIndex && this.activeIndex>-1) {\n dropdownMenuListItems && dropdownMenuListItems[this.activeIndex].classList.add('dropbtn-selected');\n dropdownMenuListItems && dropdownMenuListItems.forEach((drop: any, index: number) => {\n if (index != this.activeIndex) {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n }\n });\n selectAllElement && selectAllElement.classList.remove('dropbtn-selected');\n }\n }\n else if (type == 'selectAll') {\n selectAllElement && selectAllElement.classList.add('dropbtn-selected');\n const dropdownMenuListItems = this.dropdownElementList.children;\n this.activeIndex = index;\n dropdownMenuListItems.forEach((drop: any, index: number) => {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n });\n }\n }\n\n removeClass() {\n this.activeIndex = -1;\n this.counter = 0;\n const selectAllElement = document.querySelector('#select-all-div');\n const dropdownMenuListItems = this.dropdownElementList && this.dropdownElementList.children;\n dropdownMenuListItems && dropdownMenuListItems.forEach((drop: any, index: number) => {\n if (index != this.activeIndex) {\n dropdownMenuListItems[index].classList.remove('dropbtn-selected');\n }\n });\n selectAllElement && selectAllElement.classList.remove('dropbtn-selected');\n }\n\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport DisplayColumnFilter from './DisplayColumnFilter';\nexport default DisplayColumnFilter;\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayColumnFilter.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayColumnFilter.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DisplayColumnFilter.vue?vue&type=template&id=869053e4&scoped=true&\"\nimport script from \"./DisplayColumnFilter.vue?vue&type=script&lang=ts&\"\nexport * from \"./DisplayColumnFilter.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DisplayColumnFilter.less?vue&type=style&index=0&id=869053e4&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"869053e4\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./DisplayColumnFilter.less?vue&type=style&index=0&id=869053e4&lang=less&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bouncing-preloader\"},[_c('div',{key:\"spinner_loading\",style:({ 'color': _vm.STYLE.COLOR.PRIMARY_700 }),attrs:{\"uk-spinner\":\"ratio: 3.2667\"}}),_c('span',[_vm._v(_vm._s(_vm.getScreenText(\"BOUNCING_PRELOADER_LOADING\")))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Vue, Component, Prop } from 'vue-property-decorator';\nimport { ScreenText } from '@/lang/ScreenText';\nimport APP_CONST from '@/constants/AppConst';\n\n@Component\nexport class BouncingPreloaderComponent extends Vue {\n @Prop() viewClass!: string;\n\n private screenText: ScreenText = new ScreenText();\n\n readonly STYLE = APP_CONST.STYLE;\n\n public getScreenText(key: string): string {\n return this.screenText.getScreenText(key);\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\nimport { BouncingPreloaderComponent } from '@/commoncomponents/bouncingpreloadercomponent/BouncingPreloaderComponent';\nexport default BouncingPreloaderComponent;\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BouncingPreloaderComponent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BouncingPreloaderComponent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BouncingPreloaderComponent.vue?vue&type=template&id=4eff2a66&scoped=true&\"\nimport script from \"./BouncingPreloaderComponent.vue?vue&type=script&lang=ts&\"\nexport * from \"./BouncingPreloaderComponent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BouncingPreloaderComponent.less?vue&type=style&index=0&id=4eff2a66&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4eff2a66\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddEditProgram.vue?vue&type=style&index=0&id=35015947&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/filled-right-arrow.d6e02b22.svg\";","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = collection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","module.exports = __webpack_public_path__ + \"img/search.83aca4f4.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_c('div',{staticClass:\"uk-flex-top popupwrapper\",attrs:{\"id\":\"actions-ignored-popup\",\"uk-modal\":\"\",\"esc-close\":\"false\",\"bg-close\":\"false\",\"container\":_vm.component}},[_c('div',{staticClass:\"uk-modal-dialog uk-margin-auto-vertical popupbox\"},[_c('div',{staticClass:\"popup-header-content\"},[_c('button',{staticClass:\"cross-icon uk-modal-close-default\",attrs:{\"type\":\"button\",\"bx-attr\":\"duplicate-file-closePopup\"},on:{\"click\":_vm.close}},[_c('img',{attrs:{\"src\":require(\"../../assets/images/closeIconBlack.svg\"),\"alt\":\"\"}})])]),_c('div',{staticClass:\"popup-context-box\",attrs:{\"id\":\"popup-content\"}},[_c('div',{staticClass:\"popup-context-box-inner\"},[_c('div',{staticClass:\"fix\"},[_vm._m(0),_c('h3',[_vm._v(_vm._s(\"Alert!\"))]),_c('p',{staticClass:\"info-text\"},[_vm._v(\" \"+_vm._s(_vm.instructions.first)+\" \"),_c('strong',[_vm._v(_vm._s(_vm.records.length))]),_vm._v(\" \"+_vm._s(_vm.instructions.second)+\" \")])]),_c('div',{staticClass:\"table\"},[_c('table',[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.tableHeader))])])]),_c('tbody',_vm._l((_vm.records),function(data,index){return _c('tr',{key:index},[_c('td',[_vm._v(\" \"+_vm._s(data)+\" \")])])}),0)])]),_c('div',{staticClass:\"button-wrapper\"},[_c('button',{staticClass:\"btn-primary ml-8\",attrs:{\"bx-attr\":\"fileReplace-button\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(\"OK\")+\" \")])])])])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('figure',[_c('img',{attrs:{\"src\":require(\"../../assets/images/account/bell.svg\"),\"alt\":\"\"}})])}]\n\nexport { render, staticRenderFns }","import { Vue, Component, Prop } from 'vue-property-decorator';\n\n@Component\nexport default class ActionIgnoredPopup extends Vue {\n\n @Prop({default: 'accountsList'})\n component!: string;\n\n @Prop({default: 'Account Name'})\n tableHeader!: string;\n\n @Prop()\n records!: string[];\n\n @Prop()\n instructions!: {};\n\n close() {\n this.$emit('closePopup');\n }\n\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport ActionIgnoredPopup from './ActionIgnoredPopup';\nexport default ActionIgnoredPopup;\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionIgnoredPopup.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionIgnoredPopup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ActionIgnoredPopup.vue?vue&type=template&id=08614441&scoped=true&\"\nimport script from \"./ActionIgnoredPopup.vue?vue&type=script&lang=ts&\"\nexport * from \"./ActionIgnoredPopup.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ActionIgnoredPopup.less?vue&type=style&index=0&id=08614441&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"08614441\",\n null\n \n)\n\nexport default component.exports","export enum FormValidationError {\n REQUIRED,\n MIN,\n MAX,\n MAX_LENGTH,\n TYPE,\n DUPLICATE,\n FORMAT\n}\n\nexport interface FormValidation {\n changes: boolean;\n dirty: boolean;\n error: FormValidationError | null;\n errorMessage: string;\n valid: boolean;\n}\n\nexport type FormFieldValidation = {\n [Property in keyof T]: FormValidation\n};\n\nexport enum VeeValidateProviderMode {\n Aggressive = 'aggressive',\n Passive = 'passive',\n Lazy = 'lazy',\n Eager = 'eager'\n}","import store from '@/store';\nimport {\n getModule,\n Module,\n VuexModule,\n Action,\n Mutation\n} from 'vuex-module-decorators';\nimport { ProgramQuery } from '@/Model/model';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport APP_CONST from '@/constants/AppConst';\n\n@Module({\n namespaced: true,\n name: 'tableStore',\n store,\n dynamic: true\n})\n\nclass TableModule extends VuexModule {\n programQuery: ProgramQuery = {} as ProgramQuery;\n public filteredObj: any = APP_CONST.ACCOUNTS_HEADER.MOVABLE;\n public accountSettingsObj: any = {};\n public allSelectedData:any = [];\n public fewChecked:string = '';\n public accountResizeData:any = [];\n public resizableArray: any[] = [];\n public resizeObj: any[] = [];\n public authKey: string = '';\n public selectAll:boolean = false;\n public unSelectData:any = [];\n public commonSearchInputSave: any = [{key: '', value: ''}];\n public selectStatus:string = '';\n\n get allSelect(){\n return this.selectAll;\n }\n\n get allUnSelectData(){\n return this.unSelectData;\n }\n\n get allDataSelected(){\n return this.allSelectedData;\n }\n\n get fewCheckedData(){\n return this.fewChecked;\n }\n\n get programsQuery() {\n return this.programQuery;\n }\n\n get filteredObject() {\n return this.filteredObj;\n }\n\n get accountSettingsObject() {\n return this.accountSettingsObj;\n }\n\n get accountResizesData() {\n return this.accountResizeData;\n }\n\n get selectedStatus(){\n return this.selectStatus;\n }\n\n @Mutation\n mutateSelectStatus(selectStatus:any){\n this.selectStatus = selectStatus;\n }\n\n @Mutation\n mutateUnSelectedData(unSelectData:any){\n this.unSelectData = unSelectData;\n }\n\n @Mutation\n mutateSelectAll(selectAll:boolean){\n this.selectAll = selectAll;\n }\n\n @Mutation\n mutateFewCheckData(fewChecked:any){\n this.fewChecked = fewChecked;\n }\n\n @Mutation\n mutateAllSelectedData(allSelectedData:any){\n this.allSelectedData = allSelectedData;\n }\n\n @Mutation\n mutateSettingsData(data: any) {\n this.authKey = APP_UTILITIES.authTokenKeyToManage()\n ? APP_UTILITIES.authTokenKeyToManage()\n : '';\n this.accountSettingsObj = data;\n APP_UTILITIES.setFilteredColumns(`${this.authKey}-AccountsSettingsData`, this.accountSettingsObj);\n }\n\n @Mutation\n mutateResizeData(obj:any){\n this.authKey = APP_UTILITIES.authTokenKeyToManage()\n ? APP_UTILITIES.authTokenKeyToManage()\n : '';\n if (this.resizeObj.length) {\n this.resizableArray = this.resizeObj;\n }\n const keyIndex = this.resizableArray.findIndex((e: { id: any }) => e.id == obj.column.id);\n if (keyIndex > -1) {\n this.resizableArray[keyIndex] = { id: obj.column.id, maxWidth: obj.maxWidth, minWidth: obj.minWidth };\n }\n else {\n this.resizableArray.push({ id: obj.column.id, maxWidth: obj.maxWidth, minWidth: obj.minWidth });\n }\n this.resizeObj = JSON.parse(JSON.stringify(this.resizableArray));\n APP_UTILITIES.setFilteredColumns(`${this.authKey}-AccountsResizeData`, this.resizeObj);\n }\n\n @Mutation\n mutateResizeObject(accountResizeData:any){\n this.resizeObj = [];\n this.resizeObj = accountResizeData;\n this.accountResizeData = accountResizeData;\n }\n\n @Mutation\n mutateFilteredObject(display: any) {\n this.filteredObj = display;\n }\n\n @Mutation\n public setQuery(query: ProgramQuery) {\n this.programQuery = query;\n }\n\n @Action({ commit: 'setQuery' })\n QueryForProgram(query: ProgramQuery) {\n return query;\n }\n\n @Mutation\n updatecommonSearchArray(input: any){\n this.commonSearchInputSave = input;\n }\n\n get searchInputValues(){\n return this.commonSearchInputSave;\n }\n}\n\nexport default getModule(TableModule);\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(function (){_vm.toggleDropDown =false,_vm.removeClass()}),expression:\"()=>{toggleDropDown =false,removeClass()}\"}],staticClass:\"backcontbuttonwrapper\",staticStyle:{\"display\":\"inline\"},on:{\"mouseout\":function (){_vm.removeClass()}}},[_c('div',{class:[ 'wrap-drop',_vm.toggleDropDown?' mr-16 borderDropTop active':' mr-16 borderDrop'],attrs:{\"bx-attr\":\"common-toggleDrop\"}},[_c('span',{attrs:{\"tabindex\":\"0\",\"id\":\"focusSpan\"},on:{\"keydown\":function($event){return _vm.onDropdownOpen($event)},\"click\":function($event){return _vm.toggleDrop()}}},[_vm._v(_vm._s(_vm.getScreenText(\"LBL_ACTION_CAPS\")))]),_c('ul',{staticClass:\"drop\"},[_c('div',{attrs:{\"id\":\"dropdown-menu\"}},_vm._l((_vm.dropdownLists),function(keyValue,index){return _c('li',{key:index,attrs:{\"tabIndex\":\"0\"},on:{\"keydown\":function($event){return _vm.onDropdownOpen($event)},\"mouseover\":function($event){return _vm.hoverState(index)}}},[_c('a',{class:[keyValue.disable && 'disableAction'],on:{\"click\":function($event){return _vm.dropDownHandler(keyValue.name)}}},[_vm._v(_vm._s(keyValue.name))])])}),0)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Vue, Component, Prop } from 'vue-property-decorator';\nimport { ScreenText } from '@/lang/ScreenText';\nimport table from '@/store/modules/table';\nimport APP_CONST from '@/constants/AppConst';\n\n@Component\nexport class ActionsDropdown extends Vue {\n private objScreenText: ScreenText = new ScreenText();\n public toggleDropDown: boolean = false;\n public dropdownElement: any = {};\n public active: number = -1;\n public counter: number = 0;\n public activeLetter: string = '';\n public activeElement: string = '';\n public callToggle: boolean = false;\n\n @Prop()\n dropdownList!: [];\n\n @Prop()\n content!: [];\n\n get dropdownLists() {\n this.dropdownList &&\n this.dropdownList.length &&\n this.dropdownList.forEach((element: any) => {\n if (element.name == 'Add') {\n element.disable = table.selectAll || table.allDataSelected.length || table.unSelectData.length\n ? true\n : false;\n }\n else if (element.name == 'Upload CSV') {\n element.disable = table.selectAll || table.allDataSelected.length || table.unSelectData.length\n ? true\n : false;\n }\n else if (element.name == APP_CONST.ADD_PRIVILEGES_ACTION || element.name == APP_CONST.SEND_INVITATION_ACTION || element.name == APP_CONST.RESET_PASSWORD_ACTION ) {\n element.disable = element.disable;\n }\n else if (element.name == 'Enable'){\n element.disable = table.selectedStatus == 'Enable'\n ? false\n : table.selectedStatus == 'All'\n ? true\n : true;\n }\n else if (element.name == 'Disable') {\n element.disable = table.selectedStatus == 'Disable'\n ? false\n : table.selectedStatus == 'All'\n ? true\n : true;\n }\n else {\n element.disable = table.selectAll || table.allDataSelected.length || table.unSelectData.length\n ? false\n : true;\n }\n });\n return this.dropdownList;\n }\n\n get allDataSelected() {\n return table.allDataSelected;\n }\n\n public getScreenText(key: string): string {\n return this.objScreenText.getScreenText(key);\n }\n\n toggleDrop() {\n this.toggleDropDown = !this.toggleDropDown;\n this.$emit('openActionDropdown');\n }\n\n dropDownHandler(keyName: string, event?: any) {\n this.toggleDropDown = false;\n if (event && (event.keyCode == 13 || event.keyCode == 40 || event.keyCode == 9 || event.keyCode == 27)) {\n this.active = -1;\n event && event.target && event.target.blur();\n event && event.preventDefault();\n }\n\n this.$emit('performAction', keyName);\n }\n\n\n openDropdown(event: any) {\n if (event.keyCode == 13 || event.keyCode == 40) {\n this.toggleDropDown = true;\n this.active = -1;\n }\n }\n closeDropdown(event: any) {\n if (event && (event.keyCode == 13 || event.keyCode == 40 || event.keyCode == 9 || event.keyCode == 27)) {\n this.toggleDropDown = false;\n this.active = -1;\n event.target && event.target.focus();\n }\n }\n\n onDropdownOpen(event: any) {\n event.stopPropagation();\n this.dropdownElement = document.querySelector('#dropdown-menu');\n const dropdownMenuItems = this.dropdownElement && this.dropdownElement.children;\n if (this.toggleDropDown) {\n event && event.target && event.target.blur();\n const input = String.fromCharCode(event.keyCode);\n if (event.keyCode == 40) {\n event.preventDefault();\n if (this.active == -1) {\n this.active++;\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].focus();\n }\n else if (this.dropdownElement && this.active < this.dropdownElement.children.length - 1) {\n this.active++;\n dropdownMenuItems[this.active] && dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems[this.active] && dropdownMenuItems[this.active].focus();\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n\n }\n }\n else if (event.keyCode == 38) {\n event.preventDefault();\n if (this.active > 0) {\n this.active--;\n if (this.active != -1 && this.active != 0) {\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].focus();\n dropdownMenuItems && dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index] && dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n\n }\n else if (this.active == 0) {\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].focus();\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index] && dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n }\n }\n }\n else if(event.keyCode == 32) {\n event.preventDefault();\n }\n else if (event.keyCode == 13) {\n const list: any = this.dropdownLists;\n event.preventDefault();\n if (this.active != -1 && list[this.active] && !list[this.active].disable) {\n this.dropDownHandler(list[this.active].name, event);\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index] && dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n this.toggleDropDown = false;\n }\n else if(event.keyCode == 13 && this.active == -1){\n this.closeDropdown(event);\n }\n else{\n event.target && event.target.focus();\n }\n }\n else if (event.keyCode == 9) {\n this.closeDropdown(event);\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index] && dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n }\n else if (event.keyCode == 27) {\n const escFocus = document.getElementById('focusSpan');\n escFocus && escFocus.focus();\n this.toggleDropDown = APP_CONST.FALSE;\n this.active = -1;\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index] && dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n }\n else if (/[a-zA-Z0-9]/.test(input)) {\n let iterationCount:number = 1;\n let i:number = this.active;\n while(iterationCount!=this.dropdownElement.children.length){\n if(++i==this.dropdownElement.children.length) {\n i=0;\n }\n const val = dropdownMenuItems[i].innerText.charAt(0).toLowerCase();\n const inp = input.toLowerCase();\n if(val == inp){\n const dropdownMenuItems = this.dropdownElement.children;\n this.active = i;\n dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems[this.active] && dropdownMenuItems[this.active].focus();\n dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n break;\n }\n iterationCount++;\n event.target && event.target.focus();\n }\n }\n }\n else {\n event.target && event.target.focus();\n if (event.keyCode == 40 || event.keyCode == 38 || event.keyCode == 32) {\n event.preventDefault();\n this.toggleDropDown = true;\n }\n else if (event.keyCode == 13) {\n this.toggleDropDown = true;\n }\n\n }\n dropdownMenuItems && dropdownMenuItems[this.active] && dropdownMenuItems[this.active].focus();\n }\n\n hoverState(index: number) {\n this.dropdownElement = document.querySelector('#dropdown-menu');\n const dropdownMenuItems = this.dropdownElement && this.dropdownElement.children;\n this.active = index;\n if (this.active == 0) {\n dropdownMenuItems && dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems && dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n }\n else if (this.active && this.active > -1) {\n dropdownMenuItems && dropdownMenuItems[this.active].classList.add('dropbtn-selected');\n dropdownMenuItems && dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n\n }\n }\n\n removeClass() {\n this.active = -1;\n const dropdownMenuItems = this.dropdownElement && this.dropdownElement.children;\n dropdownMenuItems && dropdownMenuItems.forEach((drop: any, index: number) => {\n if (index != this.active) {\n dropdownMenuItems[index].classList.remove('dropbtn-selected');\n }\n });\n }\n\n\n\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { ActionsDropdown } from '@/commoncomponents/actionsdropdowncomponent/ActionsDropdown';\nexport default ActionsDropdown;\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionsDropdown.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActionsDropdown.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ActionsDropdown.vue?vue&type=template&id=2e94ae88&scoped=true&\"\nimport script from \"./ActionsDropdown.vue?vue&type=script&lang=ts&\"\nexport * from \"./ActionsDropdown.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ActionsDropdown.less?vue&type=style&index=0&id=2e94ae88&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2e94ae88\",\n null\n \n)\n\nexport default component.exports","enum MutationNames {\n FETCH_SESSIONS_REQUESTED = 'FETCH_SESSIONS_REQUESTED',\n FETCH_SESSIONS_SUCCEEDED = 'FETCH_SESSIONS_SUCCEEDED',\n FETCH_SESSIONS_FAILED = 'FETCH_SESSIONS_FAILED',\n RESET_FETCH_SESSIONS = 'RESET_FETCH_SESSIONS',\n SET_SESSIONS = 'SET_SESSIONS',\n CLEAR_SESSIONS = 'CLEAR_SESSIONS',\n SAVE_SESSION_REQUESTED = 'SAVE_SESSION_REQUESTED',\n SAVE_SESSION_SUCCEEDED = 'SAVE_SESSION_SUCCEEDED',\n SAVE_SESSION_FAILED = 'SAVE_SESSION_FAILED',\n RESET_SAVE_SESSION = 'RESET_SAVE_SESSION',\n}\n\nexport default MutationNames;","import { Action, getModule, Module, Mutation, VuexModule } from 'vuex-module-decorators';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport { addNewSession, getPagedSessionsForProgram, updateSession } from '@/services/sessions/api';\nimport { AddSessionPayload, EditSessionPayload, GetSessionsRequest, GetSessionsResponse, Session } from '@/Model/sessions/types';\nimport { ApiErrorResponse } from '@/Model/errors/api/types';\nimport { ErrorMessages } from '@/lang/errorText';\nimport store from '@/store';\nimport MutationNames from './mutationNames';\nimport GlobalMutationNames from '@/store/global/mutationNames';\n\nconst {\n SUPRESS_GLOBAL_ERROR_POPUP\n} = GlobalMutationNames;\n\nconst {\n FETCH_SESSIONS_REQUESTED,\n FETCH_SESSIONS_SUCCEEDED,\n FETCH_SESSIONS_FAILED,\n RESET_FETCH_SESSIONS,\n SET_SESSIONS,\n CLEAR_SESSIONS\n} = MutationNames;\n\nconst {\n SAVE_SESSION_REQUESTED,\n SAVE_SESSION_SUCCEEDED,\n SAVE_SESSION_FAILED,\n RESET_SAVE_SESSION,\n} = MutationNames;\n\n@Module({\n namespaced: true,\n name: 'sessions',\n store,\n dynamic: true\n})\nexport class SessionsModule extends VuexModule {\n sessions: Array = [];\n totalSessionCount: number = 0;\n isFetchingSessions = false;\n didFetchSessionsFail = false;\n fetchSessionsFailedError: ApiErrorResponse | null = null;\n\n isSavingSessions = false;\n didSessionsSaveFail = false;\n sessionSaveFailedError: ApiErrorResponse | null = null;\n\n errorMessages = new ErrorMessages();\n\n @Mutation\n [FETCH_SESSIONS_REQUESTED]() {\n this.isFetchingSessions = true;\n this.didFetchSessionsFail = false;\n this.fetchSessionsFailedError = null;\n }\n\n @Mutation\n [FETCH_SESSIONS_SUCCEEDED]() {\n this.isFetchingSessions = false;\n this.didFetchSessionsFail = false;\n this.fetchSessionsFailedError = null;\n }\n\n @Mutation\n [FETCH_SESSIONS_FAILED](error: ApiErrorResponse) {\n this.isFetchingSessions = false;\n this.didFetchSessionsFail = true;\n this.fetchSessionsFailedError = error;\n }\n\n @Mutation\n [RESET_FETCH_SESSIONS]() {\n this.isFetchingSessions = false;\n this.didFetchSessionsFail = false;\n this.fetchSessionsFailedError = null;\n }\n\n @Mutation\n [SET_SESSIONS](getSessionResponse: GetSessionsResponse) {\n this.sessions = getSessionResponse.results;\n this.totalSessionCount = getSessionResponse.totalSetCount;\n }\n\n @Mutation\n [CLEAR_SESSIONS]() {\n this.totalSessionCount = 0;\n this.sessions = [];\n }\n\n @Mutation\n [SAVE_SESSION_REQUESTED]() {\n this.isSavingSessions = true;\n this.didSessionsSaveFail = false;\n this.sessionSaveFailedError = null;\n }\n\n @Mutation\n [SAVE_SESSION_SUCCEEDED]() {\n this.isSavingSessions = false;\n this.didSessionsSaveFail = false;\n this.sessionSaveFailedError = null;\n }\n\n @Mutation\n [SAVE_SESSION_FAILED](error: ApiErrorResponse) {\n this.isSavingSessions = false;\n this.didSessionsSaveFail = true;\n this.sessionSaveFailedError = error;\n }\n\n @Mutation\n [RESET_SAVE_SESSION]() {\n this.isSavingSessions = false;\n this.didSessionsSaveFail = false;\n this.sessionSaveFailedError = null;\n }\n\n @Action\n async fetchSessionsForProgram(request: GetSessionsRequest) {\n try {\n this.FETCH_SESSIONS_REQUESTED();\n const response = await getPagedSessionsForProgram(request);\n\n this.SET_SESSIONS(response.data);\n this.FETCH_SESSIONS_SUCCEEDED();\n return response;\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.FETCH_SESSIONS_FAILED(apiErrorResponse);\n }\n }\n\n @Action\n async addNewSession(newSession: AddSessionPayload) {\n\n try {\n this.context.commit(`globalModule/${SUPRESS_GLOBAL_ERROR_POPUP}`, true, { root: true });\n this.SAVE_SESSION_REQUESTED();\n\n await addNewSession(newSession);\n\n this.SAVE_SESSION_SUCCEEDED();\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.SAVE_SESSION_FAILED(apiErrorResponse);\n }\n finally {\n this.context.commit(`globalModule/${SUPRESS_GLOBAL_ERROR_POPUP}`, false, { root: true });\n }\n }\n\n @Action\n async updateSession(payload: EditSessionPayload) {\n try {\n this.context.commit(`globalModule/${SUPRESS_GLOBAL_ERROR_POPUP}`, true, { root: true });\n this.SAVE_SESSION_REQUESTED();\n const response = await updateSession(payload);\n this.SAVE_SESSION_SUCCEEDED();\n return response;\n }\n catch (error) {\n const apiErrorResponse: ApiErrorResponse = APP_UTILITIES.errorToApiErrorResponse(error);\n this.SAVE_SESSION_FAILED(apiErrorResponse);\n }\n finally {\n this.context.commit(`globalModule/${SUPRESS_GLOBAL_ERROR_POPUP}`, false, { root: true });\n }\n }\n\n @Action\n async resetNewSession() {\n this.RESET_SAVE_SESSION();\n }\n}\n\nexport default getModule(SessionsModule);","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./CancelConfirmation.less?vue&type=style&index=0&id=334712b6&lang=less&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./FixedTableComponent.less?vue&type=style&index=0&id=7e313ae2&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/closeIconBlack.e51cd81a.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"smart-table-wrapper\"}},[_c('div',{staticClass:\"fixed-table-wrapper\",class:!_vm.content.length && 'no-result'},[_c('div',{staticClass:\"smart-table-container\"},[_c('div',[_c('div',{staticClass:\"fixed-header-space-out\"}),_c('div',{staticClass:\"wrap\",class:[_vm.programsArrow && 'program-right-arrow'],attrs:{\"id\":\"padding\"}},[(_vm.header.isOpen)?_c('sorting-searching-action',{style:(_vm.sortingDropdownStyleObj),attrs:{\"header\":_vm.header,\"payload\":_vm.payload,\"search\":_vm.search,\"componentName\":_vm.componentName,\"searchLists\":_vm.searchLists},on:{\"closeActionsPanel\":_vm.closeSortingDropdown,\"sortData\":_vm.sortData,\"searchData\":_vm.searchData}}):_vm._e(),(!_vm.isMobileForAPiCall)?_c('fixed-table-component',{ref:\"fixedTable\",attrs:{\"displayColumn\":_vm.displayColumn,\"headers\":_vm.headers.FIXED,\"tableData\":_vm.content,\"isSortingSearching\":_vm.isSortingSearching,\"showCheckBox\":_vm.showCheckBox,\"limitOneCheckbox\":_vm.limitOneCheckbox,\"componentName\":_vm.componentName,\"payload\":_vm.payload,\"searchLists\":_vm.searchLists,\"total_items\":_vm.total_items,\"theme\":_vm.theme,\"allListData\":_vm.allListData,\"showEditIcon\":_vm.showEditIcon,\"limitSelectAllToCurrentPage\":_vm.limitSelectAllToCurrentPage},on:{\"filterColumns\":_vm.filterColumns,\"filterDisplayColumn\":_vm.filterDisplayColumn,\"navigateToPage\":function($event){return _vm.navigateToPage($event)},\"rowHovered\":function($event){return _vm.hoverRow($event, 'fixedTable')},\"openSortingDropdown\":_vm.openSortingDropdown,\"calculateTableWidth\":_vm.calculateTableWidth,\"selectionChanged\":_vm.selectionChanged}}):_vm._e(),_c('movable-table-component',{ref:\"movableTable\",attrs:{\"displayColumn\":_vm.displayColumn,\"isSearching\":_vm.isSearching,\"headers\":_vm.headers.MOVABLE,\"tableData\":_vm.content,\"isResizer\":_vm.isResizer,\"isSortingSearching\":_vm.isSortingSearching,\"payload\":_vm.payload,\"showCheckBox\":_vm.showCheckBox,\"componentName\":_vm.componentName,\"searchLists\":_vm.searchLists,\"resizesData\":_vm.resizesData,\"theme\":_vm.theme,\"togglePanelActive\":_vm.togglePanelActive,\"movableTableHeaders\":_vm.movableTableHeaders,\"mobileFixedTableHeaders\":_vm.headers.FIXED,\"isMobileForAPiCall\":_vm.isMobileForAPiCall,\"showEditIcon\":_vm.showEditIcon},on:{\"filterColumns\":_vm.filterColumns,\"filterDisplayColumn\":_vm.filterDisplayColumn,\"calculateTableWidth\":_vm.calculateTableWidth,\"navigateToPage\":function($event){return _vm.navigateToPage($event)},\"rowHovered\":function($event){return _vm.hoverRow($event, 'movableTable')},\"openSortingDropdown\":_vm.openSortingDropdown,\"closePanel\":_vm.closeSortingDropdown,\"presistResize\":_vm.presistResize}}),(_vm.programsArrow)?_c('div',{staticClass:\"right-arrow-container\"},[_c('div',{staticClass:\"right-arrow-space-out\"}),_vm._l((_vm.content),function(program,index){return _c('div',{key:index,staticClass:\"right-arrow\"},[_c('img',{attrs:{\"src\":require(\"../../assets/images/icon-blue/filled-right-arrow.svg\"),\"alt\":\"\"},on:{\"click\":function($event){return _vm.navigateToProgram(program)}}})])})],2):_vm._e()],1),(_vm.showPagination && _vm.content.length)?_c('pagination',{staticClass:\"pagination\",attrs:{\"isShow\":_vm.paginationProps.isShow,\"total_items\":_vm.total_items,\"type\":_vm.type,\"noOfRowsForMobile\":10,\"isMobileForAPiCall\":_vm.isMobileForAPiCall,\"itemsPerPage\":_vm.paginationProps.itemsPerPage,\"showItemsPerPageSelector\":_vm.showItemsPerPageSelector},on:{\"page\":function($event){return _vm.getDataForPage($event)},\"itemsPerPageChanged\":_vm.itemsPerPageChanged}}):_vm._e()],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Component, Prop, Vue } from 'vue-property-decorator';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport FixedTableComponent from '@/commoncomponents/smartTableComponents/fixedTableComponent/FixedTableComponent.vue';\nimport MovableTableComponent from '@/commoncomponents/smartTableComponents/movableTableComponent/MovableTableComponent.vue';\nimport { ScreenText } from '@/lang/ScreenText';\nimport PaginationComponent from '@/commoncomponents/paginationcomponent/PaginationComponent.vue';\nimport SortingSearchingActions from './sortingSearchingActions/SortingSearchingActions.vue';\n\n\n@Component({\n components: {\n 'fixed-table-component': FixedTableComponent,\n 'movable-table-component': MovableTableComponent,\n 'pagination': PaginationComponent,\n 'sorting-searching-action':SortingSearchingActions,\n }\n})\nexport default class SmartTableContainer extends Vue {\n\n @Prop({default: false})\n showEditIcon!: boolean;\n\n @Prop()\n headers!:any;\n\n @Prop()\n content!: [];\n\n @Prop()\n allListData!: [];\n\n @Prop()\n total_items!: 0;\n\n @Prop()\n isShow!: false;\n\n @Prop()\n keys!: [];\n private objScreenText: ScreenText = new ScreenText();\n private deleteCell: any = '';\n\n @Prop()\n action!: { action: string };\n\n @Prop()\n sort_list!: any[];\n\n @Prop()\n componentName!: any[string];\n\n @Prop()\n tabSelected!: string;\n\n @Prop()\n isSearching!: boolean;\n\n @Prop()\n showResendModal!: boolean;\n\n @Prop({ default: '' })\n accountName!: string;\n\n @Prop()\n initialPage!: number;\n\n @Prop()\n displayColumn!: any;\n\n @Prop({ default: false })\n isResizer!: boolean;\n\n @Prop({ default: false })\n isSortingSearching!: boolean;\n\n @Prop()\n payload!: any;\n\n @Prop()\n search!: any;\n\n @Prop({ default: function () {\n return { id: '', maxWidth: '', minWidth: '' };\n } })\n resizesData!: [];\n\n @Prop({ default: true })\n showCheckBox!: boolean;\n\n @Prop({ default: false })\n limitOneCheckbox!: boolean;\n\n @Prop({ default: function () {\n return [];\n }})\n searchLists!: {header: string; values: any[]}[];\n\n @Prop({ default: 'blue' })\n theme!: string;\n\n @Prop()\n togglePanelActive!: boolean;\n\n @Prop()\n noOfRowsForMobile!: 10;\n\n @Prop()\n isMobileForAPiCall!: false;\n\n @Prop()\n movableTableHeaders!: any;\n\n /**\n * This property changes how the select all checkbox works;\n * instead of selecting all records from all pages, it will only consider the records on the current page.\n *\n * It works when the props `showCheckBox` is set to true and `limitOneCheckbox` is set to false\n */\n @Prop({ default: false })\n limitSelectAllToCurrentPage!: boolean;\n\n /**\n * Enables the items per page selector. Default is `false`\n */\n @Prop({ default: false })\n showItemsPerPageSelector!: boolean;\n\n public getPage: number = 1;\n public type: string = 'smart-table-container';\n public header: any = {};\n public sortingDropdownStyleObj = { top: '', left: '' };\n public showPagination: boolean = false;\n public roleId: number = -1;\n public isMobileView: boolean = false;\n public hoveredTableId: string = '';\n public hoveredRowIndex: number = -1;\n\n /* istanbul ignore next */\n get programsArrow() {\n return ((this.roleId == 1 || this.roleId == 2) && this.componentName=='programs-table')\n ? true\n : false;\n }\n\n /**\n * Gets the properties for the pagination component.\n *\n * If `showItemsPerPageSelector` prop is set to `true`, it is necessary to\n * check against the `payload.count` property to determine the pages to show.\n *\n * @returns An object containing the pagination properties.\n */\n get paginationProps(): { itemsPerPage: number | undefined; isShow: boolean } {\n if (this.showItemsPerPageSelector) {\n return {\n itemsPerPage: this.payload.count,\n isShow: this.total_items > this.payload.count,\n };\n }\n\n return { itemsPerPage: undefined, isShow: true };\n }\n\n /* istanbul ignore next */\n mounted() {\n const { roleId } = APP_UTILITIES.coreids();\n this.roleId = roleId;\n setTimeout(() => {\n this.showPagination = true;\n }, 500);\n }\n\n created() {\n this.isMobileView = APP_UTILITIES.mobileAndTabletCheck();\n if (this.isMobileView) {\n document.body.classList.add('mobile-tablet-check');\n }\n }\n\n getDataForPage(page: number) {\n this.getPage = page;\n this.$emit('selectedPage', page);\n }\n\n filterColumns(displayColumn: any) {\n this.$emit('filterColumns', displayColumn);\n }\n\n navigateToPage(data: any) {\n this.$emit('navigateToPage',data);\n }\n hoverRow(rowIndex: number, tableId: string) {\n const fixedTable = this.$refs && this.$refs.fixedTable as any;\n const movableTable = this.$refs && this.$refs.movableTable as any;\n if (tableId === 'fixedTable') {\n movableTable.hoverIndex = rowIndex;\n }\n else if (tableId === 'movableTable') {\n fixedTable.hoverIndex = rowIndex;\n }\n }\n\n navigateToProgram(data: any) {\n this.$emit('navigateToProgram',data);\n }\n\n presistResize( resize: { column:any; maxWidth:any; minWidth:any }) {\n this.$emit('presistResize',resize);\n }\n\n openSortingDropdown(header: any, coordObj?: { x: number; y: number }) {\n this.closeSortingDropdown();\n const x = coordObj && coordObj.x && coordObj.x || 0;\n const y = coordObj && coordObj.y && coordObj.y || 0;\n const xCord = (x).toString() + 'px';\n const yCord = (y).toString() + 'px';\n this.sortingDropdownStyleObj.left = xCord;\n this.sortingDropdownStyleObj.top = yCord;\n header.isOpen = true;\n this.header = header;\n }\n\n closeSortingDropdown() {\n const fixedTable = this.$refs && this.$refs.fixedTable as any;\n const movableTable = this.$refs && this.$refs.movableTable as any;\n /* istanbul ignore else */\n if (fixedTable) {\n fixedTable.handleSortingArrows(this.header);\n }\n /* istanbul ignore else */\n if (movableTable) {\n movableTable.handleSortingArrows(this.header);\n }\n this.header = {};\n this.sortingDropdownStyleObj = { top: '', left: '' };\n }\n\n sortData(sortObj: { sortField: string; sortDirection: number }) {\n this.$emit('sortData', sortObj);\n this.closeSortingDropdown();\n }\n\n searchData(searchField: any, fromClearSelection: boolean) {\n this.$emit('searchData', searchField);\n if (!fromClearSelection) {\n this.closeSortingDropdown();\n }\n }\n\n calculateTableWidth() {\n const movableTable = this.$refs && this.$refs.movableTable as any;\n /* istanbul ignore else */\n if (movableTable) {\n movableTable.setWidth();\n }\n }\n\n filterDisplayColumn(column:any) {\n this.$emit('filterDisplayColumn', column);\n }\n\n selectionChanged(data:any) {\n this.$emit('selectionChanged', data);\n }\n\n /**\n * Handles the change event when one of the options of the dropdown component is selected.\n * Emits an `itemsPerPageChanged` event with the selected item value.\n *\n * @param numberOfItems - The number of items to display per page.\n */\n itemsPerPageChanged(numberOfItems: number): void {\n this.$emit('itemsPerPageChanged', numberOfItems);\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport SmartTableContainer from './SmartTableContainer';\nexport default SmartTableContainer;\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SmartTableContainer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SmartTableContainer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SmartTableContainer.vue?vue&type=template&id=6c61fc1d&scoped=true&\"\nimport script from \"./SmartTableContainer.vue?vue&type=script&lang=ts&\"\nexport * from \"./SmartTableContainer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SmartTableContainer.less?vue&type=style&index=0&id=6c61fc1d&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6c61fc1d\",\n null\n \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/search.83aca4f4.svg\";","module.exports = __webpack_public_path__ + \"img/sort-z-to-a-green.4ddbc705.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./SortingSearchingActions.less?vue&type=style&index=0&id=71c7709d&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/arrowDown.33c89f03.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./MovableTableComponent.less?vue&type=style&index=0&id=5b54a2c7&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/cloud.6aefb287.svg\";","module.exports = __webpack_public_path__ + \"img/sort-arrow-icon.4342c30a.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"scrolling-table\",attrs:{\"id\":\"scrolling-table\"}},[(!_vm.isMobileForAPiCall)?[_c('div',{staticClass:\"table-main\",style:({'height':_vm.dynamicHeight,'width':_vm.decidedWidth}),attrs:{\"id\":\"submissions-movable-table\"}},[_c('div',{class:['header-tbl', _vm.drill? 'super-tbl':'']},[_c('scroll-sync',{staticClass:\"scroller syncscroll\",attrs:{\"proportional\":\"\",\"horizontal\":\"\",\"name\":\"myElements\",\"id\":\"movable-table-header\"}},[_c('scroll-sync',{staticClass:\"tracks syncscroll scroll-fixed-bottom scrolling-div-show\",attrs:{\"proportional\":\"\",\"horizontal\":\"\",\"name\":\"myElements\",\"id\":\"layerWhenScrolling\"}},[_c('div',[_c('div',{staticStyle:{\"height\":\"10px\"},attrs:{\"id\":\"table-scroll-wrapper\"}})])]),_c('div',[_c('div',{staticClass:\"table-row\",attrs:{\"id\":\"tableResizableOne\"}},[_c('input',{staticClass:\"uk-checkbox remember-checkbox pd0 align\",staticStyle:{\"display\":\"none\"},attrs:{\"bx-attr\":\"selectall-scholars-checkbox\",\"type\":\"checkbox\"}}),_vm._l((_vm.tableHeaders),function(header,index){return _c('div',{key:index,staticClass:\"table-cell\",class:[_vm.componentName=='team-roster' && (\"teamRoster roster-\" + (header.value)), (_vm.payload && (header.value==_vm.payload.searchField || header.value==_vm.payload.SearchField)) && (\"background-\" + _vm.theme)],style:({'width': _vm.getColumnWidth(header.width),'min-width':_vm.getColumnWidth(header.width)}),attrs:{\"id\":header.value}},[_c('div',{staticClass:\"ellipsisthreeline headerArrow\",attrs:{\"id\":((header.value) + \"-value\")}},[_c('span',{staticClass:\"header-text-span\"},[_vm._v(\" \"+_vm._s(header && header.name))]),(_vm.payload && header.value==_vm.payload.sortField && _vm.payload.sortDir)?_c('div',{staticClass:\"sorting-icon\"},[_c('img',{attrs:{\"src\":require((\"../../../assets/images/smartTableImages/\" + _vm.sortIcon + \".svg\")),\"alt\":\"\"}})]):_vm._e()]),((_vm.payload && (header.value==_vm.payload.searchField || header.value==_vm.payload.SearchField)))?_c('div',{staticClass:\"filter-icon\",on:{\"click\":function($event){return _vm.openSortingDropdown(header, $event)}}},[_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/filter-white.svg\"),\"alt\":\"\"}})]):(header.action)?_c('div',{staticClass:\"headerAction\",class:header.isOpen && 'filterOpen',on:{\"click\":function($event){return _vm.openSortingDropdown(header, $event)}}}):_vm._e(),((_vm.isTooltip && _vm.hoverText==header.name))?_c('div',{staticClass:\"hover-popup\",style:(_vm.hoverStyleObj)},[_vm._v(_vm._s(header.name))]):_vm._e()])})],2)])],1)],1),_c('scroll-sync',{staticClass:\"tracks syncscroll\",attrs:{\"proportional\":\"\",\"horizontal\":\"\",\"name\":\"myElements\",\"id\":\"scrollableArea\"}},_vm._l((_vm.filterTableData),function(data,index){return _c('div',{key:index,staticClass:\"table-row\",class:{ 'hovered': index === _vm.hoverIndex },staticStyle:{\"cursor\":\"pointer\"},on:{\"touchstart\":function($event){return _vm.callHover(index, '', $event)},\"touchend\":function($event){return _vm.callHoverOut()},\"mouseover\":function($event){return _vm.callHover(index, '', $event)},\"mouseout\":function($event){return _vm.callHoverOut()},\"click\":function($event){return _vm.navigateToPage(data)}}},_vm._l((_vm.tableHeaders),function(key,cellIndex){return _c('div',{key:cellIndex,staticClass:\"table-cell\",class:[key.value,_vm.componentName=='team-roster' && (\"roster-\" + (key.value))],style:({'width': _vm.getColumnWidth(key.width),'min-width': _vm.getColumnWidth(key.width)})},[(key.value == 'status')?_c('div',{staticClass:\"ellipsisthreeline\",attrs:{\"id\":key.value}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? _vm.getStatus(data[key.value]) : '--')+\" \")]):(key.value == 'programCount')?_c('div',{staticClass:\"ellipsisthreeline line-height\"},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? data[key.value] : '0')+\" \")]):((_vm.componentName=='user-table' && data[key.value] && data[key.value].includes('+') && key.value!='email') || (_vm.componentName=='team-roster' && key.value== 'sitesessions' && data[key.value] && data[key.value].includes('+')) || (_vm.componentName=='contacts-table' && data[key.value] && key.value== 'participants' && data[key.value].includes('+') || (_vm.componentName == 'participants-table' && data[key.value] && key.value == 'programsAndSessions' && data[key.value].includes('+'))))?_c('div',{staticClass:\"ellipsisthreeline line-height\",attrs:{\"id\":key.value},on:{\"touchstart\":function($event){return _vm.callHover(index, data[key.value], $event)},\"touchend\":function($event){return _vm.callHoverOut()},\"mouseover\":function($event){return _vm.callHover(index, data[key.value], $event)},\"mouseout\":function($event){return _vm.callHoverOut()}}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? data[key.value].split(\"+\")[0] : '--')+\" \"),_c('strong',[_vm._v(_vm._s(\"+\"+data[key.value].split(\"+\")[1]))])]):_c('div',{staticClass:\"ellipsisthreeline line-height\",attrs:{\"id\":key.value},on:{\"touchstart\":function($event){return _vm.callHover(index, data[key.value], $event)},\"touchend\":function($event){return _vm.callHoverOut()},\"mouseover\":function($event){return _vm.callHover(index, data[key.value], $event)},\"mouseout\":function($event){return _vm.callHoverOut()}}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? data[key.value] : '--')),(_vm.showEditIcon)?_c('img',{staticClass:\"editSiteIcon\",attrs:{\"src\":require(\"../../../../public/images/Vector.svg\")}}):_vm._e()]),((_vm.isTooltip && _vm.hoverText==data[key.value] && _vm.hoverIndex == index))?_c('div',{staticClass:\"hover-popup\",style:(_vm.hoverStyleObj)},[_vm._v(_vm._s(data[key.value]))]):_vm._e()])}),0)}),0),_c('scroll-sync',{class:['tracks syncscroll scroll-fixed-bottom',_vm.componentName=='team-roster' && 'team-roster-scroll',_vm.componentName=='user-table' && 'users-table-scroller'],attrs:{\"proportional\":\"\",\"horizontal\":\"\",\"id\":\"scrollBottom\",\"name\":\"myElements\"}},[_c('div',{staticStyle:{\"height\":\"10px\"},attrs:{\"id\":\"table-scroll\"}})])],1)]:[_c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(function () {_vm.showSettings = false}),expression:\"() => {showSettings = false}\"}],class:[_vm.componentName == 'team-roster'? 'settings-icon-team-roster cursor-pointer' :'settings-icon cursor-pointer',_vm.componentName=='user-table' && _vm.highestRole==_vm.sessionAdminId && 'user-table-settingicon'],on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }_vm.showSettings = !_vm.showSettings}}},[_c('display-columns-dropdown',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showSettings),expression:\"showSettings\"}],ref:\"displayColumns\",attrs:{\"displayColumn\":_vm.displayColumn,\"componentName\":_vm.componentName},on:{\"filterColumns\":_vm.filterColumns,\"filterDisplayColumn\":_vm.filterDisplayColumn}})],1),_c('div',{staticClass:\"scroll-horizontal\"},[_c('table',{staticClass:\"table-main\"},[_c('thead',[_c('tr',{staticClass:\"table-row header-tbl\"},_vm._l((_vm.tableHeaders),function(header,index){return _c('div',{key:index,staticClass:\"table-cell\",class:[_vm.componentName=='team-roster' && (\"teamRoster roster-\" + (header.value)), (_vm.payload && (header.value==_vm.payload.searchField || header.value==_vm.payload.SearchField)) && (\"background-\" + _vm.theme)],style:({'width': _vm.getColumnWidth(header.width),'min-width':_vm.getColumnWidth(header.width)}),attrs:{\"id\":header.value},on:{\"click\":function($event){return _vm.openSortingDropdownFixedMobile(header, $event)}}},[_c('div',{staticClass:\"ellipsisthreeline headerArrow\",staticStyle:{\"white-space\":\"normal\"},attrs:{\"id\":((header.value) + \"-value\")}},[_vm._v(\" \"+_vm._s(header && header.name)+\" \"),(_vm.payload && header.value==_vm.payload.sortField && _vm.payload.sortDir)?_c('div',{staticClass:\"sorting-icon\"},[_c('img',{attrs:{\"src\":require((\"../../../assets/images/smartTableImages/\" + _vm.sortIcon + \".svg\")),\"alt\":\"\"}})]):_vm._e()]),((_vm.payload && (header.value==_vm.payload.searchField || header.value==_vm.payload.SearchField)))?_c('div',{staticClass:\"filter-icon\"},[_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/filter-white.svg\"),\"alt\":\"\"}})]):(header.action)?_c('div',{class:[header.isOpen && 'filterOpen',_vm.componentName=='team-roster'?'headerAction' : '']}):_vm._e()])}),0)]),_c('tbody',{attrs:{\"id\":\"scrollableArea\"}},_vm._l((_vm.filterTableData),function(data,index){return _c('div',{key:index,staticClass:\"table-row\",staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":function($event){return _vm.navigateToPage(data)}}},_vm._l((_vm.tableHeaders),function(key,index){return _c('div',{key:index,staticClass:\"table-cell\",class:[key.value,_vm.componentName=='team-roster' && (\"roster-\" + (key.value))],style:({'width': _vm.getColumnWidth(key.width),'min-width': _vm.getColumnWidth(key.width)})},[(key.value == 'status')?_c('div',{staticClass:\"ellipsisthreeline\",attrs:{\"id\":key.value}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? _vm.getStatus(data[key.value]) : '--')+\" \")]):(key.value == 'programCount')?_c('div',{staticClass:\"ellipsisthreeline\",attrs:{\"id\":key.value}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? data[key.value] : '0')+\" \")]):_c('div',{staticClass:\"ellipsisthreeline\",attrs:{\"id\":key.value}},[_vm._v(\" \"+_vm._s((data && data.hasOwnProperty(key.value) && data[key.value]) ? data[key.value] : '--')+\" \")])])}),0)}),0)])])]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Component, Prop, Vue } from 'vue-property-decorator';\nimport APP_CONST from '@/constants/AppConst';\nimport APP_UTILITIES from '@/utilities/commonFunctions';\nimport DisplayColumnFilter from '../displayColumnFilter/DisplayColumnFilter.vue';\n\n\n@Component({\n components: {\n 'display-columns-dropdown': DisplayColumnFilter\n }\n})\nexport default class MovableTableComponent extends Vue {\n public showSettings: boolean = false;\n public dynamicHeight: string = '';\n public dynamicWidth: string = '';\n public elementScroller: any = document.getElementById('table-scroll')\n ? document.getElementById('table-scroll')\n : { style: { width: '' } };\n public element: any = document.getElementById('tableResizableOne')\n ? document.getElementById('tableResizableOne')\n : { offsetWidth: '' };\n public leftTableEle: any = document.getElementById('smart-fixed-table');\n public scrollTimeout: any = {};\n public headerLength: any = 0;\n public drill: boolean = false;\n public mainContainerWidth = APP_CONST.ZERO;\n public tableWidth = APP_CONST.ZERO;\n public hoverText: string = '';\n public hoverId: number = 0;\n public hoverStyleObj: any = {};\n public hoverIndex: number = -1;\n public isTooltip: boolean = false;\n\n @Prop({ default: false })\n showEditIcon!: boolean;\n\n @Prop()\n tableData!: [];\n\n @Prop()\n headers!: [];\n\n @Prop()\n isSearching!: boolean;\n\n @Prop({ default: false })\n isResizer!: boolean;\n\n @Prop()\n displayColumn!: any;\n\n @Prop()\n componentName!: string;\n\n @Prop({ default: false })\n isSortingSearching!: boolean;\n\n @Prop()\n payload!: any;\n\n @Prop({ default: true })\n showCheckBox!: boolean;\n\n @Prop({ default: function () {\n return { id: '', maxWidth: '', minWidth: '' };\n }})\n resizesData!: [];\n\n @Prop({ default: function () {\n return [];\n }})\n searchLists!: { header: string; values: any[] }[];\n\n @Prop({ default: 'blue' })\n theme!: string;\n\n @Prop()\n togglePanelActive!: boolean;\n\n @Prop()\n movableTableHeaders!: any;\n\n @Prop()\n mobileFixedTableHeaders!: any;\n\n @Prop()\n isMobileForAPiCall!: boolean;\n\n\n /* istanbul ignore next */\n getColumnWidth(width: string) {\n const { roleId } = APP_UTILITIES.coreids();\n const safeMargin = 40;\n\n if ((roleId > 2 || roleId == 0) && this.$route.path == '/account/programs') {\n width = width.slice(0, -2);\n return Number(width) + (this.showCheckBox\n ? 11.5\n : 15) + 'px';\n }\n\n else if (this.componentName == 'team-roster') {\n const box: any = document.getElementById('smart-table-wrapper');\n let widthfixed: any = '';\n if (box && box.firstChild.offsetWidth) {\n widthfixed = box.firstChild.offsetWidth;\n }\n\n const movable: any = document.getElementById('tableResizableOne');\n let width2: any = '';\n if (movable && movable.offsetWidth) {\n width2 = movable.offsetWidth;\n }\n const fixedHeaders: any = APP_CONST.TEAM_ROSTER_HEADER.FIXED;\n let totalFixedWidth: number = 0;\n let totalMovableWidth: number = 0;\n fixedHeaders.forEach((element: any) => {\n totalFixedWidth += parseInt(element.width);\n });\n const resizeCols: any = this.resizesData;\n let noOfresizableColumns: number = this.headerLength;\n this.displayColumn.forEach((element: any) => {\n if (element.display === true) {\n const resizeElement = resizeCols.filter((item: any) => element.value == item.id);\n if (resizeElement.length > 0) {\n totalMovableWidth += parseInt(resizeElement[0].maxWidth);\n noOfresizableColumns--;\n }\n else {\n totalMovableWidth += parseInt(element.width);\n }\n }\n\n });\n let spaceToAdjust: number = 0;\n if (widthfixed >= (totalFixedWidth + totalMovableWidth)) {\n spaceToAdjust = widthfixed - (totalFixedWidth + totalMovableWidth) - safeMargin;\n const widthDivide:number = spaceToAdjust / noOfresizableColumns;\n width = width.slice(0, -2);\n return Number(width) + widthDivide + 'px';\n }\n else {\n spaceToAdjust = (totalFixedWidth + totalMovableWidth) - widthfixed + safeMargin;\n const widthDivide:number = Math.floor(spaceToAdjust / noOfresizableColumns);\n width = width.slice(0, -2);\n const colWidth: number = Number(width) - widthDivide;\n\n return colWidth >= 180\n ? Math.floor(colWidth) + 'px'\n :'190px';\n }\n }\n else{\n return width;\n }\n\n }\n\n /* istanbul ignore next */\n get tableHeaders() {\n const headers: any = [];\n if (this.isMobileForAPiCall) {\n this.mobileFixedTableHeaders && this.mobileFixedTableHeaders.length && this.mobileFixedTableHeaders.forEach((head: any) => {\n headers.push(head);\n });\n this.movableTableHeaders && this.movableTableHeaders.length && this.movableTableHeaders.forEach((head: any) => {\n this.displayColumn && this.displayColumn.length && this.displayColumn.forEach((filteredHead: any) => {\n if ((head.filterKey === filteredHead.filterKey) && filteredHead.display) {\n headers.push(head);\n }\n });\n });\n }\n else {\n this.headers && this.headers.length && this.headers.forEach((head: any) => {\n this.displayColumn && this.displayColumn.length && this.displayColumn.forEach((filteredHead: any) => {\n if ((head.filterKey === filteredHead.filterKey) && filteredHead.display) {\n\n if (filteredHead.groupedColumns && filteredHead.groupedColumns.length) {\n filteredHead.groupedColumns.forEach((childHead: any) => {\n headers.push(childHead);\n });\n }\n else {\n headers.push(head);\n }\n\n }\n });\n });\n }\n this.headerLength = headers.length;\n this.scrollAndHeight();\n const tableCells: any = document.getElementsByClassName('table-cell');\n for (const cell of tableCells) {\n if (cell && cell.style && cell.style.maxWidth && cell.style.minWidth) {\n cell.style.maxWidth = '';\n cell.style.minWidth = '';\n cell.style.width = '';\n }\n }\n for (const cell of tableCells) {\n headers && headers.length && headers.forEach((item: any) => {\n if (item.value == cell.id) {\n cell.style.width = item.width;\n }\n });\n }\n const map = new Map();\n this.resizesData && this.resizesData.length && this.resizesData.forEach((col: { id: string; maxWidth: string; minWidth: string }) => {\n map.set(col.id,col.minWidth);\n });\n headers.length && headers.forEach((item: any) => {\n if (map.has(item.value)) {\n item.width = map.get(item.value);\n }\n });\n\n return headers;\n }\n\n /* istanbul ignore next */\n get filterTableData() {\n const tableData = this.tableData;\n this.scrollAndHeight();\n return tableData;\n }\n\n /* istanbul ignore next */\n get decidedWidth(){\n if (this.componentName == 'programs-table') {\n return this.dynamicWidth;\n }\n else {\n 'initial';\n }\n }\n\n /* istanbul ignore next */\n get showScrollbar() {\n if (this.tableHeaders.length) {\n if (this.componentName == 'programs-table' && this.tableWidth < this.mainContainerWidth) {\n return false;\n }\n return true;\n }\n else {\n return false;\n }\n }\n\n\n get sortIcon() {\n if (this.payload.sortField == this.payload.searchField || this.payload.sortField == this.payload.SearchField) {\n return this.payload.sortDir == APP_CONST.ONE\n ? 'sort-a-to-z-white'\n : 'sort-z-to-a-white';\n }\n else {\n return this.payload.sortDir == APP_CONST.ONE\n ? `sort-a-to-z-${this.theme}`\n : `sort-z-to-a-${this.theme}`;\n }\n }\n\n updated() {\n const movableTableHeader = document.getElementById('movable-table-header');\n const movableTableData = document.getElementById('scrollableArea');\n setTimeout(() => {\n movableTableData.scrollLeft = movableTableHeader && movableTableHeader.scrollLeft;\n }, 0);\n }\n\n /* istanbul ignore next */\n mounted() {\n if (APP_UTILITIES.getCookie(APP_CONST.SUPER_USER_DRILLDOWN)) {\n const drilldrown: any = APP_UTILITIES.getCookie(APP_CONST.SUPER_USER_DRILLDOWN);\n this.drill = JSON.parse(JSON.stringify(drilldrown));\n }\n\n this.enableResizer();\n window.addEventListener('scroll', this.callHoverOut, false);\n if (this.isSortingSearching) {\n if (this.isMobileForAPiCall) {\n if (document.getElementById('scrolling-table')) {\n const element: any = document.getElementById('scrolling-table');\n element.addEventListener('mousewheel', this.closePanelMobile, false);\n }\n }\n else {\n window.addEventListener('scroll', this.closePanel, false);\n if (document.getElementById('scrollableArea')) {\n const element: any = document.getElementById('scrollableArea');\n element.addEventListener('scroll', this.closePanel, false);\n }\n }\n }\n const header = this.headers.filter((el: any) => {\n return el.isOpen;\n });\n header.length && this.openSortingDropdown(header[0], {});\n }\n\n enableResizer() {\n /* istanbul ignore else */\n if (this.isResizer && !this.isMobileForAPiCall) {\n window.addEventListener('mousewheel', this.onMouseWheel, false);\n window.addEventListener('touchmove', this.onMouseWheel, false);\n this.createResizableTable(document.getElementById('tableResizableOne'));\n }\n }\n\n closePanelMobile(e: any) {\n /* istanbul ignore else */\n if (e.deltaX != '-0') {\n this.$emit('closePanel');\n }\n }\n\n /* istanbul ignore next */\n onMouseWheel(e: any) {\n const scrollerView: any = document.getElementById('layerWhenScrolling');\n let d = ((typeof e.wheelDelta != 'undefined')\n ? (-e.wheelDelta)\n : e.detail);\n d = 100 * ((d > 0)\n ? 1\n : -1);\n if (scrollerView && scrollerView.classList) {\n scrollerView.classList.add('stackingElement');\n clearTimeout(this.scrollTimeout);\n this.scrollTimeout = setTimeout(function () {\n scrollerView.classList.remove('stackingElement');\n }, 800);\n }\n }\n\n createResizableTable(table: any) {\n const cols = table && table.querySelectorAll('.table-cell');\n cols && cols.forEach((col: any) => {\n // Add a resizer element to the column\n const column = document && document.querySelectorAll(`.${col.id}`);\n const resizer = document.createElement('div');\n resizer.classList.add(`resizer-${this.theme}`);\n\n // Set the height\n resizer.style.height = `${table.offsetHeight}px`;\n\n col.appendChild(resizer);\n\n this.createResizableColumn(col, resizer);\n\n this.resizesData\n && this.resizesData.length\n && this.resizesData.forEach((item: { id: string; maxWidth: string; minWidth: string }) => {\n if (item.id == col.id) {\n if (this.componentName !== 'programs-table') {\n col.style.maxWidth = item.maxWidth;\n }\n else {\n col.style.width = item.minWidth;\n }\n col.style.minWidth = item.minWidth;\n }\n });\n column && column.forEach((colm: any) => {\n this.resizesData\n && this.resizesData.length\n && this.resizesData.forEach((item: { id: string; maxWidth: string; minWidth: string }) => {\n if (this.componentName == 'team-roster') {\n if (`table-cell ${item.id} roster-${item.id}` == colm.className) {\n colm.style.maxWidth = item.maxWidth;\n colm.style.minWidth = item.minWidth;\n }\n }\n else {\n if (`table-cell ${item.id}` == colm.className) {\n if (this.componentName !== 'programs-table') {\n colm.style.maxWidth = item.maxWidth;\n }\n else {\n colm.style.width = item.minWidth;\n }\n colm.style.minWidth = item.minWidth;\n }\n }\n });\n });\n });\n }\n\n createResizableColumn(col: any, resizer: any) {\n let x = 0;\n let w = 0;\n\n const mouseDownHandler = (e: any) => {\n x = e.clientX;\n\n const styles = window.getComputedStyle(col);\n if (styles && styles.width) {\n w = parseInt(styles.width, 10);\n }\n\n document.addEventListener('mousemove', mouseMoveHandler);\n document.addEventListener('mouseup', mouseUpHandler);\n\n resizer.classList.add(`resizing-${this.theme}`);\n };\n\n const mouseMoveHandler = (e: any) => {\n const column: any = document.querySelectorAll(`.${col.id}`);\n const dx = e.clientX - x;\n const width = (w + dx) <= 80\n ? 80\n : (w + dx);\n this.$emit('presistResize', { column: col, maxWidth: `${width}px`, minWidth: `${width}px` });\n if (this.componentName == 'programs-table') {\n col.style.width = `${width}px`;\n }\n else {\n col.style.maxWidth = `${width}px`;\n }\n col.style.minWidth = `${width}px`;\n column && column.forEach((el: any) => {\n el.style.minWidth = `${width}px`;\n if (this.componentName == 'programs-table') {\n el.style.width = `${width}px`;\n }\n else {\n el.style.maxWidth = `${width}px`;\n }\n });\n this.setWidth();\n };\n\n const mouseUpHandler = () => {\n resizer.classList.remove(`resizing-${this.theme}`);\n document.removeEventListener('mousemove', mouseMoveHandler);\n document.removeEventListener('mouseup', mouseUpHandler);\n this.updateScrollBar();\n this.elementScroller.style.width = this.element.offsetWidth + 'px';\n this.setWidth();\n };\n\n resizer.addEventListener('mousedown', mouseDownHandler);\n\n\n }\n\n\n scrollAndHeight() {\n this.setHeight();\n setTimeout(() => {\n const table = document.getElementById('tableResizableOne');\n if (table) {\n this.createResizableTable(table);\n }\n this.elementScroller = document.getElementById('table-scroll')\n ? document.getElementById('table-scroll')\n : { style: { width: '' } };\n this.element = document.getElementById('tableResizableOne')\n ? document.getElementById('tableResizableOne')\n : { offsetWidth: '' };\n this.leftTableEle = document.getElementById('smart-fixed-table');\n this.updateScrollBar();\n this.setWidth();\n }, 50);\n }\n\n updateScrollBar() {\n this.elementScroller.style.width = this.element.offsetWidth + 'px';\n const columnAvaiable = this.displayColumn && this.displayColumn.length && this.displayColumn.some((column: any) => {\n if (column.display) {\n return true;\n }\n });\n this.elementScroller.style.width = columnAvaiable\n ? this.elementScroller.style.width\n : '0';\n }\n\n getStatus(status: any) {\n return status == 1\n ? 'Active'\n : 'Inactive';\n }\n\n setHeight() {\n setTimeout(() => {\n const leftTableEle = document.getElementById('smart-fixed-table');\n const tableHeight = leftTableEle && leftTableEle.offsetHeight;\n this.dynamicHeight = tableHeight && tableHeight.toString() + 'px' || '';\n }, 0);\n }\n\n setWidth() {\n setTimeout(() => {\n const leftTableEle = document.getElementById('tableResizableOne');\n const mainContainer = document.getElementById('smart-table-wrapper');\n const mainContainerWidth: any = mainContainer && mainContainer.offsetWidth - APP_CONST.FIVE_HUNDRED_FIFTY;\n const tableWidth: any = leftTableEle && leftTableEle.offsetWidth;\n this.mainContainerWidth = mainContainerWidth;\n this.tableWidth = tableWidth;\n const scrollBar = document.getElementById('scrollableArea');\n if (tableWidth < mainContainerWidth) {\n if (scrollBar && this.componentName == 'programs-table') {\n scrollBar.style.overflowX = 'hidden';\n }\n if (tableWidth) {\n this.dynamicWidth = tableWidth && tableWidth.toString() + 'px' || '';\n }\n else {\n this.dynamicWidth = 0 + 'px' || '';\n }\n }\n else {\n if (scrollBar && this.componentName == 'programs-table') {\n scrollBar.style.overflowX = 'auto';\n }\n if (tableWidth) {\n this.dynamicWidth = '100%';\n }\n }\n }, APP_CONST.FIFTY);\n }\n\n\n openSortingDropdown(header: any, event: any) {\n /* istanbul ignore else */\n if (this.isSortingSearching) {\n const elem = document.getElementById(header.value);\n const pos = elem && elem.getBoundingClientRect();\n let x = pos && pos.left + APP_CONST.FOURTEEN;\n const y = pos && pos.top + APP_CONST.FOURTY_FIVE;\n const xPosPercent = (x / window.innerWidth) * APP_CONST.HUNDRED;\n x = x - (xPosPercent >= APP_CONST.SEVENTY_FIVE\n ? APP_CONST.HUNDRED\n : APP_CONST.ZERO);\n this.$emit('openSortingDropdown', header, { x, y });\n }\n }\n\n navigateToPage(accountData: any) {\n this.$emit('navigateToPage', accountData);\n }\n\n handleSortingArrows(header: any) {\n this.tableHeaders.forEach((originalHeader: any) => {\n if (originalHeader.value === header.value) {\n originalHeader.isOpen = !originalHeader.isOpen;\n }\n });\n }\n\n decideSortingDirection(field: string) {\n let sortDirection = APP_CONST.ONE;\n /* istanbul ignore else */\n if (this.payload.sortField === field) {\n sortDirection = this.payload.sortDir === APP_CONST.ONE\n ? APP_CONST.TWO\n : APP_CONST.ONE;\n }\n this.$emit('sortScholars', { sortField: field, sortDirection: sortDirection });\n }\n\n closePanel() {\n this.$emit('closePanel');\n }\n\n /* istanbul ignore next */\n beforeDestroy() {\n if (this.isResizer) {\n window.removeEventListener('mousewheel', this.onMouseWheel, false);\n window.removeEventListener('touchmove', this.onMouseWheel, false);\n }\n if (this.isSortingSearching) {\n window.removeEventListener('scroll', this.closePanel, false);\n if (document.getElementById('scrollableArea')) {\n const elemen: any = document.getElementById('scrollableArea');\n elemen.removeEventListener('scroll', this.closePanel, false);\n }\n }\n }\n\n filterColumns(displayColumn: any) {\n this.$emit('filterColumns', displayColumn);\n this.$emit('calculateTableWidth');\n }\n\n filterDisplayColumn(column: any) {\n this.$emit('filterDisplayColumn', column);\n }\n\n openSortingDropdownFixedMobile(header: any, $event: any) {\n if (this.isSortingSearching && header.action) {\n const elem = document.getElementById(header.value);\n const pos = elem && elem.getBoundingClientRect();\n let x = 0;\n const deviceWidth = window.innerWidth\n ? window.innerWidth\n : document.documentElement.clientWidth;\n if (pos && pos.left < (deviceWidth-255) && (pos.left > 50)) {\n x = pos.left;\n }\n else if (pos && pos.left < 51) {\n x = 53;\n }\n else {\n x = deviceWidth-275;\n }\n const y = pos && pos.top + APP_CONST.FOURTY_FIVE;\n this.$emit('openSortingDropdown', header, { x, y });\n }\n }\n\n callHover(index: number, value: string, event: any, id?: number,) {\n this.hoverIndex = index;\n this.$emit('rowHovered', index);\n const target = event.target;\n const parent = target.parentElement;\n const hoverTextLength = value && `${value}`.trim().length;\n\n if (hoverTextLength && (target.tagName !== APP_CONST.STRONG_UPPERCASE\n ? target.offsetHeight > 32\n : parent.offsetHeight > 32)) {\n this.isTooltip = true;\n this.hoverText = value;\n const boundBox = event && event.target && event.target.getBoundingClientRect();\n const coordX = boundBox && boundBox.left;\n const coordY = boundBox && boundBox.top;\n this.hoverStyleObj = {\n position: 'fixed',\n top: (coordY + 30).toString() + 'px',\n left: (coordX + 30).toString() + 'px'\n };\n }\n event.stopImmediatePropagation();\n }\n\n callHoverOut() {\n this.hoverText = '';\n this.hoverId = 0;\n this.isTooltip = false;\n this.hoverIndex = -1;\n this.$emit('rowHovered', -1);\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport MovableTableComponent from './MovableTableComponent';\nexport default MovableTableComponent;\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MovableTableComponent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MovableTableComponent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MovableTableComponent.vue?vue&type=template&id=5b54a2c7&scoped=true&\"\nimport script from \"./MovableTableComponent.vue?vue&type=script&lang=ts&\"\nexport * from \"./MovableTableComponent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MovableTableComponent.less?vue&type=style&index=0&id=5b54a2c7&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5b54a2c7\",\n null\n \n)\n\nexport default component.exports","var map = {\n\t\"./checkbox_minus.svg\": \"2198\",\n\t\"./checkbox_sprite_lightgrey copy.svg\": \"0e57\",\n\t\"./checkbox_sprite_lightgrey.svg\": \"31f3\",\n\t\"./closeIconBlack.svg\": \"7526\",\n\t\"./filter-white.svg\": \"a561\",\n\t\"./search.svg\": \"7d6e\",\n\t\"./settings-purple.svg\": \"068b\",\n\t\"./settings.svg\": \"c38f\",\n\t\"./sort-a-to-z-blue.svg\": \"d0a4\",\n\t\"./sort-a-to-z-green.svg\": \"adfa\",\n\t\"./sort-a-to-z-purple.svg\": \"fcd6\",\n\t\"./sort-a-to-z-white.svg\": \"b633\",\n\t\"./sort-arrow-icon.svg\": \"98db\",\n\t\"./sort-z-to-a-blue.svg\": \"e135\",\n\t\"./sort-z-to-a-green.svg\": \"85c5\",\n\t\"./sort-z-to-a-purple.svg\": \"203d\",\n\t\"./sort-z-to-a-white.svg\": \"33f3\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"a3e9\";","module.exports = __webpack_public_path__ + \"img/filter-white.3e6fff40.svg\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./SmartTableContainer.less?vue&type=style&index=0&id=6c61fc1d&lang=less&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"uk-flex-top popupwrapper\",attrs:{\"id\":\"cancel-confirmation\",\"uk-modal\":\"stack: true\"}},[_c('div',{staticClass:\"uk-modal-dialog uk-margin-auto-vertical popupbox\"},[_c('div',{staticClass:\"popup-header-content\"},[_c('button',{staticClass:\"cross-icon uk-modal-close-default\",attrs:{\"type\":\"button\",\"bx-attr\":\"duplicate-file-closePopup\"},on:{\"click\":function($event){return _vm.closePopup()}}},[_c('img',{attrs:{\"src\":require(\"../../assets/images/closeIconBlack.svg\"),\"alt\":\"\"}})])]),_c('div',{staticClass:\"popup-context-box\"},[_c('div',{staticClass:\"popup-context-box-inner\"},[_c('div',{staticClass:\"fix\"},[_vm._m(0),_c('h3',[_vm._v(_vm._s(\"Alert!\"))]),(_vm.instructionFor == 'resetTasks')?_c('p',{staticClass:\"info-text\"},[_vm._v(_vm._s(\"You are about to reset the tasks for \")),_c('strong',[_vm._v(_vm._s(_vm.programsCount))]),_vm._v(\" \"+_vm._s(\"programs. Do you want to continue? \"))]):[_c('p',{staticClass:\"info-text\"},[_vm._v(_vm._s(\"You are about to clear the information you have entered.\"))]),_c('p',{staticClass:\"info-ques\"},[_vm._v(_vm._s(\"Do you want to continue? \"))])]],2),_c('div',{staticClass:\"button-wrapper\"},[_c('button',{staticClass:\"btn-secondary mr-8 uk-modal-close-default cancel-btn\",attrs:{\"uk-close\":\"\",\"bx-attr\":\"keepBothFile-button\"},on:{\"click\":function($event){return _vm.closePopup()}}},[_vm._v(_vm._s(\"CANCEL\"))]),_c('button',{staticClass:\"btn-primary ml-8\",attrs:{\"bx-attr\":\"fileReplace-button\"},on:{\"click\":_vm.continueCancel}},[_vm._v(_vm._s(\"CONTINUE\"))])])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('figure',[_c('img',{attrs:{\"src\":require(\"../../assets/images/account/bell.svg\"),\"alt\":\"\"}})])}]\n\nexport { render, staticRenderFns }","import { Vue, Component, Prop, PropSync, Watch } from 'vue-property-decorator';\nimport { ScreenText } from '@/lang/ScreenText';\nimport programListStore from '@/store/modules/programList';\nimport UIkit from 'uikit';\n\n@Component\nexport class CancelConfirmation extends Vue {\n private objScreenText: ScreenText = new ScreenText();\n\n @Prop()\n title! : string;\n\n @Prop({default: 'clearInfo'})\n instructionFor!: string;\n\n @Prop()\n programsCount!:number;\n\n @Prop({default: 'cancelPopup'})\n component!: string;\n\n @Prop({ default: false })\n hasContinueEvent!: boolean;\n\n @PropSync('isVisible') isVisibleSync !: boolean;\n\n @Watch('isVisible', { immediate: true })\n onIsVisible(isVisible: boolean) {\n const isElementShowing = UIkit.modal(this.$el).isToggled();\n\n if (isVisible && isElementShowing === false) {\n UIkit.modal(this.$el).show();\n }\n else if (isVisible === false && isElementShowing) {\n UIkit.modal(this.$el).hide();\n }\n }\n\n mounted() {\n UIkit.util.on(this.$el, 'hidden', ((event: Event) => {\n this.isVisibleSync = false;\n this.$emit('onClose', event);\n }));\n\n UIkit.util.on(this.$el, 'beforehide', ((event: Event) => {\n this.$emit('onBeforeClose', event);\n\n if (event.defaultPrevented && this.isVisibleSync === false) {\n this.isVisibleSync = true;\n }\n }));\n }\n\n public getScreenText(key: string): string {\n return this.objScreenText.getScreenText(key);\n }\n\n /* istanbul ignore next */\n get previousRouteDetails(){\n return programListStore.previousRouteDetails;\n }\n\n continueCancel(){\n if(this.instructionFor=='resetTasks' || this.hasContinueEvent){\n this.$emit('continue');\n }\n else{\n this.$router.push(this.previousRouteDetails.returnTo);\n }\n }\n\n closePopup() {\n this.$emit('closePopup');\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { CancelConfirmation } from '@/popupcomponents/cancelConfirmation/CancelConfirmation';\nexport default CancelConfirmation;\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CancelConfirmation.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CancelConfirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CancelConfirmation.vue?vue&type=template&id=334712b6&scoped=true&\"\nimport script from \"./CancelConfirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./CancelConfirmation.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CancelConfirmation.less?vue&type=style&index=0&id=334712b6&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"334712b6\",\n null\n \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/sort-a-to-z-green.c4d412d2.svg\";","import { SiteLocationResponse, VerifiedSiteLocation, VerifiedSiteLocationResponse } from '@/Model/siteLocations/types';\nimport { CustomFeeResponse, Discount, TaxRate } from '@/Model/payments/types';\nimport { PriceRequest, PriceType, PriceResponse, PromoCode } from '@/Model/payments/types';\nimport { Day } from '../selectedDays/types';\nimport { BasePagedDataRequest } from '../shared/types';\n\nexport interface GetSessionsRequest extends BasePagedDataRequest {\n programId: number;\n sessionAutoEnrollmentFilter: AutoEnrollmentFilter;\n}\n\nexport interface GetSessionsResponse {\n results: Session[];\n totalSetCount: number;\n}\n\nexport interface Session {\n sessionId: number;\n accountId: number;\n programId: number;\n sessionName: string;\n programName: string;\n note1: string;\n note2: string;\n startDateTime: string;\n endDateTime: string;\n selectedDays: Array;\n enrollmentCount: number;\n scholarCapacity?: number;\n autoEnroll: boolean;\n autoEnrollment: string;\n autoEnrollCapacity?: number;\n waitListCapacity?: number;\n isTimeAdded: boolean;\n ageAsOf: string;\n ageFrom?: number;\n ageTo?: number;\n ageRestriction: string;\n createdAt: string;\n status: number;\n siteLocationId?: number;\n siteLocation?: VerifiedSiteLocation;\n prices?: Array;\n defaultPriceId?: string;\n taxRate?: TaxRate | null;\n promoCodes?: Array;\n customFees: CustomFeeResponse[];\n waitListIsUnlimited?: boolean | null;\n /** Discounts are optionally added */\n discounts?: Array;\n //TODO: This won't be required until the 'payment-plans' feature flag is removed\n isPaymentPlanEnabled?: boolean;\n}\n\nexport interface SessionWithExistingSiteLocation extends Omit {\n siteLocation?: SiteLocationResponse | VerifiedSiteLocationResponse;\n}\n\nexport interface AddSessionPayload {\n programId?: number;\n sessionName: string;\n note1?: string;\n note2?: string;\n startDate: Date | null;\n endDate: Date | null;\n startTime: string;\n endTime: string;\n selectedDays: Array;\n siteLocationId?: number;\n scholarCapacity?: number;\n autoEnroll?: boolean;\n ageTo?: number;\n ageFrom?: number;\n waitListCapacity?: number;\n autoEnrollCapacity?: number;\n ageAsOf?: Date | null;\n isTimeAdded: boolean;\n priceRequest: PriceRequest;\n taxRate: TaxRate | null;\n //TODO: This won't be required until the 'payment-plans' feature flag is removed\n isPaymentPlanEnabled? : boolean;\n waitListIsUnlimited?: boolean | null;\n}\n\nexport interface EditSessionPayload extends AddSessionPayload {\n sessionId: number;\n userConfirmsSoftDeleteAttendance: boolean;\n}\n\nexport interface AddSessionPayloadV2 {\n programId?: number;\n sessionName: string;\n sessionDescription: string;\n startDate: Date | null;\n endDate: Date | null;\n startTime: string;\n endTime: string;\n selectedDays: string[];\n siteLocationId?: number;\n}\n\nexport interface FilterDropdownOption {\n filterOption: FilterOption;\n displayText: string;\n}\n\nexport enum FilterOption {\n All = 1,\n AutoEnrollmentOn = 2,\n AutoEnrollmentOff = 3\n}\n\nexport enum SortOption {\n StartDateAsc = 1,\n StartDateDesc = 2,\n SessionNameAsc = 3,\n SessionNameDesc = 4,\n EnrolledScholarsAsc = 5,\n EnrolledScholarsDesc = 6\n}\nexport interface SortOptionWithDisplayText {\n sortOption: SortOption;\n displayText: string;\n}\n\nexport interface PaymentFrequencyRadioInputOption {\n id: string;\n option: PriceType;\n displayText: string;\n}\n\nexport enum AutoEnrollmentFilter {\n All,\n On,\n Off\n}\n\nexport interface SessionCardPromoCodeListItem {\n id: string;\n displayText: string;\n}\n","module.exports = __webpack_public_path__ + \"img/sort-a-to-z-white.e7b3cfe6.svg\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./ActionsDropdown.less?vue&type=style&index=0&id=2e94ae88&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/settings.148236ec.svg\";","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./Programs.less?vue&type=style&index=0&id=4ee982d2&lang=less&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/sort-a-to-z-blue.c4d412d2.svg\";","module.exports = __webpack_public_path__ + \"img/Vector.db5fdc20.svg\";","module.exports = __webpack_public_path__ + \"img/sort-z-to-a-blue.4ddbc705.svg\";","module.exports = __webpack_public_path__ + \"img/bell.3760333b.svg\";","import API_CONST from '@/constants/ApiConst';\nimport { AddSessionPayload, AutoEnrollmentFilter, EditSessionPayload, GetSessionsRequest, GetSessionsResponse, Session } from '@/Model/sessions/types';\nimport { SortDirection } from '@/Model/shared/types';\nimport { httpClient } from '@/services/common/httpClient';\nimport { AxiosResponse } from 'axios';\n\nexport function addNewSession(newSession: AddSessionPayload) {\n return httpClient().post(`${API_CONST.SESSIONS_END_POINT}`, { ...newSession });\n}\n\nexport function updateSession(payload: EditSessionPayload) {\n return httpClient().put(`${API_CONST.SESSIONS_END_POINT}`, payload);\n}\n\nexport function getSessionsForProgram(programId: number): Promise>> {\n return httpClient().get>(`${API_CONST.PROGRAM_SESSIONS_ENDPOINT}/${programId}`);\n}\n\nexport async function getPagedSessionsForProgram(request: GetSessionsRequest): Promise> {\n\n const url = `${API_CONST.SESSIONS_END_POINT}` +\n `?programId=${encodeURIComponent(request.programId)}` +\n `&page=${encodeURIComponent(request.page || '')}` +\n `&sortField=${encodeURIComponent(request.sortField || '')}` +\n `&sortDir=${encodeURIComponent(request.sortDir || SortDirection.Undefined)}` +\n `&searchField=${encodeURIComponent(request.searchField || '')}` +\n `&search=${encodeURIComponent(request.search || '')}` +\n `&pageItemCount=${encodeURIComponent(request.pageItemCount || '')}` +\n `&sessionAutoEnrollmentFilter=${encodeURIComponent(request.sessionAutoEnrollmentFilter || AutoEnrollmentFilter.All)}`;\n\n return httpClient().get(url);\n}\n","module.exports = __webpack_public_path__ + \"img/sort-a-to-z-purple.c4d412d2.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.closePanel),expression:\"closePanel\"}],staticClass:\"header-filter-dropdown\"},[(_vm.header)?_c('div',{staticClass:\"content\"},[(_vm.header.isSort)?_c('div',[_c('div',{staticClass:\"sort-ascending first-row\",class:_vm.payload.sortField == _vm.header.value && _vm.payload.sortDir == 1 && 'selected',on:{\"click\":function($event){return _vm.sortData(_vm.header.value, 1)}}},[_vm._v(\" Sort A \"),_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/sort-arrow-icon.svg\"),\"alt\":\"sort\"}}),_vm._v(\" Z \")]),_c('div',{staticClass:\"sort-descending\",class:_vm.payload.sortField == _vm.header.value && _vm.payload.sortDir == 2 && 'selected',on:{\"click\":function($event){return _vm.sortData(_vm.header.value, 2)}}},[_vm._v(\" Sort Z \"),_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/sort-arrow-icon.svg\"),\"alt\":\"sort\"}}),_vm._v(\" A \")])]):_vm._e(),(_vm.header.isSearch)?_c('div',{staticClass:\"programDiv\",class:[_vm.componentName=='user-table' && _vm.header.value=='phone' ?'phone-search':'search-box',_vm.componentName=='team-roster' && _vm.header.value=='email' ?'email-search':'search-box' , _vm.componentName=='repair-table' && _vm.header.value=='phoneNumber' ? 'phone-search':'search-box', _vm.componentName=='team-roster' && _vm.header.value=='phoneNumber' ? 'phone-search':'search-box']},[(_vm.search[_vm.header.value] === '')?_c('span',{staticClass:\"search-icon\",class:{'lookup-margin': !_vm.header.isSort},attrs:{\"bx-attr\":\"search-icon\"}},[_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/search.svg\"),\"alt\":\"search-magnifier-icon\"}})]):_c('span',{staticClass:\"search-icon search-close-align\",attrs:{\"bx-attr\":\"close-icon\"},on:{\"click\":function () {\n _vm.search[_vm.header.value] = '';\n _vm.searchData('');\n }}},[_c('img',{attrs:{\"src\":require(\"../../../assets/images/smartTableImages/closeIconBlack.svg\"),\"alt\":\"search-clear-close-icon\"}})]),_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.search[_vm.header.value]),expression:\"search[header.value]\",modifiers:{\"trim\":true}}],ref:\"scholarFirstNameSearch\",attrs:{\"bx-attr\":\"main-search-box\",\"placeholder\":'Search'},domProps:{\"value\":(_vm.search[_vm.header.value])},on:{\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.searchData(_vm.header.value)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"backspace\",undefined,$event.key,undefined)){ return null; }return _vm.resetSearch(_vm.header.value)}],\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.search, _vm.header.value, $event.target.value.trim())},\"blur\":function($event){return _vm.$forceUpdate()}}})]):_vm._e(),(_vm.header.isSearchList)?_c('ul',{staticClass:\"searchDropdownList\"},[(_vm.payload && _vm.payload.isExactMatch && (_vm.payload.searchField==_vm.header.value || _vm.payload.SearchField==_vm.header.value))?_c('li',{staticClass:\"clear-selection\",on:{\"click\":_vm.clearSelection}},[_vm._v(_vm._s('Clear Selection'))]):_vm._e(),_vm._l((_vm.filteredListValues),function(listElement){return _c('li',{key:listElement,class:[_vm.filterValue == listElement && 'selected'],on:{\"click\":function($event){return _vm.searchFromList(_vm.header.value, listElement)}}},[_vm._v(\" \"+_vm._s(listElement)+\" \")])})],2):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import tableStore from '@/store/modules/table';\nimport { Component, Prop, Vue } from 'vue-property-decorator';\nimport APP_CONST from '@/constants/AppConst';\n\n\n@Component({\n components: {\n }\n})\nexport default class SortingSearchingActions extends Vue {\n filterValue: string = '';\n\n @Prop()\n header!: any;\n\n @Prop()\n payload!: any;\n\n @Prop()\n search!: any;\n\n @Prop()\n componentName!: string;\n\n @Prop({ default: function () {\n return []; \n } })\n searchLists!: { header: string; values: any[] }[];\n\n get searchInputValues() {\n return tableStore.searchInputValues;\n }\n\n beforeMount() {\n if (this.header && this.search[this.header.value]) {\n const searchInputValues: any = { key: this.header.value, value: this.search[this.header.value] };\n tableStore.updatecommonSearchArray({ ...this.searchInputValues, [this.componentName]: searchInputValues });\n }\n this.updateSearchValue();\n }\n\n destroyed() {\n if(this.payload && (this.payload.searchField || this.payload.SearchField)){\n if (this.searchInputValues[this.componentName] && this.header && this.header.value == this.searchInputValues[this.componentName].key) {\n this.search[this.header.value] = this.searchInputValues[this.componentName].value;\n }\n }\n }\n\n updateSearchValue() {\n this.filterValue = (this.payload && (this.payload.searchField || this.payload.SearchField))\n ? this.header && this.search[this.header.value]\n : '';\n if (this.header && this.payload && this.payload.isExactMatch) {\n this.search[this.header.value] = '';\n }\n }\n\n closePanel() {\n this.$emit('closeActionsPanel', this.header);\n }\n\n sortData(sortField: string, sortDirection: number) {\n this.$emit('sortData', { sortField: sortField, sortDirection: sortDirection });\n }\n\n searchData(searchField: string, fromList?: boolean, fromClearSelection?: boolean) {\n for (const key in this.search) {\n if (this.search.hasOwnProperty(key) && key !== searchField) {\n this.search[key] = '';\n }\n }\n if (this.payload && !fromList) {\n this.payload.isExactMatch = false;\n }\n if (searchField !== '') {\n this.closePanel;\n }\n const searchInputValues = this.header && { key: this.header.value, value: this.search[this.header.value] };\n tableStore.updatecommonSearchArray({ ...this.searchInputValues, [this.componentName]: searchInputValues });\n this.$emit('searchData', { searchField: searchField, isExactMatch: this.payload && this.payload.isExactMatch }, fromClearSelection\n ? fromClearSelection\n : false);\n }\n\n resetSearch(field: string) {\n if (!this.search[field].length) {\n this.searchData('');\n }\n }\n\n clearSelection() {\n this.payload.isExactMatch = false;\n this.filterValue = '';\n this.searchData('', false, true);\n }\n\n get filteredListValues() {\n const openDropDownSearchListIdx = this.searchLists.findIndex((list: any) => {\n return list.header == this.header.value;\n });\n if (this.payload && this.payload.isExactMatch && openDropDownSearchListIdx >= APP_CONST.ZERO) {\n const selectElement: any = this.searchLists[openDropDownSearchListIdx].values.filter((value: any) => {\n return value == this.payload.search; \n });\n const unselectElement: any = [];\n this.searchLists[openDropDownSearchListIdx].values.forEach((value: any) => {\n if (value != this.payload.search) {\n unselectElement.push(value);\n }\n });\n const searchInputValues = unselectElement.filter((el: string) => {\n return `${el}`.toLowerCase().includes(this.search[this.header.value].toLowerCase());\n });\n return selectElement.concat(searchInputValues);\n }\n else {\n if (openDropDownSearchListIdx >= APP_CONST.ZERO) {\n return this.searchLists[openDropDownSearchListIdx].values.filter((el: string) => {\n return `${el}`.toLowerCase().includes(this.search[this.header.value].toLowerCase());\n });\n }\n }\n }\n\n searchFromList(searchField: string, searchValue: string) {\n this.payload.isExactMatch = true;\n this.search[searchField] = searchValue;\n this.searchData(searchField, this.payload.isExactMatch);\n }\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport SortingSearchingActions from './SortingSearchingActions';\nexport default SortingSearchingActions;\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SortingSearchingActions.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SortingSearchingActions.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SortingSearchingActions.vue?vue&type=template&id=71c7709d&scoped=true&\"\nimport script from \"./SortingSearchingActions.vue?vue&type=script&lang=ts&\"\nexport * from \"./SortingSearchingActions.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SortingSearchingActions.less?vue&type=style&index=0&id=71c7709d&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"71c7709d\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}