Przeglądaj źródła

clicking a PkCheckbox updates state

CroogQT 3 lat temu
rodzic
commit
db142061ff

Plik diff jest za duży
+ 0 - 0
netbox/project-static/dist/netbox.js


Plik diff jest za duży
+ 0 - 0
netbox/project-static/dist/netbox.js.map


+ 18 - 2
netbox/project-static/src/buttons/selectMultiple.ts

@@ -1,5 +1,21 @@
-import { getElement, getElements, findFirstAdjacent } from '../util';
+import { getElements } from '../util';
+import { StateManager } from 'src/state';
+import { previousPkCheckState } from '../stores';
 
 
-export function initSelectMultiple(): void {
+type PreviousPkCheckState = { element: Nullable<HTMLInputElement> };
+
+function updatePreviousPkCheckState(eventTargetElement: HTMLInputElement, state: StateManager<PreviousPkCheckState>): void {
+  console.log(state)
+  state.set('element', eventTargetElement);
 }
 }
 
 
+
+export function initSelectMultiple(): void {
+  const checkboxElements = getElements<HTMLInputElement>('input[type="checkbox"][name="pk"]');
+  for (const element of checkboxElements) {
+    element.addEventListener('click', (event) => {
+      event.stopPropagation();
+      updatePreviousPkCheckState(event.target as HTMLInputElement, previousPkCheckState);
+    });
+  }
+}

+ 3 - 3
netbox/project-static/src/stores/previousPkCheck.ts

@@ -1,7 +1,7 @@
 import { createState } from '../state';
 import { createState } from '../state';
 
 
-export const previousPKCheckState = createState<{ hidden: boolean }>(
-  { hidden: false },
-  { persist: false },
+export const previousPkCheckState = createState<{ element: Nullable<HTMLInputElement> }>(
+  { element: null},
+  { persist: false }
 );
 );
 
 

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików