mirror of
https://github.com/atom/atom.git
synced 2026-01-22 21:38:10 -05:00
Use consistent selector error
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
{specificity} = require 'clear-cut'
|
||||
_ = require 'underscore-plus'
|
||||
{$} = require './space-pen-extensions'
|
||||
{isSelectorValid} = require './selector-parser'
|
||||
{validateSelector} = require './selector-parser'
|
||||
|
||||
SequenceCount = 0
|
||||
SpecificityCache = {}
|
||||
@@ -88,8 +88,7 @@ class CommandRegistry
|
||||
return disposable
|
||||
|
||||
if typeof target is 'string'
|
||||
unless isSelectorValid(target)
|
||||
throw new Error("'#{target}' is not a valid selector")
|
||||
validateSelector(target)
|
||||
@addSelectorBasedListener(target, commandName, callback)
|
||||
else
|
||||
@addInlineListener(target, commandName, callback)
|
||||
|
||||
@@ -8,7 +8,7 @@ fs = require 'fs-plus'
|
||||
{Disposable} = require 'event-kit'
|
||||
Grim = require 'grim'
|
||||
MenuHelpers = require './menu-helpers'
|
||||
{isSelectorValid} = require './selector-parser'
|
||||
{validateSelector} = require './selector-parser'
|
||||
|
||||
SpecificityCache = {}
|
||||
|
||||
@@ -124,8 +124,7 @@ class ContextMenuManager
|
||||
addedItemSets = []
|
||||
|
||||
for selector, items of itemsBySelector
|
||||
unless isSelectorValid(selector)
|
||||
throw new Error("'#{selector}' is not a valid selector")
|
||||
validateSelector(selector)
|
||||
|
||||
itemSet = new ContextMenuItemSet(selector, items)
|
||||
addedItemSets.push(itemSet)
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
selectorCache = null
|
||||
testElement = null
|
||||
|
||||
exports.validateSelector = (selector) ->
|
||||
return if exports.isSelectorValid(selector)
|
||||
|
||||
error = new Error("'#{selector}' is not a valid selector")
|
||||
error.code = 'EBADSELECTOR'
|
||||
throw error
|
||||
|
||||
exports.isSelectorValid = (selector) ->
|
||||
selectorCache ?= {}
|
||||
cachedValue = selectorCache[selector]
|
||||
|
||||
Reference in New Issue
Block a user