-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathutils.js
More file actions
47 lines (40 loc) · 1.39 KB
/
Copy pathutils.js
File metadata and controls
47 lines (40 loc) · 1.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
export function randomChar(min, max){
return Math.floor(Math.random() * (max - min + 1)) + min
}
export function randomWord(arr){
return arr[Math.floor(Math.random() * arr.length)]
}
// Preset template
export function presetConstuctor(preset, inputs, pass, ul){
if(preset.length === 3){
const draggbleElements = document.querySelectorAll('.add-pass-elem')
let [p1, p2, p3] = preset
let [lenOfpass, ...arr] = p1;
for(let i = 0; i < inputs.length; i++){
inputs[i].checked = arr[i]
}
// Find all indexes of button values w/ pattern values
// find diff between arrays.length
let difference = p2.length - [...draggbleElements].length
let arrFromNode = [...draggbleElements]
for(let u = 0; u < difference; u++){ arrFromNode.push('') }
let indexs = arrFromNode.map((elem, indx) => [...draggbleElements].findIndex(el => el.value === p2[indx])).filter(el => el >= 0)
ul.innerHTML = ''
// click on right buttons + add pattern values
for(let p = 0; p < indexs.length; p++){
draggbleElements[indexs[p]].click()
ul.lastChild.children[1].value = p3[p]
}
pass.value = Math.floor(lenOfpass);
return
}
let [lenOfpass, ...arr] = preset;
for(let i = 0; i < inputs.length; i++){
inputs[i].checked = arr[i]
}
pass.value = Math.floor(lenOfpass);
}
export function arrayOfSymbolNames(){
let arr = ['Digit', 'Upper', 'Lower', 'Special', 'Word']
return arr
}