import ArmorSet from '../../searcher/models/ArmorSet' import SearchConstraints from '../../searcher/models/SearchConstraints' import StaticSkillData from '../../data-provider/models/skills/StaticSkillData' import UserEquipmentSettings from '../../data-provider/models/user/UserEquipmentSettings' import { htmlToElement } from '../../helper/html.helper' import SkillActivation from '../../data-provider/models/skills/SkillActivation' import SkillActivationMap from '../../data-provider/models/skills/SkillActivationMap' import { addExclusion, addPin, removeExlusion, removePin } from './eq-settings.component' export function * moreSkillsIterator (skillActivations: SkillActivationMap) { const rContainer = clearAndGetResultsContainer() const countDiv = document.createElement('div') rContainer.appendChild(countDiv) const totalActCount = Array.from(skillActivations.values()) .reduce((sum, c) => sum + c.length, 0) for (let i = 0; i < totalActCount; i++) { countDiv.innerHTML = `Checked ${i} possible skills ...` yield i } } const onSetClick = (tbNode: Node, viewGetter: () => Node) => { const children = tbNode.childNodes const finalNode = children[children.length - 1] as HTMLTableRowElement // toggle if details have already been rendered if (finalNode.classList.contains('result-set-details')) { finalNode.classList.toggle('hidden') return } // render and append them otherwise tbNode.appendChild(viewGetter()) } const PINS_OR_EXCL_ACTIVE_BANNER = htmlToElement(`