UNPKG

@lovebowls/leagueelements

Version:

League Elements package for LoveBowls

194 lines 7.13 kB
export default LeagueAdminElement; declare class LeagueAdminElement extends HTMLElement { static _globalStylesInjected: boolean; static get observedAttributes(): string[]; LOG_PREFIX: string; shadow: ShadowRoot; _leagues: any[]; _selectedLeagueId: any; _currentLeagueId: any; _selectedTeamId: any; _isModalVisible: boolean; _modalMode: string; _data: any; _teamModalMode: any; _teamBeingEdited: {} | null; _lovebowlsTeams: any[]; teamModalOpen: boolean; teamModalData: any; teamModalMode: string; teamModalOptions: {}; matchModalOpen: boolean; matchModalData: any; matchModalTeams: any[]; matchModalMode: string; resetModalOpen: boolean; _pendingNewLeagueData: { name: any; settings: { pointsForWin: number; pointsForDraw: number; pointsForLoss: number; timesTeamsPlayOther: number; promotionPositions: number; relegationPositions: number; maxRinksPerSession: number | undefined; rinkPoints: { enabled: any; pointsPerRinkWin: number; pointsPerRinkDraw: number; defaultRinks: number; }; }; } | null; _isWaitingForNewLeagueConfirmation: boolean; _isNewLeagueLoading: boolean; _isCopyLeagueLoading: boolean; _loadingTimeout: NodeJS.Timeout | null; _rightPanelWasVisible: boolean; get _isMobile(): boolean; get _fontScale(): number; _injectGlobalSwalStyles(): void; connectedCallback(): void; disconnectedCallback(): void; _documentClickHandlerBound: ((e: any) => void) | null | undefined; attributeChangedCallback(name: any, oldValue: any, newValue: any): void; _parseAndLoadData(): void; _parseLovebowlsTeamsData(dataString: any): void; _applyCurrentLeagueIdSelection(): boolean; showError(message: any): void; clearError(): void; render(): void; _renderLeagueList(): void; _handleLeagueSelect(leagueId: any): void; _createAndAppendLeagueActions(container: any, leagueId: any): void; _currentLeagueIdForMenu: any; _showLeagueSpecificPanels(): void; _hideLeagueSpecificPanels(): void; _updateButtonStates(): void; _renderTeamsList(): void; _scrollTeamsListToTop(): void; _attachBaseEventListeners(): void; _getSelectedLeague(): any; /** * Hides/resets all league action dropdown menus to their default state * This function finds all dropdown menu elements and hides them */ _hideGlobalLeagueMenu(): void; /** * Handle document clicks to close dropdown menus when clicking outside */ _handleDocumentClick(e: any): void; _handleResetLeague(): void; /** * Open the reset modal for a league * @param {Object} league - The league object to reset */ _openResetModal(league: Object): void; _leagueToReset: Object | null | undefined; /** * Close the reset modal */ _closeResetModal(): void; /** * Reset matches for a league while preserving teams * @param {Object} leagueToReset - The league object to reset matches for * @param {Array} generatedMatches - The generated matches array * @param {number} matchCount - The number of matches generated * @param {Object} dateRange - The date range for scheduling matches */ _applyGeneratedMatches(leagueToReset: Object, generatedMatches: any[], matchCount: number, dateRange: Object): void; _mapGeneratedMatchesToActualTeams(generatedMatches: any, actualTeams: any): any; _handleViewLeagueTable(): void; _handleAddTeam(): void; _handleEditTeam(team: any): void; _handleRemoveTeam(team: any): void; _showTeamModal(mode: any, teamData?: null, existingTeams?: any[]): void; _hideTeamModal(): void; _populateTeamModalForm(modalBody: any, teamData: any, existingTeams?: any[]): void; _showTeamModalError(message: any): void; _clearTeamModalError(): void; _handleSaveTeamModal(): void; _showModal(mode: any, leagueData?: null): void; _hideModal(): void; _populateModalForm(modalBody: any, leagueData: any): void; _handleSaveModal(): void; /** * Set up tab switching functionality for the modal * @param {HTMLElement} modalBody - The modal body element * @private */ private _setupModalTabs; /** * Get the configuration for modal tabs * This method makes it easy to extend tabs in the future * @returns {Array} Array of tab configurations * @private */ private _getModalTabsConfig; /** * Generate the League Structure tab content * @param {Object} settings - League settings object * @returns {string} HTML content for the tab * @private */ private _getLeagueStructureTabContent; /** * Generate the Points tab content * @param {Object} settings - League settings object * @returns {string} HTML content for the tab * @private */ private _getPointsTabContent; _getSwalCustomClasses(): { popup: string; title: string; htmlContainer: string; actions: string; confirmButton: string; cancelButton: string; }; /** * Check if we need to show new league confirmation dialog */ _handleLeagueOperationTimeout(): void; _handleLeagueOperationError(errorMessage?: string): void; /** * Public method to handle save errors from parent component * @param {string} errorMessage - The error message to display */ handleSaveError(errorMessage: string): void; _checkForNewLeagueConfirmation(): void; /** * Show confirmation dialog after creating a new league * @param {Object} newLeague - The newly created league object */ _showNewLeagueConfirmationDialog(newLeague: Object, originalData: any): void; _handleNewLeague(): void; _handleCopyLeague(): void; _handleEditLeagueRules(): void; _handleDeleteLeague(): void; _handleAddMatch(): void; _handleEditMatch(matchIdContainer: any): void; openMatchModal(matchData: any, teams: any, mode?: string): void; closeMatchModal(): void; /** * Renders only the match modal without affecting the rest of the component * @private */ private _renderMatchModal; openTeamModal(teamData: any, mode?: string, options?: {}): void; closeTeamModal(): void; _setupResizer(): void; _updateAttentionPanel(leagueToUse: any): void; _handleAdminAttentionMatchClickBound: ((e: any) => void) | undefined; _updateSchedulePanel(leagueToUse: any): void; _handleAdminScheduleEventBound: ((e: any) => void) | undefined; _updateDashboardPanel(leagueToUse: any): void; _handleAdminAttentionMatchClick(e: any): void; _handleAdminScheduleEvent(e: any): void; _handleTeamSelect(team: any): void; _createAndAppendTeamActions(actionsContainer: any, team: any): void; setupMatrixEventListeners(): void; } //# sourceMappingURL=leagueAdminElement.d.ts.map