@tanstack/hotkeys-devtools 0.5.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanel.js","names":["For","Show","createMemo","clsx","formatForDisplay","formatHotkeySequence","useStyles","useHotkeysDevtoolsState","effectiveSequenceMatchedSteps","ActionButtons","ConflictBehavior","HotkeyRegistration","HotkeySequence","SequenceRegistrationView","sequenceKey","sequence","Array","join","isSequenceRegistration","reg","isArray","DetailsPanelProps","selectedRegistration","getTargetDescription","target","HTMLElement","Document","Window","document","window","tag","tagName","toLowerCase","id","cls","className","split","findTargetConflicts","registration","all","filter","other","hotkey","options","eventType","findScopeConflicts","findSequenceTargetConflicts","findSequenceScopeConflicts","getConflictItemStyle","behavior","isSameTarget","getConflictLabel","HotkeyDetails","props","state","ReturnType","t","r","b","same","styles","parsed","parsedHotkey","targetConflicts","registrations","scopeConflicts","allConflicts","conflictBehavior","keyParts","parts","p","ctrl","push","shift","alt","meta","key","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_el$4","_el$5","_el$6","_el$7","_el$8","_el$9","_$insert","_$effect","_p$","_v$","stateHeader","_v$2","stateTitle","_v$3","infoGrid","_v$4","infoLabel","_v$5","infoValueMono","_v$6","_v$7","_v$8","_v$9","e","_$className","a","o","i","n","s","h","undefined","_el$0","_tmpl$3","_el$1","_el$10","_el$11","_el$12","_el$13","_el$14","_el$15","_el$16","_el$17","_el$18","_el$19","_el$20","_el$21","_el$22","_el$23","_el$24","_el$25","_el$26","_el$27","_el$28","_el$29","_el$30","_el$31","_el$32","_el$33","_el$34","_el$35","_el$36","_el$37","_el$38","_el$39","_el$40","_$createComponent","each","children","part","when","_el$47","_tmpl$4","keyBreakdownPlus","_el$48","_tmpl$5","keyCapLarge","String","enabled","preventDefault","stopPropagation","ignoreInputs","requireReset","hasFired","length","_el$41","_tmpl$2","_el$42","_el$43","_el$45","_el$44","_el$46","conflict","itemStyle","label","_el$49","_tmpl$6","_el$50","_el$51","_el$57","_el$52","_el$58","_el$54","_el$59","_el$55","_el$60","_tmpl$7","_el$61","_el$62","_el$68","_el$63","_el$69","_el$65","_el$70","_el$66","conflictItemScope","_v$0","detailSection","_v$1","detailSectionHeader","_v$10","conflictList","_v$11","detailsGrid","_v$12","_v$13","_v$14","keyBreakdown","_v$15","_v$16","_v$17","_v$18","_v$19","optionRow","_v$20","optionLabel","_v$21","optionValueTrue","optionValueFalse","_v$22","_v$23","_v$24","optionValue","_v$25","_v$26","_v$27","_v$28","_v$29","_v$30","_v$31","_v$32","_v$33","_v$34","_v$35","_v$36","_v$37","_v$38","_v$39","_v$40","_v$41","_v$42","d","l","u","c","w","m","f","y","g","T","A","O","I","S","W","C","B","v","k","x","j","SequenceDetails","seq","liveReg","sequenceRegistrations","find","matchedSteps","sequenceProgressNow","_el$71","_tmpl$8","_el$72","_el$73","_el$74","_el$75","_el$76","_el$77","_el$78","_el$79","step","_el$117","_tmpl$0","_el$118","sequenceStepMatched","_el$119","_el$120","_v$43","_v$44","_v$45","_v$46","_v$47","_v$48","_v$49","_v$50","_v$51","_el$80","_tmpl$9","_el$81","_el$82","_el$83","_el$84","_el$85","_el$86","_el$87","_el$88","_el$89","_el$90","_el$91","_el$92","_el$93","_el$94","_el$95","_el$96","_el$97","_el$98","_el$99","_el$100","_el$101","_el$102","_el$103","_el$104","_el$105","_el$106","_el$107","_el$108","_el$109","_el$110","_el$121","_tmpl$1","_el$122","keyCapLargeInProgress","timeout","_el$111","_el$112","_el$113","_el$115","_el$114","_el$116","_el$123","_el$124","_el$125","_el$131","_el$126","_el$132","_el$128","_el$133","_el$129","_el$134","_el$135","_el$136","_el$142","_el$137","_el$143","_el$139","_el$144","_el$140","_v$52","_v$53","_v$54","_v$55","_v$56","_v$57","_v$58","_v$59","_v$60","_v$61","_v$62","_v$63","_v$64","_v$65","_v$66","_v$67","_v$68","_v$69","_v$70","_v$71","_v$72","_v$73","_v$74","_v$75","_v$76","_v$77","_v$78","_v$79","_v$80","_v$81","_v$82","_v$83","DetailsPanel","_el$145","_tmpl$10","fallback","_el$146","_tmpl$11","noSelection","stateDetails"],"sources":["../../src/components/DetailsPanel.tsx"],"sourcesContent":["import { For, Show, createMemo } from 'solid-js'\nimport clsx from 'clsx'\nimport { formatForDisplay, formatHotkeySequence } from '@tanstack/hotkeys'\nimport { useStyles } from '../styles/use-styles'\nimport { useHotkeysDevtoolsState } from '../HotkeysContextProvider'\nimport { effectiveSequenceMatchedSteps } from '../sequence-progress'\nimport { ActionButtons } from './ActionButtons'\nimport type {\n ConflictBehavior,\n HotkeyRegistration,\n HotkeySequence,\n SequenceRegistrationView,\n} from '@tanstack/hotkeys'\n\nfunction sequenceKey(sequence: Array<string>): string {\n return sequence.join('|')\n}\n\nfunction isSequenceRegistration(\n reg: HotkeyRegistration | SequenceRegistrationView,\n): reg is SequenceRegistrationView {\n return 'sequence' in reg && Array.isArray(reg.sequence)\n}\n\ntype DetailsPanelProps = {\n selectedRegistration: () =>\n | HotkeyRegistration\n | SequenceRegistrationView\n | null\n}\n\nfunction getTargetDescription(target: HTMLElement | Document | Window): string {\n if (typeof document !== 'undefined' && target === document) {\n return 'document'\n }\n if (typeof window !== 'undefined' && target === window) {\n return 'window'\n }\n if (target instanceof HTMLElement) {\n const tag = target.tagName.toLowerCase()\n const id = target.id ? `#${target.id}` : ''\n const cls = target.className\n ? `.${target.className.split(' ').join('.')}`\n : ''\n return `${tag}${id}${cls}`\n }\n return 'element'\n}\n\nfunction findTargetConflicts(\n registration: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n): Array<HotkeyRegistration> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n other.hotkey === registration.hotkey &&\n other.options.eventType === registration.options.eventType &&\n other.target === registration.target,\n )\n}\n\nfunction findScopeConflicts(\n registration: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n): Array<HotkeyRegistration> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n other.hotkey === registration.hotkey &&\n other.options.eventType === registration.options.eventType &&\n other.target !== registration.target,\n )\n}\n\nfunction findSequenceTargetConflicts(\n registration: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n): Array<SequenceRegistrationView> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n sequenceKey(other.sequence) === sequenceKey(registration.sequence) &&\n other.options.eventType === registration.options.eventType &&\n other.target === registration.target,\n )\n}\n\nfunction findSequenceScopeConflicts(\n registration: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n): Array<SequenceRegistrationView> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n sequenceKey(other.sequence) === sequenceKey(registration.sequence) &&\n other.options.eventType === registration.options.eventType &&\n other.target !== registration.target,\n )\n}\n\nfunction getConflictItemStyle(\n behavior: ConflictBehavior,\n isSameTarget: boolean,\n):\n | 'conflictItem'\n | 'conflictItemAllow'\n | 'conflictItemError'\n | 'conflictItemScope' {\n if (!isSameTarget) return 'conflictItemScope'\n if (behavior === 'allow') return 'conflictItemAllow'\n if (behavior === 'error') return 'conflictItemError'\n return 'conflictItem'\n}\n\nfunction getConflictLabel(\n behavior: ConflictBehavior,\n isSameTarget: boolean,\n): string {\n if (!isSameTarget) return 'scope'\n if (behavior === 'allow') return 'allowed'\n if (behavior === 'error') return 'error'\n if (behavior === 'replace') return 'replaced'\n return 'warning'\n}\n\nfunction HotkeyDetails(props: {\n registration: HotkeyRegistration\n state: ReturnType<typeof useHotkeysDevtoolsState>\n getTargetDescription: (t: HTMLElement | Document | Window) => string\n findTargetConflicts: (\n r: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n ) => Array<HotkeyRegistration>\n findScopeConflicts: (\n r: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n ) => Array<HotkeyRegistration>\n getConflictItemStyle: (\n b: ConflictBehavior,\n same: boolean,\n ) =>\n | 'conflictItem'\n | 'conflictItemAllow'\n | 'conflictItemError'\n | 'conflictItemScope'\n getConflictLabel: (b: ConflictBehavior, same: boolean) => string\n formatForDisplay: (hotkey: string) => string\n styles: ReturnType<typeof useStyles>\n}) {\n const reg = () => props.registration\n const parsed = () => reg().parsedHotkey\n const targetConflicts = createMemo(() =>\n props.findTargetConflicts(reg(), props.state.registrations()),\n )\n const scopeConflicts = createMemo(() =>\n props.findScopeConflicts(reg(), props.state.registrations()),\n )\n const allConflicts = createMemo(() => [\n ...targetConflicts(),\n ...scopeConflicts(),\n ])\n const conflictBehavior = (): ConflictBehavior =>\n reg().options.conflictBehavior ?? 'warn'\n\n const keyParts = createMemo(() => {\n const parts: Array<string> = []\n const p = parsed()\n if (p.ctrl) parts.push('Ctrl')\n if (p.shift) parts.push('Shift')\n if (p.alt) parts.push('Alt')\n if (p.meta) parts.push('Meta')\n parts.push(p.key)\n return parts\n })\n\n const styles = props.styles\n\n return (\n <>\n <div class={styles().stateHeader}>\n <div class={styles().stateTitle}>\n {props.formatForDisplay(reg().hotkey)}\n </div>\n <div class={styles().infoGrid}>\n <div class={styles().infoLabel}>ID</div>\n <div class={styles().infoValueMono}>{reg().id}</div>\n <div class={styles().infoLabel}>Raw</div>\n <div class={styles().infoValueMono}>{reg().hotkey}</div>\n <div class={styles().infoLabel}>Target</div>\n <div class={styles().infoValueMono}>\n {props.getTargetDescription(reg().target)}\n </div>\n </div>\n </div>\n\n <div class={styles().detailsGrid}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Key Breakdown</div>\n <div class={styles().keyBreakdown}>\n <For each={keyParts()}>\n {(part, i) => (\n <>\n <Show when={i() > 0}>\n <span class={styles().keyBreakdownPlus}>+</span>\n </Show>\n <span class={styles().keyCapLarge}>{part}</span>\n </>\n )}\n </For>\n </div>\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Actions</div>\n <ActionButtons registration={reg()} />\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Options</div>\n <div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>enabled</span>\n <span\n class={\n reg().options.enabled !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(reg().options.enabled !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>eventType</span>\n <span class={styles().optionValue}>\n {reg().options.eventType ?? 'keydown'}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>preventDefault</span>\n <span\n class={\n reg().options.preventDefault\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!reg().options.preventDefault)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>stopPropagation</span>\n <span\n class={\n reg().options.stopPropagation\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!reg().options.stopPropagation)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>ignoreInputs</span>\n <span\n class={\n reg().options.ignoreInputs !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(reg().options.ignoreInputs !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>requireReset</span>\n <span\n class={\n reg().options.requireReset\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!reg().options.requireReset)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>conflictBehavior</span>\n <span class={styles().optionValue}>{conflictBehavior()}</span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>hasFired</span>\n <span\n class={\n reg().hasFired\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(reg().hasFired)}\n </span>\n </div>\n </div>\n </div>\n\n <Show when={allConflicts().length > 0}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>\n Conflicts ({allConflicts().length})\n </div>\n <div class={styles().conflictList}>\n <For each={targetConflicts()}>\n {(conflict) => {\n const itemStyle = () =>\n props.getConflictItemStyle(conflictBehavior(), true)\n const label = () =>\n props.getConflictLabel(conflictBehavior(), true)\n return (\n <div class={styles()[itemStyle()]}>\n <span>{label()}</span> {conflict.id}:{' '}\n {props.formatForDisplay(conflict.hotkey)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )\n }}\n </For>\n <For each={scopeConflicts()}>\n {(conflict) => (\n <div class={styles().conflictItemScope}>\n <span>scope</span> {conflict.id}:{' '}\n {props.formatForDisplay(conflict.hotkey)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )}\n </For>\n </div>\n </div>\n </Show>\n </div>\n </>\n )\n}\n\nfunction SequenceDetails(props: {\n registration: SequenceRegistrationView\n state: ReturnType<typeof useHotkeysDevtoolsState>\n getTargetDescription: (t: HTMLElement | Document | Window) => string\n findSequenceTargetConflicts: (\n r: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n ) => Array<SequenceRegistrationView>\n findSequenceScopeConflicts: (\n r: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n ) => Array<SequenceRegistrationView>\n getConflictItemStyle: (\n b: ConflictBehavior,\n same: boolean,\n ) =>\n | 'conflictItem'\n | 'conflictItemAllow'\n | 'conflictItemError'\n | 'conflictItemScope'\n getConflictLabel: (b: ConflictBehavior, same: boolean) => string\n formatHotkeySequence: (seq: HotkeySequence) => string\n formatForDisplay: (hotkey: string) => string\n styles: ReturnType<typeof useStyles>\n}) {\n const reg = () => props.registration\n const liveReg = createMemo(\n () =>\n props.state.sequenceRegistrations().find((r) => r.id === reg().id) ??\n reg(),\n )\n const matchedSteps = createMemo(() =>\n effectiveSequenceMatchedSteps(liveReg(), props.state.sequenceProgressNow()),\n )\n const targetConflicts = createMemo(() =>\n props.findSequenceTargetConflicts(\n liveReg(),\n props.state.sequenceRegistrations(),\n ),\n )\n const scopeConflicts = createMemo(() =>\n props.findSequenceScopeConflicts(\n liveReg(),\n props.state.sequenceRegistrations(),\n ),\n )\n const allConflicts = createMemo(() => [\n ...targetConflicts(),\n ...scopeConflicts(),\n ])\n const conflictBehavior = (): ConflictBehavior =>\n liveReg().options.conflictBehavior ?? 'warn'\n\n const styles = props.styles\n\n return (\n <>\n <div class={styles().stateHeader}>\n <div class={styles().stateTitle}>\n <For each={liveReg().sequence}>\n {(step, i) => (\n <span>\n <Show when={i() > 0}> </Show>\n <span\n class={\n i() < matchedSteps()\n ? styles().sequenceStepMatched\n : undefined\n }\n >\n {props.formatForDisplay(step)}\n </span>\n </span>\n )}\n </For>\n </div>\n <div class={styles().infoGrid}>\n <div class={styles().infoLabel}>ID</div>\n <div class={styles().infoValueMono}>{liveReg().id}</div>\n <div class={styles().infoLabel}>Sequence</div>\n <div class={styles().infoValueMono}>\n <For each={liveReg().sequence}>\n {(step, i) => (\n <span>\n <Show when={i() > 0}> </Show>\n <span\n class={\n i() < matchedSteps()\n ? styles().sequenceStepMatched\n : undefined\n }\n >\n {props.formatForDisplay(step)}\n </span>\n </span>\n )}\n </For>\n </div>\n <div class={styles().infoLabel}>Target</div>\n <div class={styles().infoValueMono}>\n {props.getTargetDescription(liveReg().target)}\n </div>\n </div>\n </div>\n\n <div class={styles().detailsGrid}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Key Breakdown</div>\n <div class={styles().keyBreakdown}>\n <For each={liveReg().sequence}>\n {(step, i) => (\n <>\n <Show when={i() > 0}>\n <span class={styles().keyBreakdownPlus}>→</span>\n </Show>\n <span\n class={clsx(\n styles().keyCapLarge,\n i() < matchedSteps() && styles().keyCapLargeInProgress,\n )}\n >\n {props.formatForDisplay(step)}\n </span>\n </>\n )}\n </For>\n </div>\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Actions</div>\n <ActionButtons registration={liveReg()} />\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Options</div>\n <div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>enabled</span>\n <span\n class={\n liveReg().options.enabled !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(liveReg().options.enabled !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>eventType</span>\n <span class={styles().optionValue}>\n {liveReg().options.eventType ?? 'keydown'}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>timeout</span>\n <span class={styles().optionValue}>\n {liveReg().options.timeout ?? 1000}ms\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>preventDefault</span>\n <span\n class={\n liveReg().options.preventDefault\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!liveReg().options.preventDefault)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>stopPropagation</span>\n <span\n class={\n liveReg().options.stopPropagation\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!liveReg().options.stopPropagation)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>ignoreInputs</span>\n <span\n class={\n liveReg().options.ignoreInputs !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(liveReg().options.ignoreInputs !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>conflictBehavior</span>\n <span class={styles().optionValue}>{conflictBehavior()}</span>\n </div>\n </div>\n </div>\n\n <Show when={allConflicts().length > 0}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>\n Conflicts ({allConflicts().length})\n </div>\n <div class={styles().conflictList}>\n <For each={targetConflicts()}>\n {(conflict) => {\n const itemStyle = () =>\n props.getConflictItemStyle(conflictBehavior(), true)\n const label = () =>\n props.getConflictLabel(conflictBehavior(), true)\n return (\n <div class={styles()[itemStyle()]}>\n <span>{label()}</span> {conflict.id}:{' '}\n {props.formatHotkeySequence(conflict.sequence)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )\n }}\n </For>\n <For each={scopeConflicts()}>\n {(conflict) => (\n <div class={styles().conflictItemScope}>\n <span>scope</span> {conflict.id}:{' '}\n {props.formatHotkeySequence(conflict.sequence)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )}\n </For>\n </div>\n </div>\n </Show>\n </div>\n </>\n )\n}\n\nexport function DetailsPanel(props: DetailsPanelProps) {\n const styles = useStyles()\n const state = useHotkeysDevtoolsState()\n\n return (\n <div class={styles().stateDetails}>\n <Show\n when={props.selectedRegistration()}\n fallback={\n <div class={styles().noSelection}>\n Select a hotkey or sequence from the list to view its details\n </div>\n }\n >\n {(reg) => (\n <Show\n when={isSequenceRegistration(reg())}\n fallback={\n <HotkeyDetails\n registration={reg() as HotkeyRegistration}\n state={state}\n getTargetDescription={getTargetDescription}\n findTargetConflicts={findTargetConflicts}\n findScopeConflicts={findScopeConflicts}\n getConflictItemStyle={getConflictItemStyle}\n getConflictLabel={getConflictLabel}\n formatForDisplay={formatForDisplay}\n styles={styles}\n />\n }\n >\n <SequenceDetails\n registration={reg() as SequenceRegistrationView}\n state={state}\n getTargetDescription={getTargetDescription}\n findSequenceTargetConflicts={findSequenceTargetConflicts}\n findSequenceScopeConflicts={findSequenceScopeConflicts}\n getConflictItemStyle={getConflictItemStyle}\n getConflictLabel={getConflictLabel}\n formatHotkeySequence={formatHotkeySequence}\n formatForDisplay={formatForDisplay}\n styles={styles}\n />\n </Show>\n )}\n </Show>\n </div>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"DetailsPanel.js","names":["For","Show","createMemo","clsx","detectPlatform","formatForDisplay","formatHotkeySequence","normalizeHotkey","normalizeHotkeyFromParsed","parseHotkey","useStyles","useHotkeysDevtoolsState","effectiveSequenceMatchedSteps","ActionButtons","ConflictBehavior","FormatDisplayOptions","HotkeyRegistration","HotkeySequence","ParsedHotkey","RegisterableHotkey","SequenceRegistrationView","PLATFORM_ROWS","id","const","label","KeyBreakdownPlatformTable","props","getParsed","getCanonicalPlatform","styles","ReturnType","st","_el$","_tmpl$","_$insert","_$createComponent","each","children","row","_el$2","_tmpl$2","_el$3","firstChild","_el$4","nextSibling","platform","_$effect","_p$","_v$","platformBreakdownRow","_v$2","platformBreakdownLabel","_v$3","platformBreakdownPretty","e","_$className","t","a","undefined","platformBreakdown","sequenceKey","sequence","Array","join","isSequenceRegistration","reg","isArray","DetailsPanelProps","selectedRegistration","getTargetDescription","target","HTMLElement","Document","Window","document","window","tag","tagName","toLowerCase","cls","className","split","findTargetConflicts","registration","all","filter","other","hotkey","options","eventType","findScopeConflicts","findSequenceTargetConflicts","findSequenceScopeConflicts","getConflictItemStyle","behavior","isSameTarget","getConflictLabel","HotkeyDetails","state","r","b","same","parsed","parsedHotkey","targetConflicts","registrations","scopeConflicts","allConflicts","conflictBehavior","registrationPlatform","rawModParts","_el$5","_tmpl$3","_el$6","_el$7","_el$8","_el$9","_el$0","_el$1","_el$10","_el$11","_v$4","stateHeader","_v$5","stateTitle","_v$6","infoGrid","_v$7","infoLabel","_v$8","infoValueMono","_v$9","_v$0","_v$1","_v$10","o","i","n","s","h","_el$12","_tmpl$5","_el$13","_el$14","_el$15","_el$16","_el$17","_el$18","_el$19","_el$20","_el$21","_el$22","_el$23","_el$24","_el$25","_el$26","_el$27","_el$28","_el$29","_el$30","_el$31","_el$32","_el$33","_el$34","_el$35","_el$36","_el$37","_el$38","_el$39","_el$40","_el$41","_el$42","_el$43","_el$44","_el$45","_el$46","_el$47","_el$48","part","when","_el$55","_tmpl$6","keyBreakdownPlus","_el$56","_tmpl$7","keyCapLarge","String","enabled","preventDefault","stopPropagation","ignoreInputs","requireReset","hasFired","length","_el$49","_tmpl$4","_el$50","_el$51","_el$53","_el$52","_el$54","conflict","itemStyle","_el$57","_tmpl$8","_el$58","_el$59","_el$65","_el$60","_el$66","_el$62","_el$67","_el$63","_el$68","_tmpl$9","_el$69","_el$70","_el$76","_el$71","_el$77","_el$73","_el$78","_el$74","conflictItemScope","_v$11","detailSection","_v$12","detailSectionHeader","_v$13","conflictList","_v$14","detailsGrid","_v$15","_v$16","_v$17","keyBreakdownSplitRow","_v$18","keyBreakdownSplitLeft","_v$19","keyBreakdown","_v$20","keyBreakdownSplitArrow","_v$21","keyBreakdownSplitRight","_v$22","_v$23","_v$24","_v$25","_v$26","optionRow","_v$27","optionLabel","_v$28","optionValueTrue","optionValueFalse","_v$29","_v$30","_v$31","optionValue","_v$32","_v$33","_v$34","_v$35","_v$36","_v$37","_v$38","_v$39","_v$40","_v$41","_v$42","_v$43","_v$44","_v$45","_v$46","_v$47","_v$48","_v$49","d","l","u","c","w","m","f","y","g","p","T","A","O","I","S","W","C","B","v","k","x","j","q","z","P","H","SequenceDetails","seq","liveReg","sequenceRegistrations","find","matchedSteps","sequenceProgressNow","sequenceCanonicalPlatform","_el$79","_tmpl$0","_el$80","_el$81","_el$82","_el$83","_el$84","_el$85","_el$86","_el$87","step","_el$126","_tmpl$10","_el$127","sequenceStepMatched","_el$128","_el$129","_v$50","_v$51","_v$52","_v$53","_v$54","_v$55","_v$56","_v$57","_v$58","_el$88","_tmpl$1","_el$89","_el$90","_el$91","_el$92","_el$93","_el$94","_el$95","_el$96","_el$97","_el$98","_el$99","_el$100","_el$101","_el$102","_el$103","_el$104","_el$105","_el$106","_el$107","_el$108","_el$109","_el$110","_el$111","_el$112","_el$113","_el$114","_el$115","_el$116","_el$117","_el$118","_el$119","_el$130","_tmpl$11","_el$131","keyCapLargeInProgress","stepIdx","stepParsed","stepRawParts","_el$132","_tmpl$12","_el$133","_el$134","_el$135","_el$136","_el$137","_el$138","_el$139","_el$140","_el$141","_v$92","sequenceChordDetail","_v$93","keyBreakdownSubHeader","_v$94","_v$95","_v$96","_v$97","_v$98","timeout","_el$120","_el$121","_el$122","_el$124","_el$123","_el$125","_el$142","_el$143","_el$144","_el$150","_el$145","_el$151","_el$147","_el$152","_el$148","_el$153","_el$154","_el$155","_el$161","_el$156","_el$162","_el$158","_el$163","_el$159","_v$59","_v$60","_v$61","_v$62","_v$63","_v$64","_v$65","_v$66","_v$67","_v$68","_v$69","_v$70","_v$71","_v$72","_v$73","_v$74","_v$75","_v$76","_v$77","_v$78","_v$79","_v$80","_v$81","_v$82","_v$83","_v$84","_v$85","_v$86","_v$87","_v$88","_v$89","_v$90","_v$91","DetailsPanel","_el$164","fallback","_el$165","_tmpl$13","noSelection","stateDetails"],"sources":["../../src/components/DetailsPanel.tsx"],"sourcesContent":["import { For, Show, createMemo } from 'solid-js'\nimport clsx from 'clsx'\nimport {\n detectPlatform,\n formatForDisplay,\n formatHotkeySequence,\n normalizeHotkey,\n normalizeHotkeyFromParsed,\n parseHotkey,\n} from '@tanstack/hotkeys'\nimport { useStyles } from '../styles/use-styles'\nimport { useHotkeysDevtoolsState } from '../HotkeysContextProvider'\nimport { effectiveSequenceMatchedSteps } from '../sequence-progress'\nimport { ActionButtons } from './ActionButtons'\nimport type {\n ConflictBehavior,\n FormatDisplayOptions,\n HotkeyRegistration,\n HotkeySequence,\n ParsedHotkey,\n RegisterableHotkey,\n SequenceRegistrationView,\n} from '@tanstack/hotkeys'\n\nconst PLATFORM_ROWS = [\n { id: 'mac' as const, label: 'macOS' },\n { id: 'windows' as const, label: 'Windows' },\n { id: 'linux' as const, label: 'Linux' },\n]\n\nfunction KeyBreakdownPlatformTable(props: {\n getParsed: () => ParsedHotkey\n /** Platform used when the parsed hotkey was produced (registration `options.platform`). */\n getCanonicalPlatform: () => 'mac' | 'windows' | 'linux'\n styles: ReturnType<typeof useStyles>\n}) {\n const st = () => props.styles()\n return (\n <div class={st().platformBreakdown}>\n <For each={PLATFORM_ROWS}>\n {(row) => (\n <div class={st().platformBreakdownRow}>\n <span class={st().platformBreakdownLabel}>{row.label}</span>\n <span class={st().platformBreakdownPretty}>\n {formatForDisplay(\n normalizeHotkeyFromParsed(\n props.getParsed(),\n props.getCanonicalPlatform(),\n ),\n {\n platform: row.id,\n },\n )}\n </span>\n </div>\n )}\n </For>\n </div>\n )\n}\n\nfunction sequenceKey(sequence: Array<string>): string {\n return sequence.join('|')\n}\n\nfunction isSequenceRegistration(\n reg: HotkeyRegistration | SequenceRegistrationView,\n): reg is SequenceRegistrationView {\n return 'sequence' in reg && Array.isArray(reg.sequence)\n}\n\ntype DetailsPanelProps = {\n selectedRegistration: () =>\n | HotkeyRegistration\n | SequenceRegistrationView\n | null\n}\n\nfunction getTargetDescription(target: HTMLElement | Document | Window): string {\n if (typeof document !== 'undefined' && target === document) {\n return 'document'\n }\n if (typeof window !== 'undefined' && target === window) {\n return 'window'\n }\n if (target instanceof HTMLElement) {\n const tag = target.tagName.toLowerCase()\n const id = target.id ? `#${target.id}` : ''\n const cls = target.className\n ? `.${target.className.split(' ').join('.')}`\n : ''\n return `${tag}${id}${cls}`\n }\n return 'element'\n}\n\nfunction findTargetConflicts(\n registration: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n): Array<HotkeyRegistration> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n other.hotkey === registration.hotkey &&\n other.options.eventType === registration.options.eventType &&\n other.target === registration.target,\n )\n}\n\nfunction findScopeConflicts(\n registration: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n): Array<HotkeyRegistration> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n other.hotkey === registration.hotkey &&\n other.options.eventType === registration.options.eventType &&\n other.target !== registration.target,\n )\n}\n\nfunction findSequenceTargetConflicts(\n registration: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n): Array<SequenceRegistrationView> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n sequenceKey(other.sequence) === sequenceKey(registration.sequence) &&\n other.options.eventType === registration.options.eventType &&\n other.target === registration.target,\n )\n}\n\nfunction findSequenceScopeConflicts(\n registration: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n): Array<SequenceRegistrationView> {\n return all.filter(\n (other) =>\n other.id !== registration.id &&\n sequenceKey(other.sequence) === sequenceKey(registration.sequence) &&\n other.options.eventType === registration.options.eventType &&\n other.target !== registration.target,\n )\n}\n\nfunction getConflictItemStyle(\n behavior: ConflictBehavior,\n isSameTarget: boolean,\n):\n | 'conflictItem'\n | 'conflictItemAllow'\n | 'conflictItemError'\n | 'conflictItemScope' {\n if (!isSameTarget) return 'conflictItemScope'\n if (behavior === 'allow') return 'conflictItemAllow'\n if (behavior === 'error') return 'conflictItemError'\n return 'conflictItem'\n}\n\nfunction getConflictLabel(\n behavior: ConflictBehavior,\n isSameTarget: boolean,\n): string {\n if (!isSameTarget) return 'scope'\n if (behavior === 'allow') return 'allowed'\n if (behavior === 'error') return 'error'\n if (behavior === 'replace') return 'replaced'\n return 'warning'\n}\n\nfunction HotkeyDetails(props: {\n registration: HotkeyRegistration\n state: ReturnType<typeof useHotkeysDevtoolsState>\n getTargetDescription: (t: HTMLElement | Document | Window) => string\n findTargetConflicts: (\n r: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n ) => Array<HotkeyRegistration>\n findScopeConflicts: (\n r: HotkeyRegistration,\n all: Array<HotkeyRegistration>,\n ) => Array<HotkeyRegistration>\n getConflictItemStyle: (\n b: ConflictBehavior,\n same: boolean,\n ) =>\n | 'conflictItem'\n | 'conflictItemAllow'\n | 'conflictItemError'\n | 'conflictItemScope'\n getConflictLabel: (b: ConflictBehavior, same: boolean) => string\n formatForDisplay: (\n hotkey: RegisterableHotkey,\n options?: FormatDisplayOptions,\n ) => string\n styles: ReturnType<typeof useStyles>\n}) {\n const reg = () => props.registration\n const parsed = () => reg().parsedHotkey\n const targetConflicts = createMemo(() =>\n props.findTargetConflicts(reg(), props.state.registrations()),\n )\n const scopeConflicts = createMemo(() =>\n props.findScopeConflicts(reg(), props.state.registrations()),\n )\n const allConflicts = createMemo(() => [\n ...targetConflicts(),\n ...scopeConflicts(),\n ])\n const conflictBehavior = (): ConflictBehavior =>\n reg().options.conflictBehavior ?? 'warn'\n\n const registrationPlatform = () => reg().options.platform ?? detectPlatform()\n\n const rawModParts = createMemo(() =>\n normalizeHotkeyFromParsed(parsed(), registrationPlatform()).split('+'),\n )\n\n const styles = props.styles\n\n return (\n <>\n <div class={styles().stateHeader}>\n <div class={styles().stateTitle}>\n {props.formatForDisplay(reg().hotkey)}\n </div>\n <div class={styles().infoGrid}>\n <div class={styles().infoLabel}>ID</div>\n <div class={styles().infoValueMono}>{reg().id}</div>\n <div class={styles().infoLabel}>Raw</div>\n <div class={styles().infoValueMono}>{reg().hotkey}</div>\n <div class={styles().infoLabel}>Target</div>\n <div class={styles().infoValueMono}>\n {props.getTargetDescription(reg().target)}\n </div>\n </div>\n </div>\n\n <div class={styles().detailsGrid}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Key Breakdown</div>\n <div class={styles().keyBreakdownSplitRow}>\n <div class={styles().keyBreakdownSplitLeft}>\n <div class={styles().keyBreakdown}>\n <For each={rawModParts()}>\n {(part, i) => (\n <>\n <Show when={i() > 0}>\n <span class={styles().keyBreakdownPlus}>+</span>\n </Show>\n <span class={styles().keyCapLarge}>{part}</span>\n </>\n )}\n </For>\n </div>\n </div>\n <span class={styles().keyBreakdownSplitArrow} aria-hidden=\"true\">\n {'->'}\n </span>\n <div class={styles().keyBreakdownSplitRight}>\n <KeyBreakdownPlatformTable\n getParsed={() => parsed()}\n getCanonicalPlatform={registrationPlatform}\n styles={props.styles}\n />\n </div>\n </div>\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Actions</div>\n <ActionButtons registration={reg()} />\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Options</div>\n <div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>enabled</span>\n <span\n class={\n reg().options.enabled !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(reg().options.enabled !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>eventType</span>\n <span class={styles().optionValue}>\n {reg().options.eventType ?? 'keydown'}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>preventDefault</span>\n <span\n class={\n reg().options.preventDefault\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!reg().options.preventDefault)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>stopPropagation</span>\n <span\n class={\n reg().options.stopPropagation\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!reg().options.stopPropagation)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>ignoreInputs</span>\n <span\n class={\n reg().options.ignoreInputs !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(reg().options.ignoreInputs !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>requireReset</span>\n <span\n class={\n reg().options.requireReset\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!reg().options.requireReset)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>conflictBehavior</span>\n <span class={styles().optionValue}>{conflictBehavior()}</span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>hasFired</span>\n <span\n class={\n reg().hasFired\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(reg().hasFired)}\n </span>\n </div>\n </div>\n </div>\n\n <Show when={allConflicts().length > 0}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>\n Conflicts ({allConflicts().length})\n </div>\n <div class={styles().conflictList}>\n <For each={targetConflicts()}>\n {(conflict) => {\n const itemStyle = () =>\n props.getConflictItemStyle(conflictBehavior(), true)\n const label = () =>\n props.getConflictLabel(conflictBehavior(), true)\n return (\n <div class={styles()[itemStyle()]}>\n <span>{label()}</span> {conflict.id}:{' '}\n {props.formatForDisplay(conflict.hotkey)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )\n }}\n </For>\n <For each={scopeConflicts()}>\n {(conflict) => (\n <div class={styles().conflictItemScope}>\n <span>scope</span> {conflict.id}:{' '}\n {props.formatForDisplay(conflict.hotkey)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )}\n </For>\n </div>\n </div>\n </Show>\n </div>\n </>\n )\n}\n\nfunction SequenceDetails(props: {\n registration: SequenceRegistrationView\n state: ReturnType<typeof useHotkeysDevtoolsState>\n getTargetDescription: (t: HTMLElement | Document | Window) => string\n findSequenceTargetConflicts: (\n r: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n ) => Array<SequenceRegistrationView>\n findSequenceScopeConflicts: (\n r: SequenceRegistrationView,\n all: Array<SequenceRegistrationView>,\n ) => Array<SequenceRegistrationView>\n getConflictItemStyle: (\n b: ConflictBehavior,\n same: boolean,\n ) =>\n | 'conflictItem'\n | 'conflictItemAllow'\n | 'conflictItemError'\n | 'conflictItemScope'\n getConflictLabel: (b: ConflictBehavior, same: boolean) => string\n formatHotkeySequence: (seq: HotkeySequence) => string\n formatForDisplay: (\n hotkey: RegisterableHotkey,\n options?: FormatDisplayOptions,\n ) => string\n styles: ReturnType<typeof useStyles>\n}) {\n const reg = () => props.registration\n const liveReg = createMemo(\n () =>\n props.state.sequenceRegistrations().find((r) => r.id === reg().id) ??\n reg(),\n )\n const matchedSteps = createMemo(() =>\n effectiveSequenceMatchedSteps(liveReg(), props.state.sequenceProgressNow()),\n )\n const targetConflicts = createMemo(() =>\n props.findSequenceTargetConflicts(\n liveReg(),\n props.state.sequenceRegistrations(),\n ),\n )\n const scopeConflicts = createMemo(() =>\n props.findSequenceScopeConflicts(\n liveReg(),\n props.state.sequenceRegistrations(),\n ),\n )\n const allConflicts = createMemo(() => [\n ...targetConflicts(),\n ...scopeConflicts(),\n ])\n const conflictBehavior = (): ConflictBehavior =>\n liveReg().options.conflictBehavior ?? 'warn'\n\n const sequenceCanonicalPlatform = createMemo(\n () => liveReg().options.platform ?? detectPlatform(),\n )\n\n const styles = props.styles\n\n return (\n <>\n <div class={styles().stateHeader}>\n <div class={styles().stateTitle}>\n <For each={liveReg().sequence}>\n {(step, i) => (\n <span>\n <Show when={i() > 0}> </Show>\n <span\n class={\n i() < matchedSteps()\n ? styles().sequenceStepMatched\n : undefined\n }\n >\n {props.formatForDisplay(step)}\n </span>\n </span>\n )}\n </For>\n </div>\n <div class={styles().infoGrid}>\n <div class={styles().infoLabel}>ID</div>\n <div class={styles().infoValueMono}>{liveReg().id}</div>\n <div class={styles().infoLabel}>Sequence</div>\n <div class={styles().infoValueMono}>\n <For each={liveReg().sequence}>\n {(step, i) => (\n <span>\n <Show when={i() > 0}> </Show>\n <span\n class={\n i() < matchedSteps()\n ? styles().sequenceStepMatched\n : undefined\n }\n >\n {props.formatForDisplay(step)}\n </span>\n </span>\n )}\n </For>\n </div>\n <div class={styles().infoLabel}>Target</div>\n <div class={styles().infoValueMono}>\n {props.getTargetDescription(liveReg().target)}\n </div>\n </div>\n </div>\n\n <div class={styles().detailsGrid}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Key Breakdown</div>\n <div class={styles().keyBreakdown}>\n <For each={liveReg().sequence}>\n {(step, i) => (\n <>\n <Show when={i() > 0}>\n <span class={styles().keyBreakdownPlus}>→</span>\n </Show>\n <span\n class={clsx(\n styles().keyCapLarge,\n i() < matchedSteps() && styles().keyCapLargeInProgress,\n )}\n >\n {props.formatForDisplay(step)}\n </span>\n </>\n )}\n </For>\n </div>\n\n <div class={styles().keyBreakdownSubHeader}>Each chord</div>\n <For each={liveReg().sequence}>\n {(step, stepIdx) => {\n const stepParsed = () =>\n parseHotkey(step, sequenceCanonicalPlatform())\n const stepRawParts = () =>\n normalizeHotkey(step, sequenceCanonicalPlatform()).split('+')\n return (\n <div class={styles().sequenceChordDetail}>\n <div class={styles().keyBreakdownSubHeader}>\n Step {stepIdx() + 1}\n </div>\n <div class={styles().keyBreakdownSplitRow}>\n <div class={styles().keyBreakdownSplitLeft}>\n <div class={styles().keyBreakdown}>\n <For each={stepRawParts()}>\n {(part, i) => (\n <>\n <Show when={i() > 0}>\n <span class={styles().keyBreakdownPlus}>+</span>\n </Show>\n <span class={styles().keyCapLarge}>{part}</span>\n </>\n )}\n </For>\n </div>\n </div>\n <span\n class={styles().keyBreakdownSplitArrow}\n aria-hidden=\"true\"\n >\n {'->'}\n </span>\n <div class={styles().keyBreakdownSplitRight}>\n <KeyBreakdownPlatformTable\n getParsed={stepParsed}\n getCanonicalPlatform={() => sequenceCanonicalPlatform()}\n styles={props.styles}\n />\n </div>\n </div>\n </div>\n )\n }}\n </For>\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Actions</div>\n <ActionButtons registration={liveReg()} />\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Options</div>\n <div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>enabled</span>\n <span\n class={\n liveReg().options.enabled !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(liveReg().options.enabled !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>eventType</span>\n <span class={styles().optionValue}>\n {liveReg().options.eventType ?? 'keydown'}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>timeout</span>\n <span class={styles().optionValue}>\n {liveReg().options.timeout ?? 1000}ms\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>preventDefault</span>\n <span\n class={\n liveReg().options.preventDefault\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!liveReg().options.preventDefault)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>stopPropagation</span>\n <span\n class={\n liveReg().options.stopPropagation\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(!!liveReg().options.stopPropagation)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>ignoreInputs</span>\n <span\n class={\n liveReg().options.ignoreInputs !== false\n ? styles().optionValueTrue\n : styles().optionValueFalse\n }\n >\n {String(liveReg().options.ignoreInputs !== false)}\n </span>\n </div>\n <div class={styles().optionRow}>\n <span class={styles().optionLabel}>conflictBehavior</span>\n <span class={styles().optionValue}>{conflictBehavior()}</span>\n </div>\n </div>\n </div>\n\n <Show when={allConflicts().length > 0}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>\n Conflicts ({allConflicts().length})\n </div>\n <div class={styles().conflictList}>\n <For each={targetConflicts()}>\n {(conflict) => {\n const itemStyle = () =>\n props.getConflictItemStyle(conflictBehavior(), true)\n const label = () =>\n props.getConflictLabel(conflictBehavior(), true)\n return (\n <div class={styles()[itemStyle()]}>\n <span>{label()}</span> {conflict.id}:{' '}\n {props.formatHotkeySequence(conflict.sequence)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )\n }}\n </For>\n <For each={scopeConflicts()}>\n {(conflict) => (\n <div class={styles().conflictItemScope}>\n <span>scope</span> {conflict.id}:{' '}\n {props.formatHotkeySequence(conflict.sequence)} (\n {conflict.options.eventType ?? 'keydown'}) on{' '}\n {props.getTargetDescription(conflict.target)}\n </div>\n )}\n </For>\n </div>\n </div>\n </Show>\n </div>\n </>\n )\n}\n\nexport function DetailsPanel(props: DetailsPanelProps) {\n const styles = useStyles()\n const state = useHotkeysDevtoolsState()\n\n return (\n <div class={styles().stateDetails}>\n <Show\n when={props.selectedRegistration()}\n fallback={\n <div class={styles().noSelection}>\n Select a hotkey or sequence from the list to view its details\n </div>\n }\n >\n {(reg) => (\n <Show\n when={isSequenceRegistration(reg())}\n fallback={\n <HotkeyDetails\n registration={reg() as HotkeyRegistration}\n state={state}\n getTargetDescription={getTargetDescription}\n findTargetConflicts={findTargetConflicts}\n findScopeConflicts={findScopeConflicts}\n getConflictItemStyle={getConflictItemStyle}\n getConflictLabel={getConflictLabel}\n formatForDisplay={formatForDisplay}\n styles={styles}\n />\n }\n >\n <SequenceDetails\n registration={reg() as SequenceRegistrationView}\n state={state}\n getTargetDescription={getTargetDescription}\n findSequenceTargetConflicts={findSequenceTargetConflicts}\n findSequenceScopeConflicts={findSequenceScopeConflicts}\n getConflictItemStyle={getConflictItemStyle}\n getConflictLabel={getConflictLabel}\n formatHotkeySequence={formatHotkeySequence}\n formatForDisplay={formatForDisplay}\n styles={styles}\n />\n </Show>\n )}\n </Show>\n </div>\n )\n}\n"],"mappings":"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"}
@@ -2,13 +2,14 @@ import { useHotkeysDevtoolsState } from "../HotkeysContextProvider.js";
2
2
  import { useStyles } from "../styles/use-styles.js";
3
3
  import { className, createComponent, effect, insert, memo, template } from "solid-js/web";
4
4
  import { For, Show } from "solid-js";
5
- import { formatKeyForDebuggingDisplay } from "@tanstack/hotkeys";
5
+ import { detectPlatform, formatForDisplay } from "@tanstack/hotkeys";
6
6
 
7
7
  //#region src/components/HeldKeysTopbar.tsx
8
8
  var _tmpl$ = /* @__PURE__ */ template(`<div><span>Held</span><div>`), _tmpl$2 = /* @__PURE__ */ template(`<span>--`), _tmpl$3 = /* @__PURE__ */ template(`<span>`), _tmpl$4 = /* @__PURE__ */ template(`<span><span>`);
9
9
  function HeldKeysBar() {
10
10
  const styles = useStyles();
11
11
  const state = useHotkeysDevtoolsState();
12
+ const platform = detectPlatform();
12
13
  return (() => {
13
14
  var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
14
15
  insert(_el$3, createComponent(Show, {
@@ -29,10 +30,12 @@ function HeldKeysBar() {
29
30
  },
30
31
  children: (key) => {
31
32
  const code = () => state.heldCodes()[key];
32
- const label = () => formatKeyForDebuggingDisplay(key);
33
+ const label = () => formatForDisplay(key, {
34
+ platform,
35
+ useSymbols: true
36
+ });
33
37
  const codeLabel = () => {
34
- const c = code();
35
- return c ? formatKeyForDebuggingDisplay(c, { source: "code" }) : void 0;
38
+ return code() || void 0;
36
39
  };
37
40
  return (() => {
38
41
  var _el$5 = _tmpl$4(), _el$6 = _el$5.firstChild;
@@ -1 +1 @@
1
- {"version":3,"file":"HeldKeysTopbar.js","names":["For","Show","formatKeyForDebuggingDisplay","useStyles","useHotkeysDevtoolsState","HeldKeysBar","styles","state","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_$insert","_$createComponent","when","heldKeys","length","fallback","_el$4","_tmpl$2","_$effect","_$className","noKeysHeld","children","each","key","code","heldCodes","label","codeLabel","c","source","undefined","_el$5","_tmpl$4","_el$6","_$memo","_el$7","_tmpl$3","keyCapCode","keyCap","_p$","_v$","heldKeysBar","_v$2","heldKeysBarHeader","_v$3","heldKeysBarList","e","t","a"],"sources":["../../src/components/HeldKeysTopbar.tsx"],"sourcesContent":["import { For, Show } from 'solid-js'\nimport { formatKeyForDebuggingDisplay } from '@tanstack/hotkeys'\nimport { useStyles } from '../styles/use-styles'\nimport { useHotkeysDevtoolsState } from '../HotkeysContextProvider'\n\nexport function HeldKeysBar() {\n const styles = useStyles()\n const state = useHotkeysDevtoolsState()\n\n return (\n <div class={styles().heldKeysBar}>\n <span class={styles().heldKeysBarHeader}>Held</span>\n <div class={styles().heldKeysBarList}>\n <Show\n when={state.heldKeys().length > 0}\n fallback={<span class={styles().noKeysHeld}>--</span>}\n >\n <For each={state.heldKeys()}>\n {(key) => {\n const code = () => state.heldCodes()[key]\n const label = () => formatKeyForDebuggingDisplay(key)\n const codeLabel = () => {\n const c = code()\n return c\n ? formatKeyForDebuggingDisplay(c, { source: 'code' })\n : undefined\n }\n return (\n <span class={styles().keyCap}>\n <span>{label()}</span>\n <Show when={codeLabel() && codeLabel() !== key}>\n <span class={styles().keyCapCode}>{codeLabel()}</span>\n </Show>\n </span>\n )\n }}\n </For>\n </Show>\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;;AAKA,SAAgBK,cAAc;CAC5B,MAAMC,SAASH,WAAW;CAC1B,MAAMI,QAAQH,yBAAyB;AAEvC,eAAA;EAAA,IAAAI,OAAAC,QAAA,EAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAG;AAAAC,SAAAF,OAAAG,gBAIOd,MAAI;GAAA,IACHe,OAAI;AAAA,WAAET,MAAMU,UAAU,CAACC,SAAS;;GAAC,IACjCC,WAAQ;AAAA,kBAAA;KAAA,IAAAC,QAAAC,SAAA;AAAAC,kBAAAC,UAAAH,OAAed,QAAQ,CAACkB,WAAU,CAAA;AAAA,YAAAJ;QAAA;;GAAA,IAAAK,WAAA;AAAA,WAAAV,gBAEzCf,KAAG;KAAA,IAAC0B,OAAI;AAAA,aAAEnB,MAAMU,UAAU;;KAAAQ,WACvBE,QAAQ;MACR,MAAMC,aAAarB,MAAMsB,WAAW,CAACF;MACrC,MAAMG,cAAc5B,6BAA6ByB,IAAI;MACrD,MAAMI,kBAAkB;OACtB,MAAMC,IAAIJ,MAAM;AAChB,cAAOI,IACH9B,6BAA6B8B,GAAG,EAAEC,QAAQ,QAAQ,CAAC,GACnDC;;AAEN,oBAAA;OAAA,IAAAC,QAAAC,SAAA,EAAAC,QAAAF,MAAAxB;AAAAG,cAAAuB,OAEWP,MAAK;AAAAhB,cAAAqB,OAAApB,gBACXd,MAAI;QAAA,IAACe,OAAI;AAAA,gBAAEsB,WAAA,CAAA,CAAAP,WAAW,CAAA,EAAA,IAAIA,WAAW,KAAKJ;;QAAG,IAAAF,WAAA;SAAA,IAAAc,QAAAC,SAAA;AAAA1B,gBAAAyB,OACTR,UAAS;AAAAT,sBAAAC,UAAAgB,OAA/BjC,QAAQ,CAACmC,WAAU,CAAA;AAAA,gBAAAF;;QAAA,CAAA,EAAA,KAAA;AAAAjB,oBAAAC,UAAAY,OAHvB7B,QAAQ,CAACoC,OAAM,CAAA;AAAA,cAAAP;UAAA;;KAO/B,CAAA;;GAAA,CAAA,CAAA;AAAAb,UAAAqB,QAAA;GAAA,IAAAC,MAzBGtC,QAAQ,CAACuC,aAAWC,OACjBxC,QAAQ,CAACyC,mBAAiBC,OAC3B1C,QAAQ,CAAC2C;AAAeL,WAAAD,IAAAO,KAAA3B,UAAAf,MAAAmC,IAAAO,IAAAN,IAAA;AAAAE,YAAAH,IAAAQ,KAAA5B,UAAAb,OAAAiC,IAAAQ,IAAAL,KAAA;AAAAE,YAAAL,IAAAS,KAAA7B,UAAAX,OAAA+B,IAAAS,IAAAJ,KAAA;AAAA,UAAAL;KAAA;GAAAO,GAAAhB;GAAAiB,GAAAjB;GAAAkB,GAAAlB;GAAA,CAAA;AAAA,SAAA1B;KAAA"}
1
+ {"version":3,"file":"HeldKeysTopbar.js","names":["For","Show","detectPlatform","formatForDisplay","useStyles","useHotkeysDevtoolsState","RegisterableHotkey","HeldKeysBar","styles","state","platform","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_$insert","_$createComponent","when","heldKeys","length","fallback","_el$4","_tmpl$2","_$effect","_$className","noKeysHeld","children","each","key","code","heldCodes","label","useSymbols","codeLabel","c","undefined","_el$5","_tmpl$4","_el$6","_$memo","_el$7","_tmpl$3","keyCapCode","keyCap","_p$","_v$","heldKeysBar","_v$2","heldKeysBarHeader","_v$3","heldKeysBarList","e","t","a"],"sources":["../../src/components/HeldKeysTopbar.tsx"],"sourcesContent":["import { For, Show } from 'solid-js'\nimport { detectPlatform, formatForDisplay } from '@tanstack/hotkeys'\nimport { useStyles } from '../styles/use-styles'\nimport { useHotkeysDevtoolsState } from '../HotkeysContextProvider'\nimport type { RegisterableHotkey } from '@tanstack/hotkeys'\n\nexport function HeldKeysBar() {\n const styles = useStyles()\n const state = useHotkeysDevtoolsState()\n const platform = detectPlatform()\n\n return (\n <div class={styles().heldKeysBar}>\n <span class={styles().heldKeysBarHeader}>Held</span>\n <div class={styles().heldKeysBarList}>\n <Show\n when={state.heldKeys().length > 0}\n fallback={<span class={styles().noKeysHeld}>--</span>}\n >\n <For each={state.heldKeys()}>\n {(key) => {\n const code = () => state.heldCodes()[key]\n const label = () =>\n formatForDisplay(key as RegisterableHotkey, {\n platform,\n useSymbols: true,\n })\n const codeLabel = () => {\n const c = code()\n return c || undefined\n }\n return (\n <span class={styles().keyCap}>\n <span>{label()}</span>\n <Show when={codeLabel() && codeLabel() !== key}>\n <span class={styles().keyCapCode}>{codeLabel()}</span>\n </Show>\n </span>\n )\n }}\n </For>\n </Show>\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;;AAMA,SAAgBO,cAAc;CAC5B,MAAMC,SAASJ,WAAW;CAC1B,MAAMK,QAAQJ,yBAAyB;CACvC,MAAMK,WAAWR,gBAAgB;AAEjC,eAAA;EAAA,IAAAS,OAAAC,QAAA,EAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAG;AAAAC,SAAAF,OAAAG,gBAIOjB,MAAI;GAAA,IACHkB,OAAI;AAAA,WAAEV,MAAMW,UAAU,CAACC,SAAS;;GAAC,IACjCC,WAAQ;AAAA,kBAAA;KAAA,IAAAC,QAAAC,SAAA;AAAAC,kBAAAC,UAAAH,OAAef,QAAQ,CAACmB,WAAU,CAAA;AAAA,YAAAJ;QAAA;;GAAA,IAAAK,WAAA;AAAA,WAAAV,gBAEzClB,KAAG;KAAA,IAAC6B,OAAI;AAAA,aAAEpB,MAAMW,UAAU;;KAAAQ,WACvBE,QAAQ;MACR,MAAMC,aAAatB,MAAMuB,WAAW,CAACF;MACrC,MAAMG,cACJ9B,iBAAiB2B,KAA2B;OAC1CpB;OACAwB,YAAY;OACb,CAAC;MACJ,MAAMC,kBAAkB;AAEtB,cADUJ,MAAM,IACJM;;AAEd,oBAAA;OAAA,IAAAC,QAAAC,SAAA,EAAAC,QAAAF,MAAAxB;AAAAG,cAAAuB,OAEWP,MAAK;AAAAhB,cAAAqB,OAAApB,gBACXjB,MAAI;QAAA,IAACkB,OAAI;AAAA,gBAAEsB,WAAA,CAAA,CAAAN,WAAW,CAAA,EAAA,IAAIA,WAAW,KAAKL;;QAAG,IAAAF,WAAA;SAAA,IAAAc,QAAAC,SAAA;AAAA1B,gBAAAyB,OACTP,UAAS;AAAAV,sBAAAC,UAAAgB,OAA/BlC,QAAQ,CAACoC,WAAU,CAAA;AAAA,gBAAAF;;QAAA,CAAA,EAAA,KAAA;AAAAjB,oBAAAC,UAAAY,OAHvB9B,QAAQ,CAACqC,OAAM,CAAA;AAAA,cAAAP;UAAA;;KAO/B,CAAA;;GAAA,CAAA,CAAA;AAAAb,UAAAqB,QAAA;GAAA,IAAAC,MA3BGvC,QAAQ,CAACwC,aAAWC,OACjBzC,QAAQ,CAAC0C,mBAAiBC,OAC3B3C,QAAQ,CAAC4C;AAAeL,WAAAD,IAAAO,KAAA3B,UAAAf,MAAAmC,IAAAO,IAAAN,IAAA;AAAAE,YAAAH,IAAAQ,KAAA5B,UAAAb,OAAAiC,IAAAQ,IAAAL,KAAA;AAAAE,YAAAL,IAAAS,KAAA7B,UAAAX,OAAA+B,IAAAS,IAAAJ,KAAA;AAAA,UAAAL;KAAA;GAAAO,GAAAhB;GAAAiB,GAAAjB;GAAAkB,GAAAlB;GAAA,CAAA;AAAA,SAAA1B;KAAA"}
@@ -34,7 +34,7 @@ const stylesFactory = (theme) => {
34
34
  overflow: hidden;
35
35
  padding: ${size[2]};
36
36
  padding-top: 0;
37
- margin-top: ${size[2]};
37
+ margin-top: -8px;
38
38
  `,
39
39
  heldKeysBar: css`
40
40
  background: ${t(colors.gray[100], colors.darkGray[800])};
@@ -45,7 +45,7 @@ const stylesFactory = (theme) => {
45
45
  gap: ${size[3]};
46
46
  padding: ${size[3]} ${size[3]};
47
47
  flex-shrink: 0;
48
- min-height: 64px;
48
+ min-height: 72px;
49
49
  margin-bottom: ${size[2]};
50
50
  `,
51
51
  heldKeysBarHeader: css`
@@ -402,6 +402,64 @@ const stylesFactory = (theme) => {
402
402
  keyBreakdownPlus: css`
403
403
  color: ${t(colors.gray[500], colors.gray[400])};
404
404
  font-size: ${fontSize.sm};
405
+ `,
406
+ keyBreakdownSubHeader: css`
407
+ font-size: ${fontSize.xs};
408
+ font-weight: ${font.weight.semibold};
409
+ color: ${t(colors.gray[500], colors.gray[400])};
410
+ margin-top: ${size[3]};
411
+ margin-bottom: ${size[1]};
412
+ `,
413
+ keyBreakdownSplitRow: css`
414
+ display: flex;
415
+ flex-direction: row;
416
+ flex-wrap: wrap;
417
+ align-items: center;
418
+ gap: ${size[3]};
419
+ `,
420
+ keyBreakdownSplitLeft: css`
421
+ flex: 0 0 auto;
422
+ display: flex;
423
+ flex-wrap: wrap;
424
+ align-items: center;
425
+ gap: ${size[1]};
426
+ `,
427
+ keyBreakdownSplitArrow: css`
428
+ flex-shrink: 0;
429
+ color: ${t(colors.gray[500], colors.gray[400])};
430
+ font-size: ${fontSize.sm};
431
+ font-family: ${fontFamily.mono};
432
+ user-select: none;
433
+ `,
434
+ keyBreakdownSplitRight: css`
435
+ flex: 1 1 200px;
436
+ min-width: min(220px, 100%);
437
+ `,
438
+ platformBreakdown: css`
439
+ display: flex;
440
+ flex-direction: column;
441
+ gap: ${size[1]};
442
+ `,
443
+ platformBreakdownRow: css`
444
+ display: grid;
445
+ grid-template-columns: 72px 1fr;
446
+ gap: ${size[2]};
447
+ align-items: center;
448
+ font-size: ${fontSize.xs};
449
+ `,
450
+ platformBreakdownLabel: css`
451
+ color: ${t(colors.gray[500], colors.gray[400])};
452
+ flex-shrink: 0;
453
+ `,
454
+ platformBreakdownPretty: css`
455
+ color: ${t(colors.gray[900], colors.gray[100])};
456
+ word-break: break-word;
457
+ min-width: 0;
458
+ `,
459
+ sequenceChordDetail: css`
460
+ margin-top: ${size[3]};
461
+ padding-top: ${size[2]};
462
+ border-top: 1px solid ${t(colors.gray[200], colors.darkGray[600])};
405
463
  `,
406
464
  keyCapLarge: css`
407
465
  display: inline-flex;
@@ -1 +1 @@
1
- {"version":3,"file":"use-styles.js","names":[],"sources":["../../src/styles/use-styles.ts"],"sourcesContent":["import * as goober from 'goober'\nimport { createEffect, createSignal } from 'solid-js'\nimport { useTheme } from '@tanstack/devtools-ui'\nimport { tokens } from './tokens'\n\nconst stylesFactory = (theme: 'light' | 'dark') => {\n const { colors, font, size, alpha, border } = tokens\n const { fontFamily, size: fontSize } = font\n const css = goober.css\n const t = (light: string, dark: string) => (theme === 'light' ? light : dark)\n\n return {\n /** Full-height flex child so MainPanel gets a bounded height from the portal */\n shellRoot: css`\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n flex: 1;\n overflow: hidden;\n `,\n /** Overrides devtools-ui MainPanel (overflow-y: auto) so inner columns scroll independently */\n mainPanelShell: css`\n display: flex;\n flex-direction: column;\n flex: 1 1 0%;\n min-height: 0;\n height: auto;\n overflow: hidden !important;\n `,\n mainContainer: css`\n display: flex;\n flex-direction: column;\n flex: 1 1 0%;\n min-height: 0;\n overflow: hidden;\n padding: ${size[2]};\n padding-top: 0;\n margin-top: ${size[2]};\n `,\n heldKeysBar: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n align-items: center;\n gap: ${size[3]};\n padding: ${size[3]} ${size[3]};\n flex-shrink: 0;\n min-height: 64px;\n margin-bottom: ${size[2]};\n `,\n heldKeysBarHeader: css`\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[600], colors.gray[400])};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n flex-shrink: 0;\n `,\n heldKeysBarList: css`\n display: flex;\n align-items: center;\n gap: ${size[1.5]};\n flex-wrap: wrap;\n flex: 1;\n min-width: 0;\n `,\n panelsContainer: css`\n display: flex;\n flex: 1 1 0%;\n min-height: 0;\n overflow: hidden;\n align-items: stretch;\n `,\n dragHandle: css`\n width: 8px;\n background: ${t(colors.gray[300], colors.darkGray[600])};\n cursor: col-resize;\n position: relative;\n transition: all 0.2s ease;\n user-select: none;\n pointer-events: all;\n margin: 0 ${size[1]};\n border-radius: 2px;\n\n &:hover {\n background: ${t(colors.blue[600], colors.blue[500])};\n margin: 0 ${size[1]};\n }\n\n &.dragging {\n background: ${t(colors.blue[700], colors.blue[600])};\n margin: 0 ${size[1]};\n }\n\n &::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 2px;\n height: 20px;\n background: ${t(colors.gray[400], colors.darkGray[400])};\n border-radius: 1px;\n pointer-events: none;\n }\n\n &:hover::after,\n &.dragging::after {\n background: ${t(colors.blue[500], colors.blue[300])};\n }\n `,\n keyCap: css`\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-width: 36px;\n padding: ${size[1]} ${size[2]};\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[100])};\n background: ${t(colors.white, colors.darkGray[600])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[400])};\n border-bottom-width: 2px;\n border-radius: ${border.radius.sm};\n box-shadow: ${tokens.shadow.xs()};\n text-transform: capitalize;\n white-space: nowrap;\n line-height: 1.2;\n `,\n keyCapCode: css`\n font-size: ${fontSize['2xs']};\n font-weight: ${font.weight.normal};\n color: ${t(colors.gray[500], colors.gray[400])};\n text-transform: none;\n line-height: 1;\n margin-top: 2px;\n `,\n noKeysHeld: css`\n font-size: ${fontSize.sm};\n color: ${t(colors.gray[400], colors.gray[600])};\n font-style: italic;\n text-align: center;\n padding: ${size[1]};\n `,\n leftPanel: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n min-height: 0;\n min-width: 0;\n `,\n leftPanelScroll: css`\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n `,\n rightPanel: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n `,\n panelHeader: css`\n font-size: ${fontSize.md};\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[400])};\n padding: ${size[2]};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n background: ${t(colors.gray[100], colors.darkGray[800])};\n flex-shrink: 0;\n `,\n hotkeyList: css`\n padding: ${size[1]};\n `,\n hotkeyRow: css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: ${size[2]};\n margin-bottom: ${size[1]};\n background: ${t(colors.gray[200], colors.darkGray[700])};\n border-radius: ${border.radius.md};\n cursor: pointer;\n transition: all 0.2s ease;\n border: 1px solid transparent;\n\n &:hover {\n background: ${t(colors.gray[300], colors.darkGray[600])};\n border-color: ${t(colors.gray[400], colors.darkGray[500])};\n }\n `,\n hotkeyRowSelected: css`\n background: ${t(colors.blue[100], colors.blue[900] + alpha[20])};\n border-color: ${t(colors.blue[600], colors.blue[500])};\n box-shadow: 0 0 0 1px\n ${t(colors.blue[600] + alpha[30], colors.blue[500] + alpha[30])};\n `,\n hotkeyRowTriggered: css`\n animation: hotkey-pulse 0.6s ease-out;\n\n @keyframes hotkey-pulse {\n 0% {\n border-color: ${t(colors.blue[500], colors.blue[400])};\n box-shadow: 0 0 0 2px\n ${t(colors.blue[500] + alpha[40], colors.blue[400] + alpha[40])};\n }\n 100% {\n border-color: transparent;\n box-shadow: 0 0 0 0px\n ${t(colors.blue[500] + '00', colors.blue[400] + '00')};\n }\n }\n `,\n hotkeyLabel: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[900], colors.gray[100])};\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `,\n sequenceStepMatched: css`\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[300])};\n `,\n hotkeyBadges: css`\n display: flex;\n gap: ${size[1]};\n margin-left: ${size[1]};\n flex-shrink: 0;\n overflow: visible;\n `,\n badge: css`\n font-size: ${fontSize['2xs']};\n padding: ${size[0.5]} ${size[1]};\n border-radius: ${border.radius.sm};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n white-space: nowrap;\n `,\n badgeEnabled: css`\n color: ${t(colors.green[700], colors.green[400])};\n background: ${t(colors.green[100], colors.green[900] + alpha[30])};\n `,\n badgeDisabled: css`\n color: ${t(colors.red[700], colors.red[400])};\n background: ${t(colors.red[100], colors.red[900] + alpha[30])};\n `,\n badgeKeydown: css`\n color: ${t(colors.purple[700], colors.purple[400])};\n background: ${t(colors.purple[100], colors.purple[900] + alpha[30])};\n `,\n badgeKeyup: css`\n color: ${t(colors.teal[700], colors.teal[400])};\n background: ${t(colors.teal[100], colors.teal[900] + alpha[30])};\n `,\n badgeTarget: css`\n color: ${t(colors.gray[700], colors.gray[300])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n `,\n badgeConflict: css`\n color: ${t(colors.yellow[700], colors.yellow[400])};\n background: ${t(colors.yellow[100], colors.yellow[900] + alpha[30])};\n `,\n badgeError: css`\n color: ${t(colors.red[700], colors.red[400])};\n background: ${t(colors.red[100], colors.red[900] + alpha[30])};\n `,\n badgeAllow: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n `,\n badgeInfo: css`\n color: ${t(colors.blue[700], colors.blue[400])};\n background: ${t(colors.blue[100], colors.blue[900] + alpha[30])};\n `,\n stateDetails: css`\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: ${size[2]};\n `,\n stateHeader: css`\n margin-bottom: ${size[2]};\n padding-bottom: ${size[2]};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n `,\n stateTitle: css`\n font-size: ${fontSize.md};\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[400])};\n margin-bottom: ${size[1]};\n `,\n detailsGrid: css`\n display: grid;\n grid-template-columns: 1fr;\n gap: ${size[2]};\n align-items: start;\n `,\n detailSection: css`\n background: ${t(colors.white, colors.darkGray[700])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n border-radius: ${border.radius.md};\n padding: ${size[2]};\n `,\n detailSectionHeader: css`\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[200])};\n margin-bottom: ${size[1]};\n text-transform: uppercase;\n letter-spacing: 0.04em;\n `,\n infoGrid: css`\n display: grid;\n grid-template-columns: auto 1fr;\n gap: ${size[1]};\n row-gap: ${size[1]};\n align-items: center;\n `,\n infoLabel: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n font-size: ${fontSize.xs};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n `,\n infoValueMono: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[900], colors.gray[100])};\n word-break: break-all;\n `,\n actionsRow: css`\n display: flex;\n flex-wrap: wrap;\n gap: ${size[2]};\n `,\n actionButton: css`\n display: inline-flex;\n align-items: center;\n gap: ${size[1]};\n padding: ${size[1]} ${size[2]};\n border-radius: ${border.radius.md};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[500])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n color: ${t(colors.gray[900], colors.gray[100])};\n font-size: ${fontSize.xs};\n cursor: pointer;\n user-select: none;\n transition:\n background 0.15s,\n border-color 0.15s;\n &:hover {\n background: ${t(colors.gray[300], colors.darkGray[500])};\n border-color: ${t(colors.gray[400], colors.darkGray[400])};\n }\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n &:hover {\n background: ${t(colors.gray[200], colors.darkGray[600])};\n border-color: ${t(colors.gray[300], colors.darkGray[500])};\n }\n }\n `,\n actionDotGreen: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.green[400]};\n `,\n noSelection: css`\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ${t(colors.gray[500], colors.gray[500])};\n font-style: italic;\n text-align: center;\n padding: ${size[4]};\n `,\n keyBreakdown: css`\n display: flex;\n flex-wrap: wrap;\n gap: ${size[1]};\n align-items: center;\n `,\n keyBreakdownPlus: css`\n color: ${t(colors.gray[500], colors.gray[400])};\n font-size: ${fontSize.sm};\n `,\n keyCapLarge: css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 36px;\n padding: ${size[1]} ${size[2]};\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[100])};\n background: ${t(colors.white, colors.darkGray[600])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[400])};\n border-bottom-width: 3px;\n border-radius: ${border.radius.md};\n box-shadow: ${tokens.shadow.sm()};\n text-transform: capitalize;\n white-space: nowrap;\n `,\n keyCapLargeInProgress: css`\n border-color: ${t(colors.blue[500], colors.blue[400])};\n color: ${t(colors.blue[900], colors.blue[200])};\n background: ${t(colors.blue[50], colors.darkGray[500])};\n `,\n conflictList: css`\n display: flex;\n flex-direction: column;\n gap: ${size[1]};\n `,\n conflictItem: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.yellow[700], colors.yellow[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.yellow[50], colors.yellow[900] + alpha[20])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.yellow[200], colors.yellow[800] + alpha[30])};\n `,\n conflictItemAllow: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[600], colors.gray[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.gray[100], colors.darkGray[700])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n `,\n conflictItemError: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.red[700], colors.red[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.red[50], colors.red[900] + alpha[20])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.red[200], colors.red[900] + alpha[30])};\n `,\n conflictItemScope: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.blue[700], colors.blue[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.blue[50], colors.blue[900] + alpha[20])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.blue[200], colors.blue[800] + alpha[30])};\n `,\n optionRow: css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: ${size[1]} 0;\n font-size: ${fontSize.xs};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[600])};\n &:last-child {\n border-bottom: none;\n }\n `,\n optionLabel: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n `,\n optionValue: css`\n font-family: ${fontFamily.mono};\n color: ${t(colors.gray[900], colors.gray[100])};\n `,\n optionValueTrue: css`\n font-family: ${fontFamily.mono};\n color: ${t(colors.green[600], colors.green[400])};\n `,\n optionValueFalse: css`\n font-family: ${fontFamily.mono};\n color: ${t(colors.red[600], colors.red[400])};\n `,\n tooltip: css`\n position: relative;\n &:hover > [data-tooltip] {\n opacity: 1;\n visibility: visible;\n }\n `,\n tooltipText: css`\n position: absolute;\n top: 100%;\n left: 50%;\n transform: translateX(-50%);\n padding: ${size[1]} ${size[1.5]};\n background: ${t(colors.gray[800], colors.darkGray[500])};\n color: ${t(colors.white, colors.gray[100])};\n font-size: ${fontSize['2xs']};\n border-radius: ${border.radius.sm};\n white-space: nowrap;\n pointer-events: none;\n opacity: 0;\n visibility: hidden;\n transition:\n opacity 0.15s,\n visibility 0.15s;\n z-index: ${tokens.zIndices.tooltip};\n margin-top: ${size[1]};\n `,\n triggerCount: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize['2xs']};\n color: ${t(colors.gray[500], colors.gray[400])};\n margin-left: ${size[1]};\n flex-shrink: 0;\n `,\n }\n}\n\nexport function useStyles() {\n const { theme } = useTheme()\n const [styles, setStyles] = createSignal(stylesFactory(theme()))\n createEffect(() => {\n setStyles(stylesFactory(theme()))\n })\n return styles\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"use-styles.js","names":[],"sources":["../../src/styles/use-styles.ts"],"sourcesContent":["import * as goober from 'goober'\nimport { createEffect, createSignal } from 'solid-js'\nimport { useTheme } from '@tanstack/devtools-ui'\nimport { tokens } from './tokens'\n\nconst stylesFactory = (theme: 'light' | 'dark') => {\n const { colors, font, size, alpha, border } = tokens\n const { fontFamily, size: fontSize } = font\n const css = goober.css\n const t = (light: string, dark: string) => (theme === 'light' ? light : dark)\n\n return {\n /** Full-height flex child so MainPanel gets a bounded height from the portal */\n shellRoot: css`\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n flex: 1;\n overflow: hidden;\n `,\n /** Overrides devtools-ui MainPanel (overflow-y: auto) so inner columns scroll independently */\n mainPanelShell: css`\n display: flex;\n flex-direction: column;\n flex: 1 1 0%;\n min-height: 0;\n height: auto;\n overflow: hidden !important;\n `,\n mainContainer: css`\n display: flex;\n flex-direction: column;\n flex: 1 1 0%;\n min-height: 0;\n overflow: hidden;\n padding: ${size[2]};\n padding-top: 0;\n margin-top: -8px;\n `,\n heldKeysBar: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n align-items: center;\n gap: ${size[3]};\n padding: ${size[3]} ${size[3]};\n flex-shrink: 0;\n min-height: 72px;\n margin-bottom: ${size[2]};\n `,\n heldKeysBarHeader: css`\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[600], colors.gray[400])};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n flex-shrink: 0;\n `,\n heldKeysBarList: css`\n display: flex;\n align-items: center;\n gap: ${size[1.5]};\n flex-wrap: wrap;\n flex: 1;\n min-width: 0;\n `,\n panelsContainer: css`\n display: flex;\n flex: 1 1 0%;\n min-height: 0;\n overflow: hidden;\n align-items: stretch;\n `,\n dragHandle: css`\n width: 8px;\n background: ${t(colors.gray[300], colors.darkGray[600])};\n cursor: col-resize;\n position: relative;\n transition: all 0.2s ease;\n user-select: none;\n pointer-events: all;\n margin: 0 ${size[1]};\n border-radius: 2px;\n\n &:hover {\n background: ${t(colors.blue[600], colors.blue[500])};\n margin: 0 ${size[1]};\n }\n\n &.dragging {\n background: ${t(colors.blue[700], colors.blue[600])};\n margin: 0 ${size[1]};\n }\n\n &::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 2px;\n height: 20px;\n background: ${t(colors.gray[400], colors.darkGray[400])};\n border-radius: 1px;\n pointer-events: none;\n }\n\n &:hover::after,\n &.dragging::after {\n background: ${t(colors.blue[500], colors.blue[300])};\n }\n `,\n keyCap: css`\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-width: 36px;\n padding: ${size[1]} ${size[2]};\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[100])};\n background: ${t(colors.white, colors.darkGray[600])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[400])};\n border-bottom-width: 2px;\n border-radius: ${border.radius.sm};\n box-shadow: ${tokens.shadow.xs()};\n text-transform: capitalize;\n white-space: nowrap;\n line-height: 1.2;\n `,\n keyCapCode: css`\n font-size: ${fontSize['2xs']};\n font-weight: ${font.weight.normal};\n color: ${t(colors.gray[500], colors.gray[400])};\n text-transform: none;\n line-height: 1;\n margin-top: 2px;\n `,\n noKeysHeld: css`\n font-size: ${fontSize.sm};\n color: ${t(colors.gray[400], colors.gray[600])};\n font-style: italic;\n text-align: center;\n padding: ${size[1]};\n `,\n leftPanel: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n min-height: 0;\n min-width: 0;\n `,\n leftPanelScroll: css`\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n `,\n rightPanel: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n `,\n panelHeader: css`\n font-size: ${fontSize.md};\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[400])};\n padding: ${size[2]};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n background: ${t(colors.gray[100], colors.darkGray[800])};\n flex-shrink: 0;\n `,\n hotkeyList: css`\n padding: ${size[1]};\n `,\n hotkeyRow: css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: ${size[2]};\n margin-bottom: ${size[1]};\n background: ${t(colors.gray[200], colors.darkGray[700])};\n border-radius: ${border.radius.md};\n cursor: pointer;\n transition: all 0.2s ease;\n border: 1px solid transparent;\n\n &:hover {\n background: ${t(colors.gray[300], colors.darkGray[600])};\n border-color: ${t(colors.gray[400], colors.darkGray[500])};\n }\n `,\n hotkeyRowSelected: css`\n background: ${t(colors.blue[100], colors.blue[900] + alpha[20])};\n border-color: ${t(colors.blue[600], colors.blue[500])};\n box-shadow: 0 0 0 1px\n ${t(colors.blue[600] + alpha[30], colors.blue[500] + alpha[30])};\n `,\n hotkeyRowTriggered: css`\n animation: hotkey-pulse 0.6s ease-out;\n\n @keyframes hotkey-pulse {\n 0% {\n border-color: ${t(colors.blue[500], colors.blue[400])};\n box-shadow: 0 0 0 2px\n ${t(colors.blue[500] + alpha[40], colors.blue[400] + alpha[40])};\n }\n 100% {\n border-color: transparent;\n box-shadow: 0 0 0 0px\n ${t(colors.blue[500] + '00', colors.blue[400] + '00')};\n }\n }\n `,\n hotkeyLabel: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[900], colors.gray[100])};\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `,\n sequenceStepMatched: css`\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[300])};\n `,\n hotkeyBadges: css`\n display: flex;\n gap: ${size[1]};\n margin-left: ${size[1]};\n flex-shrink: 0;\n overflow: visible;\n `,\n badge: css`\n font-size: ${fontSize['2xs']};\n padding: ${size[0.5]} ${size[1]};\n border-radius: ${border.radius.sm};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n white-space: nowrap;\n `,\n badgeEnabled: css`\n color: ${t(colors.green[700], colors.green[400])};\n background: ${t(colors.green[100], colors.green[900] + alpha[30])};\n `,\n badgeDisabled: css`\n color: ${t(colors.red[700], colors.red[400])};\n background: ${t(colors.red[100], colors.red[900] + alpha[30])};\n `,\n badgeKeydown: css`\n color: ${t(colors.purple[700], colors.purple[400])};\n background: ${t(colors.purple[100], colors.purple[900] + alpha[30])};\n `,\n badgeKeyup: css`\n color: ${t(colors.teal[700], colors.teal[400])};\n background: ${t(colors.teal[100], colors.teal[900] + alpha[30])};\n `,\n badgeTarget: css`\n color: ${t(colors.gray[700], colors.gray[300])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n `,\n badgeConflict: css`\n color: ${t(colors.yellow[700], colors.yellow[400])};\n background: ${t(colors.yellow[100], colors.yellow[900] + alpha[30])};\n `,\n badgeError: css`\n color: ${t(colors.red[700], colors.red[400])};\n background: ${t(colors.red[100], colors.red[900] + alpha[30])};\n `,\n badgeAllow: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n `,\n badgeInfo: css`\n color: ${t(colors.blue[700], colors.blue[400])};\n background: ${t(colors.blue[100], colors.blue[900] + alpha[30])};\n `,\n stateDetails: css`\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: ${size[2]};\n `,\n stateHeader: css`\n margin-bottom: ${size[2]};\n padding-bottom: ${size[2]};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n `,\n stateTitle: css`\n font-size: ${fontSize.md};\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[400])};\n margin-bottom: ${size[1]};\n `,\n detailsGrid: css`\n display: grid;\n grid-template-columns: 1fr;\n gap: ${size[2]};\n align-items: start;\n `,\n detailSection: css`\n background: ${t(colors.white, colors.darkGray[700])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n border-radius: ${border.radius.md};\n padding: ${size[2]};\n `,\n detailSectionHeader: css`\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[200])};\n margin-bottom: ${size[1]};\n text-transform: uppercase;\n letter-spacing: 0.04em;\n `,\n infoGrid: css`\n display: grid;\n grid-template-columns: auto 1fr;\n gap: ${size[1]};\n row-gap: ${size[1]};\n align-items: center;\n `,\n infoLabel: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n font-size: ${fontSize.xs};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n `,\n infoValueMono: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[900], colors.gray[100])};\n word-break: break-all;\n `,\n actionsRow: css`\n display: flex;\n flex-wrap: wrap;\n gap: ${size[2]};\n `,\n actionButton: css`\n display: inline-flex;\n align-items: center;\n gap: ${size[1]};\n padding: ${size[1]} ${size[2]};\n border-radius: ${border.radius.md};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[500])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n color: ${t(colors.gray[900], colors.gray[100])};\n font-size: ${fontSize.xs};\n cursor: pointer;\n user-select: none;\n transition:\n background 0.15s,\n border-color 0.15s;\n &:hover {\n background: ${t(colors.gray[300], colors.darkGray[500])};\n border-color: ${t(colors.gray[400], colors.darkGray[400])};\n }\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n &:hover {\n background: ${t(colors.gray[200], colors.darkGray[600])};\n border-color: ${t(colors.gray[300], colors.darkGray[500])};\n }\n }\n `,\n actionDotGreen: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.green[400]};\n `,\n noSelection: css`\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ${t(colors.gray[500], colors.gray[500])};\n font-style: italic;\n text-align: center;\n padding: ${size[4]};\n `,\n keyBreakdown: css`\n display: flex;\n flex-wrap: wrap;\n gap: ${size[1]};\n align-items: center;\n `,\n keyBreakdownPlus: css`\n color: ${t(colors.gray[500], colors.gray[400])};\n font-size: ${fontSize.sm};\n `,\n keyBreakdownSubHeader: css`\n font-size: ${fontSize.xs};\n font-weight: ${font.weight.semibold};\n color: ${t(colors.gray[500], colors.gray[400])};\n margin-top: ${size[3]};\n margin-bottom: ${size[1]};\n `,\n keyBreakdownSplitRow: css`\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: center;\n gap: ${size[3]};\n `,\n keyBreakdownSplitLeft: css`\n flex: 0 0 auto;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: ${size[1]};\n `,\n keyBreakdownSplitArrow: css`\n flex-shrink: 0;\n color: ${t(colors.gray[500], colors.gray[400])};\n font-size: ${fontSize.sm};\n font-family: ${fontFamily.mono};\n user-select: none;\n `,\n keyBreakdownSplitRight: css`\n flex: 1 1 200px;\n min-width: min(220px, 100%);\n `,\n platformBreakdown: css`\n display: flex;\n flex-direction: column;\n gap: ${size[1]};\n `,\n platformBreakdownRow: css`\n display: grid;\n grid-template-columns: 72px 1fr;\n gap: ${size[2]};\n align-items: center;\n font-size: ${fontSize.xs};\n `,\n platformBreakdownLabel: css`\n color: ${t(colors.gray[500], colors.gray[400])};\n flex-shrink: 0;\n `,\n platformBreakdownPretty: css`\n color: ${t(colors.gray[900], colors.gray[100])};\n word-break: break-word;\n min-width: 0;\n `,\n sequenceChordDetail: css`\n margin-top: ${size[3]};\n padding-top: ${size[2]};\n border-top: 1px solid ${t(colors.gray[200], colors.darkGray[600])};\n `,\n keyCapLarge: css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 36px;\n padding: ${size[1]} ${size[2]};\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[100])};\n background: ${t(colors.white, colors.darkGray[600])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[400])};\n border-bottom-width: 3px;\n border-radius: ${border.radius.md};\n box-shadow: ${tokens.shadow.sm()};\n text-transform: capitalize;\n white-space: nowrap;\n `,\n keyCapLargeInProgress: css`\n border-color: ${t(colors.blue[500], colors.blue[400])};\n color: ${t(colors.blue[900], colors.blue[200])};\n background: ${t(colors.blue[50], colors.darkGray[500])};\n `,\n conflictList: css`\n display: flex;\n flex-direction: column;\n gap: ${size[1]};\n `,\n conflictItem: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.yellow[700], colors.yellow[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.yellow[50], colors.yellow[900] + alpha[20])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.yellow[200], colors.yellow[800] + alpha[30])};\n `,\n conflictItemAllow: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[600], colors.gray[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.gray[100], colors.darkGray[700])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n `,\n conflictItemError: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.red[700], colors.red[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.red[50], colors.red[900] + alpha[20])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.red[200], colors.red[900] + alpha[30])};\n `,\n conflictItemScope: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.blue[700], colors.blue[400])};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.blue[50], colors.blue[900] + alpha[20])};\n border-radius: ${border.radius.sm};\n border: 1px solid ${t(colors.blue[200], colors.blue[800] + alpha[30])};\n `,\n optionRow: css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: ${size[1]} 0;\n font-size: ${fontSize.xs};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[600])};\n &:last-child {\n border-bottom: none;\n }\n `,\n optionLabel: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n `,\n optionValue: css`\n font-family: ${fontFamily.mono};\n color: ${t(colors.gray[900], colors.gray[100])};\n `,\n optionValueTrue: css`\n font-family: ${fontFamily.mono};\n color: ${t(colors.green[600], colors.green[400])};\n `,\n optionValueFalse: css`\n font-family: ${fontFamily.mono};\n color: ${t(colors.red[600], colors.red[400])};\n `,\n tooltip: css`\n position: relative;\n &:hover > [data-tooltip] {\n opacity: 1;\n visibility: visible;\n }\n `,\n tooltipText: css`\n position: absolute;\n top: 100%;\n left: 50%;\n transform: translateX(-50%);\n padding: ${size[1]} ${size[1.5]};\n background: ${t(colors.gray[800], colors.darkGray[500])};\n color: ${t(colors.white, colors.gray[100])};\n font-size: ${fontSize['2xs']};\n border-radius: ${border.radius.sm};\n white-space: nowrap;\n pointer-events: none;\n opacity: 0;\n visibility: hidden;\n transition:\n opacity 0.15s,\n visibility 0.15s;\n z-index: ${tokens.zIndices.tooltip};\n margin-top: ${size[1]};\n `,\n triggerCount: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize['2xs']};\n color: ${t(colors.gray[500], colors.gray[400])};\n margin-left: ${size[1]};\n flex-shrink: 0;\n `,\n }\n}\n\nexport function useStyles() {\n const { theme } = useTheme()\n const [styles, setStyles] = createSignal(stylesFactory(theme()))\n createEffect(() => {\n setStyles(stylesFactory(theme()))\n })\n return styles\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/hotkeys-devtools",
3
- "version": "0.5.0",
3
+ "version": "0.7.1",
4
4
  "description": "Devtools for TanStack Hotkeys",
5
5
  "author": "Tanner Linsley",
6
6
  "license": "MIT",
@@ -37,7 +37,7 @@
37
37
  "src"
38
38
  ],
39
39
  "peerDependencies": {
40
- "@tanstack/hotkeys": "0.5.0"
40
+ "@tanstack/hotkeys": "0.6.1"
41
41
  },
42
42
  "dependencies": {
43
43
  "@tanstack/devtools-ui": "^0.5.1",