@opentui/keymap 0.5.10 → 0.5.11

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,18 +1,17 @@
1
1
  // @bun
2
2
  import {
3
- KEYMAP_EXTENSION_CONTEXT,
4
- childNodes,
5
- cloneKeySequence,
6
3
  cloneKeyStroke,
4
+ cloneKeySequence,
5
+ getFocusedTargetIfAvailable,
7
6
  getActivationPath,
7
+ getSortedLayers,
8
+ isLayerActiveForFocused,
8
9
  getCaptureNode,
9
- getFocusedTargetIfAvailable,
10
- getNodePresentation,
11
10
  getNodeSequence,
12
- getSortedLayers,
13
- isLayerActiveForFocused
14
- } from "../../chunks/index-frk6sdcd.js";
15
- import"../../chunks/index-p35cyhc4.js";
11
+ getNodePresentation,
12
+ childNodes,
13
+ KEYMAP_EXTENSION_CONTEXT2
14
+ } from "../../chunks/index-7g381cth.js";
16
15
 
17
16
  // src/extras/lib/graph-snapshot.ts
18
17
  function hasOwnFocused(options) {
@@ -218,18 +217,18 @@ function createGraphSnapshot(options) {
218
217
  }
219
218
  }
220
219
  }
221
- for (const state2 of bindingStates.values()) {
222
- if (typeof state2.binding.command !== "string") {
220
+ for (const state of bindingStates.values()) {
221
+ if (typeof state.binding.command !== "string") {
223
222
  continue;
224
223
  }
225
- const ids = new Set(commandIdsByName.get(state2.binding.command) ?? []);
226
- const chain = catalog.getResolvedCommandChain(state2.binding.command, focused).entries;
224
+ const ids = new Set(commandIdsByName.get(state.binding.command) ?? []);
225
+ const chain = catalog.getResolvedCommandChain(state.binding.command, focused).entries;
227
226
  for (const entry of chain ?? []) {
228
227
  for (const id of commandIdsByCommand.get(entry.command) ?? []) {
229
228
  ids.add(id);
230
229
  }
231
230
  }
232
- state2.commandIds = [...ids];
231
+ state.commandIds = [...ids];
233
232
  }
234
233
  const pending = focused === currentFocused ? activation.ensureValidPendingSequence() : undefined;
235
234
  const pendingNodes = collectPendingNodes(pending ?? null, layerIds, nodeIds, layerRoots);
@@ -275,50 +274,50 @@ function createGraphSnapshot(options) {
275
274
  visitNode(layerRoots.get(layer), null);
276
275
  }
277
276
  const layers = sortedLayers.map((layer) => {
278
- const state2 = layerStates.get(layer);
277
+ const state = layerStates.get(layer);
279
278
  return {
280
- id: state2.id,
279
+ id: state.id,
281
280
  order: layer.order,
282
281
  priority: layer.priority,
283
282
  target: includeTargets ? layer.target : undefined,
284
283
  targetMode: layer.targetMode,
285
284
  fields: layer.fields ?? {},
286
285
  attrs: layer.attrs,
287
- active: state2.active,
288
- focusActive: state2.focusActive,
289
- enabled: state2.enabled,
290
- inactiveReasons: state2.inactiveReasons,
286
+ active: state.active,
287
+ focusActive: state.focusActive,
288
+ enabled: state.enabled,
289
+ inactiveReasons: state.inactiveReasons,
291
290
  rootNodeId: nodeIds.get(layerRoots.get(layer)),
292
291
  bindingIds: layer.bindings.map((binding) => bindingStates.get(binding).id),
293
292
  commandIds: layer.commands.map((command) => commandStates.get(command).id)
294
293
  };
295
294
  });
296
295
  const commands = [];
297
- for (const state2 of commandStates.values()) {
296
+ for (const state of commandStates.values()) {
298
297
  commands.push({
299
- id: state2.id,
300
- layerId: state2.layerState.id,
301
- name: state2.command.command.name,
302
- command: state2.command.command,
303
- fields: state2.command.fields,
304
- attrs: state2.command.attrs,
305
- target: includeTargets ? state2.layerState.layer.target : undefined,
306
- active: state2.active,
307
- reachable: state2.reachable,
308
- enabled: state2.enabled,
309
- inactiveReasons: state2.inactiveReasons
298
+ id: state.id,
299
+ layerId: state.layerState.id,
300
+ name: state.command.command.name,
301
+ command: state.command.command,
302
+ fields: state.command.fields,
303
+ attrs: state.command.attrs,
304
+ target: includeTargets ? state.layerState.layer.target : undefined,
305
+ active: state.active,
306
+ reachable: state.reachable,
307
+ enabled: state.enabled,
308
+ inactiveReasons: state.inactiveReasons
310
309
  });
311
310
  }
312
311
  const bindings = [];
313
- for (const state2 of bindingStates.values()) {
314
- const binding = state2.binding;
312
+ for (const state of bindingStates.values()) {
313
+ const binding = state.binding;
315
314
  bindings.push({
316
- id: state2.id,
317
- layerId: state2.layerState.id,
315
+ id: state.id,
316
+ layerId: state.layerState.id,
318
317
  sourceLayerOrder: binding.sourceLayerOrder,
319
318
  bindingIndex: binding.bindingIndex,
320
319
  nodeId: bindingNodeIds.get(binding),
321
- commandIds: state2.commandIds,
320
+ commandIds: state.commandIds,
322
321
  sequence: cloneKeySequence(binding.sequence),
323
322
  command: binding.command,
324
323
  commandAttrs: catalog.getBindingCommandAttrs(binding, focused, activeView),
@@ -326,12 +325,12 @@ function createGraphSnapshot(options) {
326
325
  event: binding.event,
327
326
  preventDefault: binding.preventDefault,
328
327
  fallthrough: binding.fallthrough,
329
- active: state2.active,
330
- reachable: state2.reachable,
331
- enabled: state2.enabled,
332
- commandResolved: state2.commandResolved,
333
- shadowed: state2.shadowed,
334
- inactiveReasons: state2.inactiveReasons
328
+ active: state.active,
329
+ reachable: state.reachable,
330
+ enabled: state.enabled,
331
+ commandResolved: state.commandResolved,
332
+ shadowed: state.shadowed,
333
+ inactiveReasons: state.inactiveReasons
335
334
  });
336
335
  }
337
336
  const activeKeys = activation.getActiveKeysForFocused(focused, { includeBindings: true, includeMetadata: true });
@@ -348,7 +347,7 @@ function createGraphSnapshot(options) {
348
347
 
349
348
  // src/extras/graph.ts
350
349
  function getGraphSnapshot(keymap, options) {
351
- const context = keymap[KEYMAP_EXTENSION_CONTEXT]();
350
+ const context = keymap[KEYMAP_EXTENSION_CONTEXT2]();
352
351
  return createGraphSnapshot({
353
352
  state: context.state,
354
353
  host: context.host,
@@ -366,9 +365,9 @@ function createGraphExtra(keymap) {
366
365
  };
367
366
  }
368
367
  export {
369
- getGraphSnapshot,
370
- createGraphExtra
368
+ createGraphExtra,
369
+ getGraphSnapshot
371
370
  };
372
371
 
373
- //# debugId=F0BC6C1F1953FF8864756E2164756E21
372
+ //# debugId=1B9E099A0257148164756E2164756E21
374
373
  //# sourceMappingURL=graph.js.map
@@ -5,7 +5,7 @@
5
5
  "import type { ActivationService } from \"../../services/activation.js\"\nimport type { CommandCatalogService } from \"../../services/command-catalog.js\"\nimport type { ConditionService } from \"../../services/conditions.js\"\nimport type { State } from \"../../services/state.js\"\nimport type {\n BindingState,\n CommandState,\n KeymapEvent,\n KeymapHost,\n KeySequencePart,\n RegisteredLayer,\n SequenceNode,\n} from \"../../types.js\"\nimport type {\n GraphBinding,\n GraphCommand,\n GraphInactiveReason,\n GraphLayer,\n GraphSequenceNode,\n GraphSnapshot,\n GraphSnapshotOptions,\n} from \"./graph-types.js\"\nimport { cloneKeySequence, cloneKeyStroke } from \"../../services/keys.js\"\nimport {\n getActivationPath,\n getFocusedTargetIfAvailable,\n getSortedLayers,\n isLayerActiveForFocused,\n} from \"../../services/primitives/active-layers.js\"\nimport { childNodes, getCaptureNode, getNodePresentation, getNodeSequence } from \"../../services/sequence-index.js\"\n\ninterface LayerGraphState<TTarget extends object, TEvent extends KeymapEvent> {\n layer: RegisteredLayer<TTarget, TEvent>\n id: string\n focusActive: boolean\n enabled: boolean\n active: boolean\n inactiveReasons: GraphInactiveReason[]\n}\n\ninterface BindingGraphState<TTarget extends object, TEvent extends KeymapEvent> {\n binding: BindingState<TTarget, TEvent>\n id: string\n layerState: LayerGraphState<TTarget, TEvent>\n commandIds: string[]\n enabled: boolean\n commandResolved: boolean\n active: boolean\n reachable: boolean\n shadowed: boolean\n inactiveReasons: GraphInactiveReason[]\n}\n\ninterface CommandGraphState<TTarget extends object, TEvent extends KeymapEvent> {\n command: CommandState<TTarget, TEvent>\n id: string\n layerState: LayerGraphState<TTarget, TEvent>\n active: boolean\n reachable: boolean\n enabled: boolean\n inactiveReasons: GraphInactiveReason[]\n}\n\ninterface SequenceStop {\n event: string\n matches: readonly string[]\n}\n\nfunction hasOwnFocused<TTarget extends object>(\n options: GraphSnapshotOptions<TTarget> | undefined,\n): options is GraphSnapshotOptions<TTarget> & { focused: TTarget | null | undefined } {\n return !!options && Object.prototype.hasOwnProperty.call(options, \"focused\")\n}\n\nfunction layerId<TTarget extends object, TEvent extends KeymapEvent>(layer: RegisteredLayer<TTarget, TEvent>): string {\n return `layer:${layer.order}`\n}\n\nfunction bindingId<TTarget extends object, TEvent extends KeymapEvent>(\n layer: RegisteredLayer<TTarget, TEvent>,\n index: number,\n): string {\n return `binding:${layer.order}:${index}`\n}\n\nfunction commandId<TTarget extends object, TEvent extends KeymapEvent>(\n layer: RegisteredLayer<TTarget, TEvent>,\n index: number,\n): string {\n return `command:${layer.order}:${index}`\n}\n\nfunction nodeId<TTarget extends object, TEvent extends KeymapEvent>(\n layer: RegisteredLayer<TTarget, TEvent>,\n index: number,\n): string {\n return `node:${layer.order}:${index}`\n}\n\nfunction getSequenceMatches(sequence: readonly KeySequencePart[]): string[] {\n return sequence.map((part) => part.match)\n}\n\nfunction isPrefix(left: readonly string[], right: readonly string[]): boolean {\n if (left.length > right.length) {\n return false\n }\n\n for (let index = 0; index < left.length; index += 1) {\n if (left[index] !== right[index]) {\n return false\n }\n }\n\n return true\n}\n\nfunction collectPendingNodes<TTarget extends object, TEvent extends KeymapEvent>(\n pending: State<TTarget, TEvent>[\"pending\"],\n layerIds: ReadonlyMap<RegisteredLayer<TTarget, TEvent>, string>,\n nodeIds: ReadonlyMap<SequenceNode<TTarget, TEvent>, string>,\n roots: ReadonlyMap<RegisteredLayer<TTarget, TEvent>, SequenceNode<TTarget, TEvent>>,\n): { pending: Set<string>; pendingPath: Set<string> } {\n const pendingIds = new Set<string>()\n const pendingPathIds = new Set<string>()\n\n if (!pending) {\n return { pending: pendingIds, pendingPath: pendingPathIds }\n }\n\n for (const capture of pending.captures) {\n const layerGraphId = layerIds.get(capture.layer)\n if (!layerGraphId) {\n continue\n }\n\n const root = roots.get(capture.layer)\n if (!root) {\n continue\n }\n\n let current: SequenceNode<TTarget, TEvent> | null = getCaptureNode(root, capture) ?? null\n const capturedNodeId = current ? nodeIds.get(current) : undefined\n if (capturedNodeId) {\n pendingIds.add(capturedNodeId)\n }\n\n while (current) {\n const currentNodeId = nodeIds.get(current)\n if (currentNodeId) {\n pendingPathIds.add(currentNodeId)\n }\n current = current.parent\n }\n }\n\n return { pending: pendingIds, pendingPath: pendingPathIds }\n}\n\nexport function createGraphSnapshot<TTarget extends object, TEvent extends KeymapEvent>(options: {\n state: State<TTarget, TEvent>\n host: KeymapHost<TTarget, TEvent>\n conditions: ConditionService<TTarget, TEvent>\n catalog: CommandCatalogService<TTarget, TEvent>\n activation: ActivationService<TTarget, TEvent>\n snapshotOptions?: GraphSnapshotOptions<TTarget>\n}): GraphSnapshot<TTarget, TEvent> {\n const { state, host, conditions, catalog, activation, snapshotOptions } = options\n const includeTargets = snapshotOptions?.includeTargets !== false\n const currentFocused = getFocusedTargetIfAvailable(host)\n const focused = hasOwnFocused(snapshotOptions) ? (snapshotOptions.focused ?? null) : currentFocused\n const activeView = catalog.getActiveCommandView(focused)\n const activeCommandStates = new Set(activeView.entries.map((entry) => entry.commandState))\n const reachableCommandStates = new Set(activeView.reachable.map((entry) => entry.commandState))\n const activationPath = getActivationPath(host, focused)\n const sortedLayers = getSortedLayers(state.layers)\n const layerStates = new Map<RegisteredLayer<TTarget, TEvent>, LayerGraphState<TTarget, TEvent>>()\n const commandStates = new Map<CommandState<TTarget, TEvent>, CommandGraphState<TTarget, TEvent>>()\n const bindingStates = new Map<BindingState<TTarget, TEvent>, BindingGraphState<TTarget, TEvent>>()\n const commandIdsByCommand = new Map<CommandState<TTarget, TEvent>[\"command\"], string[]>()\n const commandIdsByName = new Map<string, string[]>()\n const nodeIds = new Map<SequenceNode<TTarget, TEvent>, string>()\n const layerIds = new Map<RegisteredLayer<TTarget, TEvent>, string>()\n const layerRoots = new Map<RegisteredLayer<TTarget, TEvent>, SequenceNode<TTarget, TEvent>>()\n const bindingNodeIds = new Map<BindingState<TTarget, TEvent>, string>()\n const sequenceNodes: GraphSequenceNode[] = []\n\n for (const layer of sortedLayers) {\n layerRoots.set(layer, layer.root)\n }\n\n for (const layer of sortedLayers) {\n const currentLayerId = layerId(layer)\n const targetDestroyed = layer.target ? host.isTargetDestroyed(layer.target) : false\n const focusActive = isLayerActiveForFocused(host, layer, focused, activationPath)\n const enabled = conditions.matchesConditions(layer)\n const inactiveReasons: GraphInactiveReason[] = []\n if (targetDestroyed) inactiveReasons.push(\"target-destroyed\")\n if (!focusActive) inactiveReasons.push(\"focus\")\n if (!enabled) inactiveReasons.push(\"layer-disabled\")\n\n layerIds.set(layer, currentLayerId)\n layerStates.set(layer, {\n layer,\n id: currentLayerId,\n focusActive,\n enabled,\n active: !targetDestroyed && focusActive && enabled,\n inactiveReasons,\n })\n }\n\n for (const layer of sortedLayers) {\n const currentLayerId = layerIds.get(layer)!\n for (const [index, command] of layer.commands.entries()) {\n const currentCommandId = commandId(layer, index)\n const idsByCommand = commandIdsByCommand.get(command.command)\n if (idsByCommand) {\n idsByCommand.push(currentCommandId)\n } else {\n commandIdsByCommand.set(command.command, [currentCommandId])\n }\n\n const idsByName = commandIdsByName.get(command.command.name)\n if (idsByName) {\n idsByName.push(currentCommandId)\n } else {\n commandIdsByName.set(command.command.name, [currentCommandId])\n }\n\n const layerState = layerStates.get(layer)!\n const enabled = conditions.matchesConditions(command)\n const active = activeCommandStates.has(command)\n const reachable = reachableCommandStates.has(command)\n const inactiveReasons = [...layerState.inactiveReasons]\n if (!enabled) {\n inactiveReasons.push(\"command-disabled\")\n }\n if (active && !reachable) {\n inactiveReasons.push(\"shadowed\")\n }\n commandStates.set(command, {\n command,\n id: currentCommandId,\n layerState,\n active,\n reachable,\n enabled,\n inactiveReasons,\n })\n }\n\n let nextNodeIndex = 0\n const visitNode = (node: SequenceNode<TTarget, TEvent>, parentId: string | null): void => {\n const currentNodeId = nodeId(layer, nextNodeIndex)\n nextNodeIndex += 1\n nodeIds.set(node, currentNodeId)\n\n for (const binding of node.bindings) {\n bindingNodeIds.set(binding, currentNodeId)\n }\n\n for (const child of childNodes(node)) {\n visitNode(child, currentNodeId)\n }\n }\n\n const root = layerRoots.get(layer)!\n visitNode(root, null)\n if (!nodeIds.has(root)) {\n nodeIds.set(root, `${currentLayerId}:root`)\n }\n }\n\n const stoppedSequences: SequenceStop[] = []\n for (const layer of sortedLayers) {\n const layerState = layerStates.get(layer)!\n for (const [index, binding] of layer.bindings.entries()) {\n const enabled = conditions.matchesConditions(binding)\n const commandResolved = catalog.isBindingVisible(binding, focused, activeView)\n const active = layerState.active && enabled && commandResolved\n const matches = getSequenceMatches(binding.sequence)\n const shadowed =\n active && stoppedSequences.some((stop) => stop.event === binding.event && isPrefix(stop.matches, matches))\n const inactiveReasons = [...layerState.inactiveReasons]\n if (!enabled) {\n inactiveReasons.push(\"binding-disabled\")\n }\n if (!commandResolved) {\n const unavailable =\n typeof binding.command === \"string\"\n ? catalog.getDispatchUnavailableCommandState(binding.command, focused, false)\n : undefined\n if (unavailable?.reason === \"disabled\") {\n inactiveReasons.push(\"command-disabled\")\n } else if (unavailable?.reason === \"inactive\") {\n inactiveReasons.push(\"command-inactive\")\n } else {\n inactiveReasons.push(\"command-unresolved\")\n }\n }\n if (shadowed) {\n inactiveReasons.push(\"shadowed\")\n }\n\n const currentBindingState: BindingGraphState<TTarget, TEvent> = {\n binding,\n id: bindingId(layer, index),\n layerState,\n commandIds: [],\n enabled,\n commandResolved,\n active,\n reachable: active && !shadowed,\n shadowed,\n inactiveReasons,\n }\n bindingStates.set(binding, currentBindingState)\n\n if (active && binding.command !== undefined && !binding.fallthrough) {\n stoppedSequences.push({ event: binding.event, matches })\n }\n }\n }\n\n for (const state of bindingStates.values()) {\n if (typeof state.binding.command !== \"string\") {\n continue\n }\n\n const ids = new Set(commandIdsByName.get(state.binding.command) ?? [])\n const chain = catalog.getResolvedCommandChain(state.binding.command, focused).entries\n for (const entry of chain ?? []) {\n for (const id of commandIdsByCommand.get(entry.command) ?? []) {\n ids.add(id)\n }\n }\n state.commandIds = [...ids]\n }\n\n const pending = focused === currentFocused ? activation.ensureValidPendingSequence() : undefined\n const pendingNodes = collectPendingNodes(pending ?? null, layerIds, nodeIds, layerRoots)\n\n for (const layer of sortedLayers) {\n const currentLayerId = layerIds.get(layer)!\n const visitNode = (node: SequenceNode<TTarget, TEvent>, parentId: string | null): void => {\n const currentNodeId = nodeIds.get(node)!\n const childIds = childNodes(node)\n .map((child) => nodeIds.get(child)!)\n .filter(Boolean)\n const bindingIds = node.bindings\n .map((binding) => bindingStates.get(binding)?.id)\n .filter((id): id is string => !!id)\n const reachableBindingIds = node.reachableBindings\n .map((binding) => bindingStates.get(binding)?.id)\n .filter((id): id is string => !!id)\n const sequence = getNodeSequence(node)\n const presentation = getNodePresentation(node)\n const active = node.reachableBindings.some((binding) => bindingStates.get(binding)?.active === true)\n const reachable = node.reachableBindings.some((binding) => bindingStates.get(binding)?.reachable === true)\n\n for (let index = 0; index < sequence.length; index += 1) {\n const sourcePart = node.reachableBindings[0]?.sequence[index]\n if (sourcePart) {\n sequence[index] = { ...sourcePart, stroke: cloneKeyStroke(sourcePart.stroke) }\n }\n }\n\n sequenceNodes.push({\n id: currentNodeId,\n layerId: currentLayerId,\n parentId,\n childIds,\n bindingIds,\n reachableBindingIds,\n depth: node.depth,\n sequence,\n stroke: node.stroke ? cloneKeyStroke(node.stroke) : null,\n match: node.match,\n display: presentation.display,\n tokenName: presentation.tokenName,\n active,\n reachable,\n pending: pendingNodes.pending.has(currentNodeId),\n pendingPath: pendingNodes.pendingPath.has(currentNodeId),\n })\n\n for (const child of childNodes(node)) {\n visitNode(child, currentNodeId)\n }\n }\n\n visitNode(layerRoots.get(layer)!, null)\n }\n\n const layers: GraphLayer<TTarget>[] = sortedLayers.map((layer) => {\n const state = layerStates.get(layer)!\n return {\n id: state.id,\n order: layer.order,\n priority: layer.priority,\n target: includeTargets ? layer.target : undefined,\n targetMode: layer.targetMode,\n fields: layer.fields ?? {},\n attrs: layer.attrs,\n active: state.active,\n focusActive: state.focusActive,\n enabled: state.enabled,\n inactiveReasons: state.inactiveReasons,\n rootNodeId: nodeIds.get(layerRoots.get(layer)!)!,\n bindingIds: layer.bindings.map((binding) => bindingStates.get(binding)!.id),\n commandIds: layer.commands.map((command) => commandStates.get(command)!.id),\n }\n })\n\n const commands: GraphCommand<TTarget, TEvent>[] = []\n for (const state of commandStates.values()) {\n commands.push({\n id: state.id,\n layerId: state.layerState.id,\n name: state.command.command.name,\n command: state.command.command,\n fields: state.command.fields,\n attrs: state.command.attrs,\n target: includeTargets ? state.layerState.layer.target : undefined,\n active: state.active,\n reachable: state.reachable,\n enabled: state.enabled,\n inactiveReasons: state.inactiveReasons,\n })\n }\n\n const bindings: GraphBinding<TTarget, TEvent>[] = []\n for (const state of bindingStates.values()) {\n const binding = state.binding\n bindings.push({\n id: state.id,\n layerId: state.layerState.id,\n sourceLayerOrder: binding.sourceLayerOrder,\n bindingIndex: binding.bindingIndex,\n nodeId: bindingNodeIds.get(binding),\n commandIds: state.commandIds,\n sequence: cloneKeySequence(binding.sequence),\n command: binding.command,\n commandAttrs: catalog.getBindingCommandAttrs(binding, focused, activeView),\n attrs: binding.attrs,\n event: binding.event,\n preventDefault: binding.preventDefault,\n fallthrough: binding.fallthrough,\n active: state.active,\n reachable: state.reachable,\n enabled: state.enabled,\n commandResolved: state.commandResolved,\n shadowed: state.shadowed,\n inactiveReasons: state.inactiveReasons,\n })\n }\n\n const activeKeys = activation.getActiveKeysForFocused(focused, { includeBindings: true, includeMetadata: true })\n\n return {\n focused: includeTargets ? focused : undefined,\n pendingSequence: focused === currentFocused ? activation.getPendingSequence() : [],\n activeKeys,\n layers,\n commands,\n bindings,\n sequenceNodes,\n }\n}\n",
6
6
  "import { KEYMAP_EXTENSION_CONTEXT, type KeymapExtensionProvider } from \"../services/extension-context.js\"\nimport { createGraphSnapshot } from \"./lib/graph-snapshot.js\"\nimport type { KeymapEvent } from \"../types.js\"\nimport type { GraphSnapshot, GraphSnapshotOptions } from \"./lib/graph-types.js\"\n\nexport type {\n GraphBinding,\n GraphCommand,\n GraphInactiveReason,\n GraphLayer,\n GraphSequenceNode,\n GraphSnapshot,\n GraphSnapshotOptions,\n} from \"./lib/graph-types.js\"\n\nexport interface KeymapGraphExtra<TTarget extends object, TEvent extends KeymapEvent> {\n getGraphSnapshot(options?: GraphSnapshotOptions<TTarget>): GraphSnapshot<TTarget, TEvent>\n}\n\nexport function getGraphSnapshot<TTarget extends object, TEvent extends KeymapEvent>(\n keymap: KeymapExtensionProvider<TTarget, TEvent>,\n options?: GraphSnapshotOptions<TTarget>,\n): GraphSnapshot<TTarget, TEvent> {\n const context = keymap[KEYMAP_EXTENSION_CONTEXT]()\n return createGraphSnapshot({\n state: context.state,\n host: context.host,\n conditions: context.conditions,\n catalog: context.catalog,\n activation: context.activation,\n snapshotOptions: options,\n })\n}\n\nexport function createGraphExtra<TTarget extends object, TEvent extends KeymapEvent>(\n keymap: KeymapExtensionProvider<TTarget, TEvent>,\n): KeymapGraphExtra<TTarget, TEvent> {\n return {\n getGraphSnapshot(options) {\n return getGraphSnapshot(keymap, options)\n },\n }\n}\n"
7
7
  ],
8
- "mappings": "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",
9
- "debugId": "F0BC6C1F1953FF8864756E2164756E21",
8
+ "mappings": "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",
9
+ "debugId": "1B9E099A0257148164756E2164756E21",
10
10
  "names": []
11
11
  }
@@ -1,6 +1,4 @@
1
1
  // @bun
2
- import"../../chunks/index-p35cyhc4.js";
3
-
4
2
  // src/extras/binding-lookup.ts
5
3
  var hasOwn = Object.prototype.hasOwnProperty;
6
4
  var EMPTY_BINDINGS = Object.freeze([]);
@@ -71,8 +69,8 @@ function resolveBindingValue(command, value, bindingDefaults) {
71
69
  const items = value;
72
70
  const bindings = new Array(items.length);
73
71
  for (let index = 0;index < items.length; index += 1) {
74
- const binding2 = resolveBindingItem(command, items[index], index);
75
- bindings[index] = bindingDefaults ? withBindingDefaults(command, binding2, bindingDefaults) : binding2;
72
+ const binding = resolveBindingItem(command, items[index], index);
73
+ bindings[index] = bindingDefaults ? withBindingDefaults(command, binding, bindingDefaults) : binding;
76
74
  }
77
75
  return bindings;
78
76
  }
@@ -177,15 +175,15 @@ function createBindingLookup(config, options) {
177
175
  if (commands.length === 0)
178
176
  return group.bindings;
179
177
  if (commands.length === 1) {
180
- const omitted2 = commands[0];
181
- const result2 = [];
178
+ const omitted = commands[0];
179
+ const result = [];
182
180
  for (let index = 0;index < group.bindings.length; index += 1) {
183
181
  const binding = group.bindings[index];
184
- if (typeof binding.cmd === "string" && binding.cmd === omitted2)
182
+ if (typeof binding.cmd === "string" && binding.cmd === omitted)
185
183
  continue;
186
- result2.push(binding);
184
+ result.push(binding);
187
185
  }
188
- return result2;
186
+ return result;
189
187
  }
190
188
  const omitted = new Set(commands);
191
189
  const result = [];
@@ -338,11 +336,11 @@ function formatCommandBindings(bindings, options = {}) {
338
336
  return formatted;
339
337
  }
340
338
  export {
341
- formatKeySequence,
342
- formatCommandBindings,
339
+ commandBindings,
343
340
  createBindingLookup,
344
- commandBindings
341
+ formatCommandBindings,
342
+ formatKeySequence
345
343
  };
346
344
 
347
- //# debugId=418A62FEB87D11F164756E2164756E21
345
+ //# debugId=425AFADC60FBA39D64756E2164756E21
348
346
  //# sourceMappingURL=index.js.map
@@ -6,7 +6,7 @@
6
6
  "import type { Binding, KeyLike, KeymapEvent } from \"../types.js\"\n\nexport type CommandBindingMap = Record<string, KeyLike>\n\nexport interface CommandBindingsOverrideWarning {\n code: \"command-binding-override\"\n command: string\n previousKey: KeyLike\n nextKey: KeyLike\n}\n\nexport interface CommandBindingsError {\n code: \"invalid-command-binding\"\n command: string\n value: unknown\n reason: Error\n}\n\nexport interface CommandBindingsOptions {\n onWarning?: (warning: CommandBindingsOverrideWarning) => void\n onError?: (error: CommandBindingsError) => void\n}\n\nfunction isCommandBindingKey(value: unknown): value is KeyLike {\n return typeof value === \"string\" || (!!value && typeof value === \"object\" && !Array.isArray(value))\n}\n\nexport function commandBindings<TTarget extends object = object, TEvent extends KeymapEvent = KeymapEvent>(\n bindings: Readonly<CommandBindingMap>,\n options?: CommandBindingsOptions,\n): Binding<TTarget, TEvent>[] {\n const normalized: Binding<TTarget, TEvent>[] = []\n const indexesByCommand = new Map<string, number>()\n\n for (const [command, key] of Object.entries(bindings)) {\n if (!isCommandBindingKey(key)) {\n const error = new Error(\n `Invalid command binding for \"${command}\": command bindings must map command strings to key strings or keystroke objects`,\n )\n\n options?.onError?.({\n code: \"invalid-command-binding\",\n command,\n value: key,\n reason: error,\n })\n continue\n }\n\n const normalizedCommand = command.trim()\n\n const nextBinding = {\n key: typeof key === \"string\" ? key : { ...key },\n cmd: normalizedCommand,\n } satisfies Binding<TTarget, TEvent>\n\n const existingIndex = indexesByCommand.get(normalizedCommand)\n if (existingIndex !== undefined) {\n const previousBinding = normalized[existingIndex]!\n options?.onWarning?.({\n code: \"command-binding-override\",\n command: normalizedCommand,\n previousKey: previousBinding.key,\n nextKey: nextBinding.key,\n })\n normalized[existingIndex] = nextBinding\n continue\n }\n\n indexesByCommand.set(normalizedCommand, normalized.length)\n normalized.push(nextBinding)\n }\n\n return normalized\n}\n",
7
7
  "import type { KeySequencePart } from \"../types.js\"\n\nexport type KeyModifierName = \"ctrl\" | \"shift\" | \"meta\" | \"super\" | \"hyper\"\n\nexport interface KeySequenceFormatPart {\n stroke: KeySequencePart[\"stroke\"]\n display: string\n match?: KeySequencePart[\"match\"]\n tokenName?: string\n patternName?: string\n}\n\nexport type TokenDisplayResolver =\n | Readonly<Record<string, string>>\n | ((tokenName: string, part: KeySequenceFormatPart) => string | undefined)\n\nexport type PatternDisplayResolver =\n | Readonly<Record<string, string>>\n | ((patternName: string, part: KeySequenceFormatPart) => string | undefined)\n\nexport interface FormatKeySequenceOptions {\n tokenDisplay?: TokenDisplayResolver\n patternDisplay?: PatternDisplayResolver\n keyNameAliases?: Readonly<Record<string, string>>\n modifierAliases?: Partial<Record<KeyModifierName, string>>\n separator?: string\n}\n\nexport interface FormatCommandBindingsOptions extends FormatKeySequenceOptions {\n bindingSeparator?: string\n dedupe?: boolean\n}\n\nexport interface SequenceBindingLike {\n sequence: readonly KeySequenceFormatPart[]\n}\n\nfunction formatStroke(part: KeySequenceFormatPart, options: FormatKeySequenceOptions): string {\n if (part.tokenName) {\n const tokenDisplay = options.tokenDisplay\n if (!tokenDisplay) return part.display\n if (typeof tokenDisplay === \"function\") return tokenDisplay(part.tokenName, part) ?? part.display\n return tokenDisplay[part.tokenName] ?? part.display\n }\n\n if (part.patternName) {\n const patternDisplay = options.patternDisplay\n if (!patternDisplay) return part.display\n if (typeof patternDisplay === \"function\") return patternDisplay(part.patternName, part) ?? part.display\n return patternDisplay[part.patternName] ?? part.display\n }\n\n if (!options.keyNameAliases && !options.modifierAliases) return part.display\n\n // This is on the command-palette hot path; build directly to avoid per-stroke arrays.\n const stroke = part.stroke\n const modifierAliases = options.modifierAliases\n let formatted = \"\"\n let pieceCount = 0\n\n if (stroke.ctrl) {\n formatted = modifierAliases?.ctrl ?? \"ctrl\"\n pieceCount = 1\n }\n\n if (stroke.shift) {\n const alias = modifierAliases?.shift ?? \"shift\"\n formatted = pieceCount === 0 ? alias : `${formatted}+${alias}`\n pieceCount += 1\n }\n\n if (stroke.meta) {\n const alias = modifierAliases?.meta ?? \"meta\"\n formatted = pieceCount === 0 ? alias : `${formatted}+${alias}`\n pieceCount += 1\n }\n\n if (stroke.super) {\n const alias = modifierAliases?.super ?? \"super\"\n formatted = pieceCount === 0 ? alias : `${formatted}+${alias}`\n pieceCount += 1\n }\n\n if (stroke.hyper) {\n const alias = modifierAliases?.hyper ?? \"hyper\"\n formatted = pieceCount === 0 ? alias : `${formatted}+${alias}`\n pieceCount += 1\n }\n\n const name = stroke.name === \"return\" ? \"enter\" : stroke.name\n const keyName = options.keyNameAliases?.[name] ?? name\n return pieceCount === 0 ? keyName : `${formatted}+${keyName}`\n}\n\nexport function formatKeySequence(\n parts: readonly KeySequenceFormatPart[] | undefined,\n options: FormatKeySequenceOptions = {},\n): string {\n if (!parts || parts.length === 0) return \"\"\n\n // Avoid map/join allocation here; binding-list formatting calls this repeatedly.\n const separator = options.separator ?? \" \"\n let formatted = formatStroke(parts[0]!, options)\n for (let index = 1; index < parts.length; index += 1) {\n formatted += separator + formatStroke(parts[index]!, options)\n }\n\n return formatted\n}\n\nexport function formatCommandBindings(\n bindings: readonly SequenceBindingLike[] | undefined,\n options: FormatCommandBindingsOptions = {},\n): string | undefined {\n if (!bindings?.length) return\n\n const bindingSeparator = options.bindingSeparator ?? \", \"\n const dedupe = options.dedupe !== false\n const seen = dedupe ? new Set<string>() : undefined\n let formatted = \"\"\n let itemCount = 0\n\n // One pass keeps dedupe, filtering, and joining allocation-light for large binding lists.\n for (const binding of bindings) {\n const item = formatKeySequence(binding.sequence, options)\n if (!item) continue\n\n if (seen) {\n if (seen.has(item)) continue\n seen.add(item)\n }\n\n formatted = itemCount === 0 ? item : `${formatted}${bindingSeparator}${item}`\n itemCount += 1\n }\n\n return formatted\n}\n"
8
8
  ],
9
- "mappings": "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",
10
- "debugId": "418A62FEB87D11F164756E2164756E21",
9
+ "mappings": ";;AAoBA,IAAM,SAAS,OAAO,UAAU;AAChC,IAAM,iBAAqC,OAAO,OAAO,CAAC,CAAC;AAqC3D,SAAS,QAAQ,CAAC,OAAkD;AAAA,EAClE,OAAO,CAAC,CAAC,SAAS,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK;AAAA;AAGrE,SAAS,SAAS,CAAC,OAAkC;AAAA,EACnD,OAAO,OAAO,UAAU,YAAY,SAAS,KAAK;AAAA;AAGpD,SAAS,YAAY,CAAC,KAAuB;AAAA,EAC3C,IAAI,OAAO,QAAQ,UAAU;AAAA,IAC3B,OAAO;AAAA,EACT;AAAA,EAEA,OAAO,KAAK,IAAI;AAAA;AAGlB,SAAS,gBAAgB,CAAC,SAAyB;AAAA,EACjD,IAAI,QAAQ,WAAW,GAAG;AAAA,IACxB,MAAM,IAAI,MAAM,kDAAkD;AAAA,EACpE;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,UAAU,CAAC,SAAiB,YAAmD;AAAA,EACtF,MAAM,gBAAgB,iBAAiB,OAAO;AAAA,EAC9C,IAAI,CAAC,cAAc,CAAC,OAAO,KAAK,YAAY,aAAa,GAAG;AAAA,IAC1D,OAAO;AAAA,EACT;AAAA,EAEA,MAAM,gBAAgB,WAAW;AAAA,EACjC,IAAI,OAAO,kBAAkB,UAAU;AAAA,IACrC,MAAM,IAAI,MAAM,0CAA0C,2CAA2C;AAAA,EACvG;AAAA,EAEA,IAAI,cAAc,WAAW,GAAG;AAAA,IAC9B,MAAM,IAAI,MAAM,0CAA0C,yCAAyC;AAAA,EACrG;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,mBAAmB,CAAC,SAAiB,OAAuB;AAAA,EACnE,MAAM,WAAW,UAAU,YAAY,IAAI,aAAa,IAAI,qBAAqB;AAAA,EACjF,OAAO,IAAI,MACT,6BAA6B,wFAC/B;AAAA;AAGF,SAAS,kBAAsE,CAC7E,SACA,MACA,OAC0B;AAAA,EAC1B,IAAI,CAAC,UAAU,IAAI,GAAG;AAAA,IACpB,MAAM,oBAAoB,SAAS,KAAK;AAAA,EAC1C;AAAA,EAEA,IAAI,OAAO,SAAS,YAAY,EAAE,SAAS,OAAO;AAAA,IAChD,OAAO;AAAA,MACL,KAAK,aAAa,IAAI;AAAA,MACtB,KAAK;AAAA,IACP;AAAA,EACF;AAAA,EAEA,MAAM,MAAM,KAAK;AAAA,EACjB,IAAI,CAAC,UAAU,GAAG,GAAG;AAAA,IACnB,MAAM,oBAAoB,SAAS,KAAK;AAAA,EAC1C;AAAA,EAEA,OAAO;AAAA,OACF;AAAA,IACH,KAAK,aAAa,GAAG;AAAA,IACrB,KAAK;AAAA,EACP;AAAA;AAGF,SAAS,mBAAuE,CAC9E,SACA,OACA,iBACwC;AAAA,EACxC,IAAI,UAAU,SAAS,UAAU,QAAQ;AAAA,IACvC;AAAA,EACF;AAAA,EAEA,IAAI,MAAM,QAAQ,KAAK,GAAG;AAAA,IACxB,IAAI,MAAM,WAAW,GAAG;AAAA,MACtB;AAAA,IACF;AAAA,IAEA,MAAM,QAAQ;AAAA,IACd,MAAM,WAAW,IAAI,MAAgC,MAAM,MAAM;AAAA,IACjE,SAAS,QAAQ,EAAG,QAAQ,MAAM,QAAQ,SAAS,GAAG;AAAA,MACpD,MAAM,UAAU,mBAAmB,SAAS,MAAM,QAAS,KAAK;AAAA,MAChE,SAAS,SAAS,kBAAkB,oBAAoB,SAAS,SAAS,eAAe,IAAI;AAAA,IAC/F;AAAA,IAEA,OAAO;AAAA,EACT;AAAA,EAEA,MAAM,UAAU,mBAAmB,SAAS,KAA2C;AAAA,EACvF,OAAO,CAAC,kBAAkB,oBAAoB,SAAS,SAAS,eAAe,IAAI,OAAO;AAAA;AAG5F,SAAS,mBAAuE,CAC9E,SACA,SACA,iBAC0B;AAAA,EAC1B,MAAM,WAAW,kBAAkB,EAAE,SAAS,QAAQ,CAAC;AAAA,EACvD,IAAI,CAAC;AAAA,IAAU,OAAO;AAAA,EACtB,OAAO,KAAK,aAAa,QAAQ;AAAA;AAGnC,SAAS,eAAmE,CAC1E,WAC4B;AAAA,EAC5B,IAAI,eAAe;AAAA,EACnB,WAAW,YAAY,UAAU,OAAO,GAAG;AAAA,IACzC,gBAAgB,SAAS;AAAA,EAC3B;AAAA,EAEA,MAAM,SAAS,IAAI,MAAgC,YAAY;AAAA,EAC/D,IAAI,eAAe;AAAA,EACnB,WAAW,YAAY,UAAU,OAAO,GAAG;AAAA,IACzC,SAAS,QAAQ,EAAG,QAAQ,SAAS,QAAQ,SAAS,GAAG;AAAA,MACvD,OAAO,gBAAgB,SAAS;AAAA,MAChC,gBAAgB;AAAA,IAClB;AAAA,EACF;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,iBAAqE,CAC5E,QACA,YACA,iBACqC;AAAA,EACrC,MAAM,YAAY,IAAI;AAAA,EAEtB,WAAW,cAAc,QAAQ;AAAA,IAC/B,IAAI,CAAC,OAAO,KAAK,QAAQ,UAAU,GAAG;AAAA,MACpC;AAAA,IACF;AAAA,IAEA,MAAM,UAAU,WAAW,YAAY,UAAU;AAAA,IACjD,MAAM,kBAAkB,oBAAoB,SAAS,OAAO,aAAc,eAAe;AAAA,IAEzF,IAAI,CAAC,iBAAiB;AAAA,MACpB,UAAU,OAAO,OAAO;AAAA,IAC1B,EAAO;AAAA,MACL,UAAU,IAAI,SAAS,eAAe;AAAA;AAAA,EAE1C;AAAA,EAEA,OAAO;AAAA,IACL,UAAU,gBAAgB,SAAS;AAAA,IACnC;AAAA,EACF;AAAA;AAGF,SAAS,cAAkE,CACzE,WACA,UACmC;AAAA,EACnC,MAAM,oBAAoB,IAAI;AAAA,EAC9B,MAAM,WAAuC,CAAC;AAAA,EAE9C,WAAW,WAAW,UAAU;AAAA,IAC9B,MAAM,kBAAkB,UAAU,IAAI,OAAO;AAAA,IAC7C,IAAI,CAAC;AAAA,MAAiB;AAAA,IAEtB,kBAAkB,IAAI,SAAS,eAAe;AAAA,IAC9C,SAAS,QAAQ,EAAG,QAAQ,gBAAgB,QAAQ,SAAS,GAAG;AAAA,MAC9D,SAAS,KAAK,gBAAgB,MAAO;AAAA,IACvC;AAAA,EACF;AAAA,EAEA,OAAO,EAAE,UAAU,WAAW,kBAAkB;AAAA;AAG3C,SAAS,mBAA8F,CAC5G,QACA,SACgC;AAAA,EAChC,IAAI,gBAAgB;AAAA,EACpB,IAAI,aAAa,kBAAkB,eAAe,SAAS,YAAY,SAAS,eAAe;AAAA,EAC/F,MAAM,WAAW,IAAI;AAAA,EAErB,OAAO;AAAA,QACD,QAAQ,GAAG;AAAA,MACb,OAAO,WAAW;AAAA;AAAA,IAEpB,GAAG,CAAC,SAAS;AAAA,MACX,OAAO,WAAW,UAAU,IAAI,OAAO,KAAM;AAAA;AAAA,IAE/C,GAAG,CAAC,SAAS;AAAA,MACX,OAAO,WAAW,UAAU,IAAI,OAAO;AAAA;AAAA,IAEzC,MAAM,CAAC,MAAM,UAAU;AAAA,MACrB,MAAM,WAAW,SAAS,IAAI,IAAI;AAAA,MAClC,IAAI;AAAA,QAAU,OAAO,SAAS;AAAA,MAE9B,MAAM,OAAO,eAAe,WAAW,WAAW,QAAQ;AAAA,MAC1D,SAAS,IAAI,MAAM,IAAI;AAAA,MACvB,OAAO,KAAK;AAAA;AAAA,IAEd,IAAI,CAAC,MAAM,UAAU;AAAA,MACnB,MAAM,QAAQ,SAAS,IAAI,IAAI;AAAA,MAC/B,IAAI,CAAC;AAAA,QAAO,OAAO,CAAC;AAAA,MAEpB,MAAM,SAAqC,CAAC;AAAA,MAC5C,WAAW,WAAW,UAAU;AAAA,QAC9B,MAAM,WAAW,MAAM,UAAU,IAAI,OAAO;AAAA,QAC5C,IAAI,CAAC;AAAA,UAAU;AAAA,QACf,SAAS,QAAQ,EAAG,QAAQ,SAAS,QAAQ,SAAS,GAAG;AAAA,UACvD,OAAO,KAAK,SAAS,MAAO;AAAA,QAC9B;AAAA,MACF;AAAA,MAEA,OAAO;AAAA;AAAA,IAET,IAAI,CAAC,MAAM,UAAU;AAAA,MACnB,MAAM,QAAQ,SAAS,IAAI,IAAI;AAAA,MAC/B,IAAI,CAAC;AAAA,QAAO,OAAO,CAAC;AAAA,MACpB,IAAI,SAAS,WAAW;AAAA,QAAG,OAAO,MAAM;AAAA,MAExC,IAAI,SAAS,WAAW,GAAG;AAAA,QACzB,MAAM,UAAU,SAAS;AAAA,QACzB,MAAM,SAAqC,CAAC;AAAA,QAC5C,SAAS,QAAQ,EAAG,QAAQ,MAAM,SAAS,QAAQ,SAAS,GAAG;AAAA,UAC7D,MAAM,UAAU,MAAM,SAAS;AAAA,UAC/B,IAAI,OAAO,QAAQ,QAAQ,YAAY,QAAQ,QAAQ;AAAA,YAAS;AAAA,UAChE,OAAO,KAAK,OAAO;AAAA,QACrB;AAAA,QAEA,OAAO;AAAA,MACT;AAAA,MAEA,MAAM,UAAU,IAAI,IAAI,QAAQ;AAAA,MAChC,MAAM,SAAqC,CAAC;AAAA,MAC5C,SAAS,QAAQ,EAAG,QAAQ,MAAM,SAAS,QAAQ,SAAS,GAAG;AAAA,QAC7D,MAAM,UAAU,MAAM,SAAS;AAAA,QAC/B,IAAI,OAAO,QAAQ,QAAQ,YAAY,QAAQ,IAAI,QAAQ,GAAG;AAAA,UAAG;AAAA,QACjE,OAAO,KAAK,OAAO;AAAA,MACrB;AAAA,MAEA,OAAO;AAAA;AAAA,IAET,UAAU,CAAC,MAAM;AAAA,MACf,IAAI,SAAS,WAAW;AAAA,QACtB,SAAS,MAAM;AAAA,QACf;AAAA,MACF;AAAA,MAEA,SAAS,OAAO,IAAI;AAAA;AAAA,IAEtB,MAAM,CAAC,YAAY;AAAA,MACjB,IAAI,YAAY;AAAA,QACd,gBAAgB;AAAA,MAClB;AAAA,MAEA,aAAa,kBAAkB,eAAe,SAAS,YAAY,SAAS,eAAe;AAAA,MAC3F,SAAS,MAAM;AAAA;AAAA,EAEnB;AAAA;;AC9SF,SAAS,mBAAmB,CAAC,OAAkC;AAAA,EAC7D,OAAO,OAAO,UAAU,YAAa,CAAC,CAAC,SAAS,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK;AAAA;AAG5F,SAAS,eAA0F,CACxG,UACA,SAC4B;AAAA,EAC5B,MAAM,aAAyC,CAAC;AAAA,EAChD,MAAM,mBAAmB,IAAI;AAAA,EAE7B,YAAY,SAAS,QAAQ,OAAO,QAAQ,QAAQ,GAAG;AAAA,IACrD,IAAI,CAAC,oBAAoB,GAAG,GAAG;AAAA,MAC7B,MAAM,QAAQ,IAAI,MAChB,gCAAgC,yFAClC;AAAA,MAEA,SAAS,UAAU;AAAA,QACjB,MAAM;AAAA,QACN;AAAA,QACA,OAAO;AAAA,QACP,QAAQ;AAAA,MACV,CAAC;AAAA,MACD;AAAA,IACF;AAAA,IAEA,MAAM,oBAAoB,QAAQ,KAAK;AAAA,IAEvC,MAAM,cAAc;AAAA,MAClB,KAAK,OAAO,QAAQ,WAAW,MAAM,KAAK,IAAI;AAAA,MAC9C,KAAK;AAAA,IACP;AAAA,IAEA,MAAM,gBAAgB,iBAAiB,IAAI,iBAAiB;AAAA,IAC5D,IAAI,kBAAkB,WAAW;AAAA,MAC/B,MAAM,kBAAkB,WAAW;AAAA,MACnC,SAAS,YAAY;AAAA,QACnB,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa,gBAAgB;AAAA,QAC7B,SAAS,YAAY;AAAA,MACvB,CAAC;AAAA,MACD,WAAW,iBAAiB;AAAA,MAC5B;AAAA,IACF;AAAA,IAEA,iBAAiB,IAAI,mBAAmB,WAAW,MAAM;AAAA,IACzD,WAAW,KAAK,WAAW;AAAA,EAC7B;AAAA,EAEA,OAAO;AAAA;;ACpCT,SAAS,YAAY,CAAC,MAA6B,SAA2C;AAAA,EAC5F,IAAI,KAAK,WAAW;AAAA,IAClB,MAAM,eAAe,QAAQ;AAAA,IAC7B,IAAI,CAAC;AAAA,MAAc,OAAO,KAAK;AAAA,IAC/B,IAAI,OAAO,iBAAiB;AAAA,MAAY,OAAO,aAAa,KAAK,WAAW,IAAI,KAAK,KAAK;AAAA,IAC1F,OAAO,aAAa,KAAK,cAAc,KAAK;AAAA,EAC9C;AAAA,EAEA,IAAI,KAAK,aAAa;AAAA,IACpB,MAAM,iBAAiB,QAAQ;AAAA,IAC/B,IAAI,CAAC;AAAA,MAAgB,OAAO,KAAK;AAAA,IACjC,IAAI,OAAO,mBAAmB;AAAA,MAAY,OAAO,eAAe,KAAK,aAAa,IAAI,KAAK,KAAK;AAAA,IAChG,OAAO,eAAe,KAAK,gBAAgB,KAAK;AAAA,EAClD;AAAA,EAEA,IAAI,CAAC,QAAQ,kBAAkB,CAAC,QAAQ;AAAA,IAAiB,OAAO,KAAK;AAAA,EAGrE,MAAM,SAAS,KAAK;AAAA,EACpB,MAAM,kBAAkB,QAAQ;AAAA,EAChC,IAAI,YAAY;AAAA,EAChB,IAAI,aAAa;AAAA,EAEjB,IAAI,OAAO,MAAM;AAAA,IACf,YAAY,iBAAiB,QAAQ;AAAA,IACrC,aAAa;AAAA,EACf;AAAA,EAEA,IAAI,OAAO,OAAO;AAAA,IAChB,MAAM,QAAQ,iBAAiB,SAAS;AAAA,IACxC,YAAY,eAAe,IAAI,QAAQ,GAAG,aAAa;AAAA,IACvD,cAAc;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,MAAM;AAAA,IACf,MAAM,QAAQ,iBAAiB,QAAQ;AAAA,IACvC,YAAY,eAAe,IAAI,QAAQ,GAAG,aAAa;AAAA,IACvD,cAAc;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAO;AAAA,IAChB,MAAM,QAAQ,iBAAiB,SAAS;AAAA,IACxC,YAAY,eAAe,IAAI,QAAQ,GAAG,aAAa;AAAA,IACvD,cAAc;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,OAAO;AAAA,IAChB,MAAM,QAAQ,iBAAiB,SAAS;AAAA,IACxC,YAAY,eAAe,IAAI,QAAQ,GAAG,aAAa;AAAA,IACvD,cAAc;AAAA,EAChB;AAAA,EAEA,MAAM,OAAO,OAAO,SAAS,WAAW,UAAU,OAAO;AAAA,EACzD,MAAM,UAAU,QAAQ,iBAAiB,SAAS;AAAA,EAClD,OAAO,eAAe,IAAI,UAAU,GAAG,aAAa;AAAA;AAG/C,SAAS,iBAAiB,CAC/B,OACA,UAAoC,CAAC,GAC7B;AAAA,EACR,IAAI,CAAC,SAAS,MAAM,WAAW;AAAA,IAAG,OAAO;AAAA,EAGzC,MAAM,YAAY,QAAQ,aAAa;AAAA,EACvC,IAAI,YAAY,aAAa,MAAM,IAAK,OAAO;AAAA,EAC/C,SAAS,QAAQ,EAAG,QAAQ,MAAM,QAAQ,SAAS,GAAG;AAAA,IACpD,aAAa,YAAY,aAAa,MAAM,QAAS,OAAO;AAAA,EAC9D;AAAA,EAEA,OAAO;AAAA;AAGF,SAAS,qBAAqB,CACnC,UACA,UAAwC,CAAC,GACrB;AAAA,EACpB,IAAI,CAAC,UAAU;AAAA,IAAQ;AAAA,EAEvB,MAAM,mBAAmB,QAAQ,oBAAoB;AAAA,EACrD,MAAM,SAAS,QAAQ,WAAW;AAAA,EAClC,MAAM,OAAO,SAAS,IAAI,MAAgB;AAAA,EAC1C,IAAI,YAAY;AAAA,EAChB,IAAI,YAAY;AAAA,EAGhB,WAAW,WAAW,UAAU;AAAA,IAC9B,MAAM,OAAO,kBAAkB,QAAQ,UAAU,OAAO;AAAA,IACxD,IAAI,CAAC;AAAA,MAAM;AAAA,IAEX,IAAI,MAAM;AAAA,MACR,IAAI,KAAK,IAAI,IAAI;AAAA,QAAG;AAAA,MACpB,KAAK,IAAI,IAAI;AAAA,IACf;AAAA,IAEA,YAAY,cAAc,IAAI,OAAO,GAAG,YAAY,mBAAmB;AAAA,IACvE,aAAa;AAAA,EACf;AAAA,EAEA,OAAO;AAAA;",
10
+ "debugId": "425AFADC60FBA39D64756E2164756E21",
11
11
  "names": []
12
12
  }
package/src/html.js CHANGED
@@ -1,6 +1,4 @@
1
1
  // @bun
2
- import"../chunks/index-p35cyhc4.js";
3
-
4
2
  // src/html.ts
5
3
  import { Keymap } from "@opentui/keymap";
6
4
  import { registerDefaultKeys, registerEnabledFields, registerMetadataFields } from "@opentui/keymap/addons";
@@ -287,13 +285,13 @@ function createDefaultHtmlKeymap(root) {
287
285
  return keymap;
288
286
  }
289
287
  export {
290
- normalizeHtmlKeyName,
291
- htmlEventMatchResolver,
292
- createHtmlKeymapHost,
293
- createHtmlKeymapEvent,
288
+ createDefaultHtmlKeymap,
294
289
  createHtmlKeymap,
295
- createDefaultHtmlKeymap
290
+ createHtmlKeymapEvent,
291
+ createHtmlKeymapHost,
292
+ htmlEventMatchResolver,
293
+ normalizeHtmlKeyName
296
294
  };
297
295
 
298
- //# debugId=CEB46D30700A1A7064756E2164756E21
296
+ //# debugId=ED531E4A3D8D0B1564756E2164756E21
299
297
  //# sourceMappingURL=html.js.map
package/src/html.js.map CHANGED
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "import { Keymap } from \"@opentui/keymap\"\nimport { registerDefaultKeys, registerEnabledFields, registerMetadataFields } from \"@opentui/keymap/addons\"\nimport type {\n EventMatchResolver,\n HostMetadata,\n HostPlatform,\n KeyStrokeInput,\n KeymapEvent,\n KeymapHost,\n} from \"@opentui/keymap\"\n\nexport interface HtmlKeymapEvent extends KeymapEvent {\n readonly originalEvent?: KeyboardEvent\n}\n\ninterface HtmlKeyboardEventLike {\n key: string\n ctrlKey: boolean\n shiftKey: boolean\n altKey: boolean\n metaKey: boolean\n preventDefault(): void\n stopPropagation(): void\n}\n\ninterface MutationObserverLike {\n observe(target: EventTarget, options?: unknown): void\n disconnect(): void\n}\n\ninterface MutationObserverCtorLike {\n new (callback: () => void): MutationObserverLike\n}\n\nconst HTML_KEY_NAME_ALIASES = new Map<string, string>([\n [\" \", \"space\"],\n [\"Spacebar\", \"space\"],\n [\"ArrowUp\", \"up\"],\n [\"ArrowDown\", \"down\"],\n [\"ArrowLeft\", \"left\"],\n [\"ArrowRight\", \"right\"],\n [\"Escape\", \"escape\"],\n [\"Esc\", \"escape\"],\n [\"Enter\", \"return\"],\n [\"Backspace\", \"backspace\"],\n [\"Delete\", \"delete\"],\n [\"Tab\", \"tab\"],\n [\"Home\", \"home\"],\n [\"End\", \"end\"],\n [\"PageUp\", \"pageup\"],\n [\"PageDown\", \"pagedown\"],\n [\"Insert\", \"insert\"],\n [\"CapsLock\", \"capslock\"],\n [\"NumLock\", \"numlock\"],\n [\"ScrollLock\", \"scrolllock\"],\n [\"ContextMenu\", \"menu\"],\n [\"Meta\", \"super\"],\n [\"OS\", \"super\"],\n [\"Alt\", \"alt\"],\n [\"Control\", \"control\"],\n [\"Shift\", \"shift\"],\n])\n\nfunction normalizeHostPlatform(value: string | undefined): HostPlatform {\n const normalized = value?.trim().toLowerCase()\n if (!normalized) {\n return \"unknown\"\n }\n\n if (normalized.includes(\"mac\") || normalized.includes(\"darwin\")) {\n return \"macos\"\n }\n\n if (normalized.includes(\"win\")) {\n return \"windows\"\n }\n\n if (normalized.includes(\"linux\") || normalized.includes(\"x11\")) {\n return \"linux\"\n }\n\n return \"unknown\"\n}\n\nfunction detectBrowserPlatform(): HostPlatform {\n const navigatorLike = globalThis.navigator as\n | (Navigator & { userAgentData?: { platform?: string }; userAgent?: string })\n | undefined\n const userAgentPlatform = navigatorLike?.userAgentData?.platform\n const platform = normalizeHostPlatform(userAgentPlatform)\n if (platform !== \"unknown\") {\n return platform\n }\n\n return normalizeHostPlatform(navigatorLike?.platform ?? navigatorLike?.userAgent)\n}\n\nfunction createHtmlHostMetadata(): HostMetadata {\n const platform = detectBrowserPlatform()\n\n return {\n platform,\n primaryModifier: platform === \"macos\" ? \"super\" : platform === \"unknown\" ? \"unknown\" : \"ctrl\",\n modifiers: {\n ctrl: \"supported\",\n shift: \"supported\",\n meta: \"supported\",\n super: \"supported\",\n hyper: \"unsupported\",\n },\n }\n}\n\nfunction isPrintableSymbol(name: string): boolean {\n return name.length === 1 && !/^[a-z0-9]$/i.test(name)\n}\n\nfunction getHtmlEventMatchInputs(event: HtmlKeymapEvent): KeyStrokeInput[] {\n const primary: KeyStrokeInput = {\n name: event.name,\n ctrl: event.ctrl,\n shift: event.shift,\n meta: event.meta,\n super: event.super ?? false,\n hyper: event.hyper || undefined,\n }\n\n if (!primary.shift || !isPrintableSymbol(primary.name)) {\n return [primary]\n }\n\n return [\n primary,\n {\n ...primary,\n shift: false,\n },\n ]\n}\n\nclass HtmlWrappedKeymapEvent implements HtmlKeymapEvent {\n public propagationStopped = false\n\n constructor(\n public readonly name: string,\n public readonly ctrl: boolean,\n public readonly shift: boolean,\n public readonly meta: boolean,\n private readonly superKey: boolean,\n public readonly originalEvent?: KeyboardEvent,\n ) {}\n\n public get super(): boolean {\n return this.superKey\n }\n\n public preventDefault(): void {\n this.originalEvent?.preventDefault()\n }\n\n public stopPropagation(): void {\n this.propagationStopped = true\n this.originalEvent?.stopPropagation()\n }\n}\n\nfunction getMutationObserverCtor(): MutationObserverCtorLike | undefined {\n return globalThis.MutationObserver as MutationObserverCtorLike | undefined\n}\n\nexport function normalizeHtmlKeyName(key: string): string {\n const aliased = HTML_KEY_NAME_ALIASES.get(key)\n if (aliased) {\n return aliased\n }\n\n if (/^F\\d{1,2}$/i.test(key)) {\n return key.toLowerCase()\n }\n\n if (key.length === 1) {\n return key.toLowerCase()\n }\n\n return key.trim().toLowerCase().replace(/\\s+/g, \"\")\n}\n\nexport function createHtmlKeymapEvent(event?: KeyboardEvent | HtmlKeyboardEventLike): HtmlKeymapEvent {\n if (!event) {\n return new HtmlWrappedKeymapEvent(\"command\", false, false, false, false)\n }\n\n const KeyboardEventCtor = globalThis.KeyboardEvent\n\n // Keymap uses `meta` for Alt/Option and `super` for the platform Meta key,\n // so browser `altKey` maps to `meta` and `metaKey` maps to `super`.\n return new HtmlWrappedKeymapEvent(\n normalizeHtmlKeyName(event.key),\n event.ctrlKey,\n event.shiftKey,\n event.altKey,\n event.metaKey,\n KeyboardEventCtor && event instanceof KeyboardEventCtor ? event : undefined,\n )\n}\n\nclass HtmlKeymapHost implements KeymapHost<HTMLElement, HtmlKeymapEvent> {\n public readonly metadata = createHtmlHostMetadata()\n public readonly rootTarget: HTMLElement\n public readonly isDestroyed = false\n\n private observer?: MutationObserverLike\n private readonly targetDestroyListeners = new Map<HTMLElement, Set<() => void>>()\n\n constructor(root: HTMLElement) {\n this.rootTarget = root\n }\n\n public getFocusedTarget(): HTMLElement | null {\n const active = this.rootTarget.ownerDocument.activeElement\n if (!active || typeof active !== \"object\") {\n return null\n }\n\n if (active === this.rootTarget || this.rootTarget.contains(active as HTMLElement)) {\n return active as HTMLElement\n }\n\n return null\n }\n\n public getParentTarget(target: HTMLElement): HTMLElement | null {\n return target.parentElement\n }\n\n public isTargetDestroyed(target: HTMLElement): boolean {\n if (target === this.rootTarget) {\n return false\n }\n\n return !target.isConnected || !this.rootTarget.contains(target)\n }\n\n public onKeyPress(listener: (event: HtmlKeymapEvent) => void): () => void {\n const onKeyDown = (event: KeyboardEvent) => {\n listener(createHtmlKeymapEvent(event))\n }\n\n this.rootTarget.addEventListener(\"keydown\", onKeyDown, { capture: true })\n return () => {\n this.rootTarget.removeEventListener(\"keydown\", onKeyDown, { capture: true })\n }\n }\n\n public onKeyRelease(listener: (event: HtmlKeymapEvent) => void): () => void {\n const onKeyUp = (event: KeyboardEvent) => {\n listener(createHtmlKeymapEvent(event))\n }\n\n this.rootTarget.addEventListener(\"keyup\", onKeyUp, { capture: true })\n return () => {\n this.rootTarget.removeEventListener(\"keyup\", onKeyUp, { capture: true })\n }\n }\n\n public onFocusChange(listener: (target: HTMLElement | null) => void): () => void {\n const notifyFocus = () => {\n queueMicrotask(() => {\n listener(this.getFocusedTarget())\n })\n }\n\n this.rootTarget.addEventListener(\"focusin\", notifyFocus, { capture: true })\n this.rootTarget.addEventListener(\"focusout\", notifyFocus, { capture: true })\n return () => {\n this.rootTarget.removeEventListener(\"focusin\", notifyFocus, { capture: true })\n this.rootTarget.removeEventListener(\"focusout\", notifyFocus, { capture: true })\n }\n }\n\n public onTargetDestroy(target: HTMLElement, listener: () => void): () => void {\n let listeners = this.targetDestroyListeners.get(target)\n if (!listeners) {\n listeners = new Set()\n this.targetDestroyListeners.set(target, listeners)\n }\n\n listeners.add(listener)\n this.ensureObserver()\n this.flushDisconnectedTargets()\n\n return () => {\n const current = this.targetDestroyListeners.get(target)\n if (!current) {\n return\n }\n\n current.delete(listener)\n if (current.size === 0) {\n this.targetDestroyListeners.delete(target)\n }\n\n if (this.targetDestroyListeners.size === 0) {\n this.disconnectObserver()\n }\n }\n }\n\n public createCommandEvent(): HtmlKeymapEvent {\n return createHtmlKeymapEvent()\n }\n\n private ensureObserver(): void {\n if (this.observer || this.targetDestroyListeners.size === 0) {\n return\n }\n\n const MutationObserverCtor = getMutationObserverCtor()\n if (!MutationObserverCtor) {\n return\n }\n\n this.observer = new MutationObserverCtor(() => {\n this.flushDisconnectedTargets()\n })\n this.observer.observe(this.rootTarget, {\n childList: true,\n subtree: true,\n })\n }\n\n private disconnectObserver(): void {\n if (!this.observer) {\n return\n }\n\n this.observer.disconnect()\n this.observer = undefined\n }\n\n private flushDisconnectedTargets(): void {\n for (const [target, listeners] of this.targetDestroyListeners) {\n if (!this.isTargetDestroyed(target)) {\n continue\n }\n\n this.targetDestroyListeners.delete(target)\n for (const current of [...listeners]) {\n current()\n }\n }\n\n if (this.targetDestroyListeners.size === 0) {\n this.disconnectObserver()\n }\n }\n}\n\nexport function createHtmlKeymapHost(root: HTMLElement): KeymapHost<HTMLElement, HtmlKeymapEvent> {\n return new HtmlKeymapHost(root)\n}\n\nexport const htmlEventMatchResolver: EventMatchResolver<HtmlKeymapEvent> = (event, ctx) => {\n return getHtmlEventMatchInputs(event).map((candidate) => ctx.resolveKey(candidate))\n}\n\nexport function createHtmlKeymap(root: HTMLElement): Keymap<HTMLElement, HtmlKeymapEvent> {\n return new Keymap(createHtmlKeymapHost(root))\n}\n\nexport function createDefaultHtmlKeymap(root: HTMLElement): Keymap<HTMLElement, HtmlKeymapEvent> {\n const keymap = new Keymap(createHtmlKeymapHost(root))\n registerDefaultKeys(keymap)\n registerEnabledFields(keymap)\n registerMetadataFields(keymap)\n keymap.prependEventMatchResolver(htmlEventMatchResolver)\n return keymap\n}\n"
6
6
  ],
7
- "mappings": ";;;;AAAA;AACA;AAiCA,IAAM,wBAAwB,IAAI,IAAoB;AAAA,EACpD,CAAC,KAAK,OAAO;AAAA,EACb,CAAC,YAAY,OAAO;AAAA,EACpB,CAAC,WAAW,IAAI;AAAA,EAChB,CAAC,aAAa,MAAM;AAAA,EACpB,CAAC,aAAa,MAAM;AAAA,EACpB,CAAC,cAAc,OAAO;AAAA,EACtB,CAAC,UAAU,QAAQ;AAAA,EACnB,CAAC,OAAO,QAAQ;AAAA,EAChB,CAAC,SAAS,QAAQ;AAAA,EAClB,CAAC,aAAa,WAAW;AAAA,EACzB,CAAC,UAAU,QAAQ;AAAA,EACnB,CAAC,OAAO,KAAK;AAAA,EACb,CAAC,QAAQ,MAAM;AAAA,EACf,CAAC,OAAO,KAAK;AAAA,EACb,CAAC,UAAU,QAAQ;AAAA,EACnB,CAAC,YAAY,UAAU;AAAA,EACvB,CAAC,UAAU,QAAQ;AAAA,EACnB,CAAC,YAAY,UAAU;AAAA,EACvB,CAAC,WAAW,SAAS;AAAA,EACrB,CAAC,cAAc,YAAY;AAAA,EAC3B,CAAC,eAAe,MAAM;AAAA,EACtB,CAAC,QAAQ,OAAO;AAAA,EAChB,CAAC,MAAM,OAAO;AAAA,EACd,CAAC,OAAO,KAAK;AAAA,EACb,CAAC,WAAW,SAAS;AAAA,EACrB,CAAC,SAAS,OAAO;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAyC;AAAA,EACtE,MAAM,aAAa,OAAO,KAAK,EAAE,YAAY;AAAA,EAC7C,IAAI,CAAC,YAAY;AAAA,IACf,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,WAAW,SAAS,KAAK,KAAK,WAAW,SAAS,QAAQ,GAAG;AAAA,IAC/D,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,WAAW,SAAS,KAAK,GAAG;AAAA,IAC9B,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,WAAW,SAAS,OAAO,KAAK,WAAW,SAAS,KAAK,GAAG;AAAA,IAC9D,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,qBAAqB,GAAiB;AAAA,EAC7C,MAAM,gBAAgB,WAAW;AAAA,EAGjC,MAAM,oBAAoB,eAAe,eAAe;AAAA,EACxD,MAAM,WAAW,sBAAsB,iBAAiB;AAAA,EACxD,IAAI,aAAa,WAAW;AAAA,IAC1B,OAAO;AAAA,EACT;AAAA,EAEA,OAAO,sBAAsB,eAAe,YAAY,eAAe,SAAS;AAAA;AAGlF,SAAS,sBAAsB,GAAiB;AAAA,EAC9C,MAAM,WAAW,sBAAsB;AAAA,EAEvC,OAAO;AAAA,IACL;AAAA,IACA,iBAAiB,aAAa,UAAU,UAAU,aAAa,YAAY,YAAY;AAAA,IACvF,WAAW;AAAA,MACT,MAAM;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,EACF;AAAA;AAGF,SAAS,iBAAiB,CAAC,MAAuB;AAAA,EAChD,OAAO,KAAK,WAAW,KAAK,CAAC,cAAc,KAAK,IAAI;AAAA;AAGtD,SAAS,uBAAuB,CAAC,OAA0C;AAAA,EACzE,MAAM,UAA0B;AAAA,IAC9B,MAAM,MAAM;AAAA,IACZ,MAAM,MAAM;AAAA,IACZ,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,IACZ,OAAO,MAAM,SAAS;AAAA,IACtB,OAAO,MAAM,SAAS;AAAA,EACxB;AAAA,EAEA,IAAI,CAAC,QAAQ,SAAS,CAAC,kBAAkB,QAAQ,IAAI,GAAG;AAAA,IACtD,OAAO,CAAC,OAAO;AAAA,EACjB;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IACA;AAAA,SACK;AAAA,MACH,OAAO;AAAA,IACT;AAAA,EACF;AAAA;AAAA;AAGF,MAAM,uBAAkD;AAAA,EAIpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACC;AAAA,EACD;AAAA,EARX,qBAAqB;AAAA,EAE5B,WAAW,CACO,MACA,MACA,OACA,MACC,UACD,eAChB;AAAA,IANgB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACC;AAAA,IACD;AAAA;AAAA,MAGP,KAAK,GAAY;AAAA,IAC1B,OAAO,KAAK;AAAA;AAAA,EAGP,cAAc,GAAS;AAAA,IAC5B,KAAK,eAAe,eAAe;AAAA;AAAA,EAG9B,eAAe,GAAS;AAAA,IAC7B,KAAK,qBAAqB;AAAA,IAC1B,KAAK,eAAe,gBAAgB;AAAA;AAExC;AAEA,SAAS,uBAAuB,GAAyC;AAAA,EACvE,OAAO,WAAW;AAAA;AAGb,SAAS,oBAAoB,CAAC,KAAqB;AAAA,EACxD,MAAM,UAAU,sBAAsB,IAAI,GAAG;AAAA,EAC7C,IAAI,SAAS;AAAA,IACX,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,cAAc,KAAK,GAAG,GAAG;AAAA,IAC3B,OAAO,IAAI,YAAY;AAAA,EACzB;AAAA,EAEA,IAAI,IAAI,WAAW,GAAG;AAAA,IACpB,OAAO,IAAI,YAAY;AAAA,EACzB;AAAA,EAEA,OAAO,IAAI,KAAK,EAAE,YAAY,EAAE,QAAQ,QAAQ,EAAE;AAAA;AAG7C,SAAS,qBAAqB,CAAC,OAAgE;AAAA,EACpG,IAAI,CAAC,OAAO;AAAA,IACV,OAAO,IAAI,uBAAuB,WAAW,OAAO,OAAO,OAAO,KAAK;AAAA,EACzE;AAAA,EAEA,MAAM,oBAAoB,WAAW;AAAA,EAIrC,OAAO,IAAI,uBACT,qBAAqB,MAAM,GAAG,GAC9B,MAAM,SACN,MAAM,UACN,MAAM,QACN,MAAM,SACN,qBAAqB,iBAAiB,oBAAoB,QAAQ,SACpE;AAAA;AAAA;AAGF,MAAM,eAAmE;AAAA,EACvD,WAAW,uBAAuB;AAAA,EAClC;AAAA,EACA,cAAc;AAAA,EAEtB;AAAA,EACS,yBAAyB,IAAI;AAAA,EAE9C,WAAW,CAAC,MAAmB;AAAA,IAC7B,KAAK,aAAa;AAAA;AAAA,EAGb,gBAAgB,GAAuB;AAAA,IAC5C,MAAM,SAAS,KAAK,WAAW,cAAc;AAAA,IAC7C,IAAI,CAAC,UAAU,OAAO,WAAW,UAAU;AAAA,MACzC,OAAO;AAAA,IACT;AAAA,IAEA,IAAI,WAAW,KAAK,cAAc,KAAK,WAAW,SAAS,MAAqB,GAAG;AAAA,MACjF,OAAO;AAAA,IACT;AAAA,IAEA,OAAO;AAAA;AAAA,EAGF,eAAe,CAAC,QAAyC;AAAA,IAC9D,OAAO,OAAO;AAAA;AAAA,EAGT,iBAAiB,CAAC,QAA8B;AAAA,IACrD,IAAI,WAAW,KAAK,YAAY;AAAA,MAC9B,OAAO;AAAA,IACT;AAAA,IAEA,OAAO,CAAC,OAAO,eAAe,CAAC,KAAK,WAAW,SAAS,MAAM;AAAA;AAAA,EAGzD,UAAU,CAAC,UAAwD;AAAA,IACxE,MAAM,YAAY,CAAC,UAAyB;AAAA,MAC1C,SAAS,sBAAsB,KAAK,CAAC;AAAA;AAAA,IAGvC,KAAK,WAAW,iBAAiB,WAAW,WAAW,EAAE,SAAS,KAAK,CAAC;AAAA,IACxE,OAAO,MAAM;AAAA,MACX,KAAK,WAAW,oBAAoB,WAAW,WAAW,EAAE,SAAS,KAAK,CAAC;AAAA;AAAA;AAAA,EAIxE,YAAY,CAAC,UAAwD;AAAA,IAC1E,MAAM,UAAU,CAAC,UAAyB;AAAA,MACxC,SAAS,sBAAsB,KAAK,CAAC;AAAA;AAAA,IAGvC,KAAK,WAAW,iBAAiB,SAAS,SAAS,EAAE,SAAS,KAAK,CAAC;AAAA,IACpE,OAAO,MAAM;AAAA,MACX,KAAK,WAAW,oBAAoB,SAAS,SAAS,EAAE,SAAS,KAAK,CAAC;AAAA;AAAA;AAAA,EAIpE,aAAa,CAAC,UAA4D;AAAA,IAC/E,MAAM,cAAc,MAAM;AAAA,MACxB,eAAe,MAAM;AAAA,QACnB,SAAS,KAAK,iBAAiB,CAAC;AAAA,OACjC;AAAA;AAAA,IAGH,KAAK,WAAW,iBAAiB,WAAW,aAAa,EAAE,SAAS,KAAK,CAAC;AAAA,IAC1E,KAAK,WAAW,iBAAiB,YAAY,aAAa,EAAE,SAAS,KAAK,CAAC;AAAA,IAC3E,OAAO,MAAM;AAAA,MACX,KAAK,WAAW,oBAAoB,WAAW,aAAa,EAAE,SAAS,KAAK,CAAC;AAAA,MAC7E,KAAK,WAAW,oBAAoB,YAAY,aAAa,EAAE,SAAS,KAAK,CAAC;AAAA;AAAA;AAAA,EAI3E,eAAe,CAAC,QAAqB,UAAkC;AAAA,IAC5E,IAAI,YAAY,KAAK,uBAAuB,IAAI,MAAM;AAAA,IACtD,IAAI,CAAC,WAAW;AAAA,MACd,YAAY,IAAI;AAAA,MAChB,KAAK,uBAAuB,IAAI,QAAQ,SAAS;AAAA,IACnD;AAAA,IAEA,UAAU,IAAI,QAAQ;AAAA,IACtB,KAAK,eAAe;AAAA,IACpB,KAAK,yBAAyB;AAAA,IAE9B,OAAO,MAAM;AAAA,MACX,MAAM,UAAU,KAAK,uBAAuB,IAAI,MAAM;AAAA,MACtD,IAAI,CAAC,SAAS;AAAA,QACZ;AAAA,MACF;AAAA,MAEA,QAAQ,OAAO,QAAQ;AAAA,MACvB,IAAI,QAAQ,SAAS,GAAG;AAAA,QACtB,KAAK,uBAAuB,OAAO,MAAM;AAAA,MAC3C;AAAA,MAEA,IAAI,KAAK,uBAAuB,SAAS,GAAG;AAAA,QAC1C,KAAK,mBAAmB;AAAA,MAC1B;AAAA;AAAA;AAAA,EAIG,kBAAkB,GAAoB;AAAA,IAC3C,OAAO,sBAAsB;AAAA;AAAA,EAGvB,cAAc,GAAS;AAAA,IAC7B,IAAI,KAAK,YAAY,KAAK,uBAAuB,SAAS,GAAG;AAAA,MAC3D;AAAA,IACF;AAAA,IAEA,MAAM,uBAAuB,wBAAwB;AAAA,IACrD,IAAI,CAAC,sBAAsB;AAAA,MACzB;AAAA,IACF;AAAA,IAEA,KAAK,WAAW,IAAI,qBAAqB,MAAM;AAAA,MAC7C,KAAK,yBAAyB;AAAA,KAC/B;AAAA,IACD,KAAK,SAAS,QAAQ,KAAK,YAAY;AAAA,MACrC,WAAW;AAAA,MACX,SAAS;AAAA,IACX,CAAC;AAAA;AAAA,EAGK,kBAAkB,GAAS;AAAA,IACjC,IAAI,CAAC,KAAK,UAAU;AAAA,MAClB;AAAA,IACF;AAAA,IAEA,KAAK,SAAS,WAAW;AAAA,IACzB,KAAK,WAAW;AAAA;AAAA,EAGV,wBAAwB,GAAS;AAAA,IACvC,YAAY,QAAQ,cAAc,KAAK,wBAAwB;AAAA,MAC7D,IAAI,CAAC,KAAK,kBAAkB,MAAM,GAAG;AAAA,QACnC;AAAA,MACF;AAAA,MAEA,KAAK,uBAAuB,OAAO,MAAM;AAAA,MACzC,WAAW,WAAW,CAAC,GAAG,SAAS,GAAG;AAAA,QACpC,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,IAEA,IAAI,KAAK,uBAAuB,SAAS,GAAG;AAAA,MAC1C,KAAK,mBAAmB;AAAA,IAC1B;AAAA;AAEJ;AAEO,SAAS,oBAAoB,CAAC,MAA6D;AAAA,EAChG,OAAO,IAAI,eAAe,IAAI;AAAA;AAGzB,IAAM,yBAA8D,CAAC,OAAO,QAAQ;AAAA,EACzF,OAAO,wBAAwB,KAAK,EAAE,IAAI,CAAC,cAAc,IAAI,WAAW,SAAS,CAAC;AAAA;AAG7E,SAAS,gBAAgB,CAAC,MAAyD;AAAA,EACxF,OAAO,IAAI,OAAO,qBAAqB,IAAI,CAAC;AAAA;AAGvC,SAAS,uBAAuB,CAAC,MAAyD;AAAA,EAC/F,MAAM,SAAS,IAAI,OAAO,qBAAqB,IAAI,CAAC;AAAA,EACpD,oBAAoB,MAAM;AAAA,EAC1B,sBAAsB,MAAM;AAAA,EAC5B,uBAAuB,MAAM;AAAA,EAC7B,OAAO,0BAA0B,sBAAsB;AAAA,EACvD,OAAO;AAAA;",
8
- "debugId": "CEB46D30700A1A7064756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "ED531E4A3D8D0B1564756E2164756E21",
9
9
  "names": []
10
10
  }