mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-23 04:22:01 -06:00
various punctuation and spacing fixes
This commit is contained in:
parent
90d8395a2c
commit
491a4e7d78
@ -4,36 +4,43 @@ import { previousPkCheckState } from '../stores';
|
|||||||
|
|
||||||
type PreviousPkCheckState = { element: Nullable<HTMLInputElement> };
|
type PreviousPkCheckState = { element: Nullable<HTMLInputElement> };
|
||||||
|
|
||||||
function removeTextSelection(): void{
|
function removeTextSelection(): void {
|
||||||
window.getSelection()?.removeAllRanges();
|
window.getSelection()?.removeAllRanges();
|
||||||
}
|
}
|
||||||
|
|
||||||
function updatePreviousPkCheckState(eventTargetElement: HTMLInputElement, state: StateManager<PreviousPkCheckState>): void {
|
function updatePreviousPkCheckState(
|
||||||
|
eventTargetElement: HTMLInputElement,
|
||||||
|
state: StateManager<PreviousPkCheckState>,
|
||||||
|
): void {
|
||||||
state.set('element', eventTargetElement);
|
state.set('element', eventTargetElement);
|
||||||
}
|
}
|
||||||
|
|
||||||
function toggleCheckboxRange(eventTargetElement: HTMLInputElement, previousStateElement: HTMLInputElement, elementList: Generator): void{
|
function toggleCheckboxRange(
|
||||||
let changePkCheckboxState = false
|
eventTargetElement: HTMLInputElement,
|
||||||
for(const element of elementList){
|
previousStateElement: HTMLInputElement,
|
||||||
const typedElement = element as HTMLInputElement
|
elementList: Generator,
|
||||||
|
): void {
|
||||||
|
let changePkCheckboxState = false;
|
||||||
|
for (const element of elementList) {
|
||||||
|
const typedElement = element as HTMLInputElement;
|
||||||
//Change loop's current checkbox state to eventTargetElement checkbox state
|
//Change loop's current checkbox state to eventTargetElement checkbox state
|
||||||
if(changePkCheckboxState === true){
|
if (changePkCheckboxState === true) {
|
||||||
typedElement.checked = eventTargetElement.checked;
|
typedElement.checked = eventTargetElement.checked;
|
||||||
}
|
}
|
||||||
//The previously clicked checkbox was above the shift clicked checkbox
|
//The previously clicked checkbox was above the shift clicked checkbox
|
||||||
if(element === previousStateElement){
|
if (element === previousStateElement) {
|
||||||
if(changePkCheckboxState === true){
|
if (changePkCheckboxState === true) {
|
||||||
changePkCheckboxState = false;
|
changePkCheckboxState = false;
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
changePkCheckboxState = true;
|
changePkCheckboxState = true;
|
||||||
typedElement.checked = eventTargetElement.checked;
|
typedElement.checked = eventTargetElement.checked;
|
||||||
}
|
}
|
||||||
//The previously clicked checkbox was below the shift clicked checkbox
|
//The previously clicked checkbox was below the shift clicked checkbox
|
||||||
if(element === eventTargetElement){
|
if (element === eventTargetElement) {
|
||||||
if(changePkCheckboxState === true){
|
if (changePkCheckboxState === true) {
|
||||||
changePkCheckboxState = false
|
changePkCheckboxState = false;
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
changePkCheckboxState = true;
|
changePkCheckboxState = true;
|
||||||
}
|
}
|
||||||
@ -45,8 +52,8 @@ function handlePkCheck(event: MouseEvent, state: StateManager<PreviousPkCheckSta
|
|||||||
const previousStateElement = state.get('element');
|
const previousStateElement = state.get('element');
|
||||||
updatePreviousPkCheckState(eventTargetElement, state);
|
updatePreviousPkCheckState(eventTargetElement, state);
|
||||||
//Stop if user is not holding shift key
|
//Stop if user is not holding shift key
|
||||||
if(!event.shiftKey){
|
if (!event.shiftKey) {
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
removeTextSelection();
|
removeTextSelection();
|
||||||
//If no previous state, store event target element as previous state and return
|
//If no previous state, store event target element as previous state and return
|
||||||
@ -54,14 +61,14 @@ function handlePkCheck(event: MouseEvent, state: StateManager<PreviousPkCheckSta
|
|||||||
return updatePreviousPkCheckState(eventTargetElement, state);
|
return updatePreviousPkCheckState(eventTargetElement, state);
|
||||||
}
|
}
|
||||||
const checkboxList = getElements<HTMLInputElement>('input[type="checkbox"][name="pk"]');
|
const checkboxList = getElements<HTMLInputElement>('input[type="checkbox"][name="pk"]');
|
||||||
toggleCheckboxRange(eventTargetElement, previousStateElement, checkboxList)
|
toggleCheckboxRange(eventTargetElement, previousStateElement, checkboxList);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function initSelectMultiple(): void {
|
export function initSelectMultiple(): void {
|
||||||
const checkboxElements = getElements<HTMLInputElement>('input[type="checkbox"][name="pk"]');
|
const checkboxElements = getElements<HTMLInputElement>('input[type="checkbox"][name="pk"]');
|
||||||
for (const element of checkboxElements) {
|
for (const element of checkboxElements) {
|
||||||
element.addEventListener('click', (event) => {
|
element.addEventListener('click', event => {
|
||||||
removeTextSelection()
|
removeTextSelection();
|
||||||
//Stop propogation to avoid event firing multiple times
|
//Stop propogation to avoid event firing multiple times
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
handlePkCheck(event, previousPkCheckState);
|
handlePkCheck(event, previousPkCheckState);
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
export * from './objectDepth';
|
export * from './objectDepth';
|
||||||
export * from './rackImages';
|
export * from './rackImages';
|
||||||
export * from './previousPkCheck';
|
export * from './previousPkCheck';
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import { createState } from '../state';
|
import { createState } from '../state';
|
||||||
|
|
||||||
export const previousPkCheckState = createState<{ element: Nullable<HTMLInputElement> }>(
|
export const previousPkCheckState = createState<{ element: Nullable<HTMLInputElement> }>(
|
||||||
{ element: null},
|
{ element: null },
|
||||||
{ persist: false }
|
{ persist: false },
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user