From 9c5355a300e4a2139d12f3ff9a60e5415c00e38f Mon Sep 17 00:00:00 2001 From: CroogQT Date: Fri, 6 May 2022 11:43:18 -0700 Subject: [PATCH] added JSDoc comments --- .../src/buttons/selectMultiple.ts | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/netbox/project-static/src/buttons/selectMultiple.ts b/netbox/project-static/src/buttons/selectMultiple.ts index 8a5d2aabb..d05c21716 100644 --- a/netbox/project-static/src/buttons/selectMultiple.ts +++ b/netbox/project-static/src/buttons/selectMultiple.ts @@ -4,10 +4,20 @@ import { previousPkCheckState } from '../stores'; type PreviousPkCheckState = { element: Nullable }; +/** + * If there is a text selection, removes it. + */ function removeTextSelection(): void { window.getSelection()?.removeAllRanges(); } +/** + * Sets the state object passed in to the eventTargetElement object passed in. + * + * @param eventTargetElement HTML Input Element, retrieved from getting the target of the + * event passed in from handlePkCheck() + * @param state PreviousPkCheckState object. + */ function updatePreviousPkCheckState( eventTargetElement: HTMLInputElement, state: StateManager, @@ -15,6 +25,14 @@ function updatePreviousPkCheckState( state.set('element', eventTargetElement); } +/** + * For all checkboxes between eventTargetElement and previousStateElement in elementList, toggle + * "checked" value to eventTargetElement.checked + * + * @param eventTargetElement HTML Input Element, retrieved from getting the target of the + * event passed in from handlePkCheck() + * @param state PreviousPkCheckState object. + */ function toggleCheckboxRange( eventTargetElement: HTMLInputElement, previousStateElement: HTMLInputElement, @@ -47,6 +65,14 @@ function toggleCheckboxRange( } } + +/** + * IF the shift key is pressed and there is state is not null, toggleCheckboxRange between the + * event target element and the state element. + * + * @param event Mouse event. + * @param state PreviousPkCheckState object. + */ function handlePkCheck(event: MouseEvent, state: StateManager): void { const eventTargetElement = event.target as HTMLInputElement; const previousStateElement = state.get('element'); @@ -64,6 +90,9 @@ function handlePkCheck(event: MouseEvent, state: StateManager('input[type="checkbox"][name="pk"]'); for (const element of checkboxElements) {