SYMBOL INDEX (1294 symbols across 331 files) FILE: .eslint-doc-generatorrc.js constant HBS_ONLY_NOTE (line 3) | const HBS_ONLY_NOTE = constant END_HEADER_MARKER (line 6) | const END_HEADER_MARKER = ''; method postprocess (line 19) | postprocess(content, filePath) { FILE: lib/rules/alias-model-in-controller.js method create (line 24) | create(context) { FILE: lib/rules/avoid-leaking-state-in-ember-objects.js constant DEFAULT_IGNORED_PROPERTIES (line 6) | const DEFAULT_IGNORED_PROPERTIES = [ function isAllowedTernary (line 18) | function isAllowedTernary(value) { function isAllowedLogicalExpression (line 26) | function isAllowedLogicalExpression(value) { function isAllowed (line 30) | function isAllowed(value) { method create (line 77) | create(context) { FILE: lib/rules/avoid-using-needs-in-controllers.js method create (line 23) | create(context) { FILE: lib/rules/classic-decorator-hooks.js constant ERROR_MESSAGE_INIT_IN_NON_CLASSIC (line 1) | const ERROR_MESSAGE_INIT_IN_NON_CLASSIC = constant ERROR_MESSAGE_DESTROY_IN_NON_CLASSIC (line 3) | const ERROR_MESSAGE_DESTROY_IN_NON_CLASSIC = constant ERROR_MESSAGE_CONSTRUCTOR_IN_CLASSIC (line 5) | const ERROR_MESSAGE_CONSTRUCTOR_IN_CLASSIC = method create (line 26) | create(context) { FILE: lib/rules/classic-decorator-no-classic-methods.js function disallowedMethodErrorMessage (line 17) | function disallowedMethodErrorMessage(name) { method create (line 38) | create(context) { FILE: lib/rules/closure-actions.js constant ERROR_MESSAGE (line 9) | const ERROR_MESSAGE = 'Use closure actions'; method create (line 27) | create(context) { FILE: lib/rules/computed-property-getters.js constant ALWAYS_GETTER_MESSAGE (line 11) | const ALWAYS_GETTER_MESSAGE = 'Always use a getter inside computed prope... constant PREVENT_GETTER_MESSAGE (line 12) | const PREVENT_GETTER_MESSAGE = 'Do not use a getter inside computed prop... constant ALWAYS_WITH_SETTER_MESSAGE (line 13) | const ALWAYS_WITH_SETTER_MESSAGE = method create (line 38) | create(context) { FILE: lib/rules/jquery-ember-run.js constant ERROR_MESSAGE (line 13) | const ERROR_MESSAGE = "Don't use jQuery without Ember Run Loop"; constant EMBER_RUNLOOP_FUNCTIONS (line 16) | const EMBER_RUNLOOP_FUNCTIONS = [ method create (line 48) | create(context) { FILE: lib/rules/named-functions-in-promises.js method create (line 36) | create(context) { function hasPromiseExpression (line 66) | function hasPromiseExpression(node) { FILE: lib/rules/new-module-imports.js constant MAPPING (line 3) | const MAPPING = require('ember-rfc176-data'); constant GLOBALS (line 7) | const GLOBALS = MAPPING.reduce((memo, exportDefinition) => { method create (line 38) | create(context) { FILE: lib/rules/no-actions-hash.js constant ERROR_MESSAGE (line 4) | const ERROR_MESSAGE = 'Use the @action decorator instead of declaring an... function reportActionsProp (line 25) | function reportActionsProp(properties) { method ClassDeclaration (line 33) | ClassDeclaration(node) { method CallExpression (line 41) | CallExpression(node) { function inClassWhichCanContainActions (line 50) | function inClassWhichCanContainActions(context, node) { FILE: lib/rules/no-array-prototype-extensions.js constant ERROR_MESSAGE (line 9) | const ERROR_MESSAGE = "Don't use Ember's array prototype extensions"; constant TOKEN_TYPES (line 10) | const TOKEN_TYPES = { constant EXTENSION_METHODS (line 14) | const EXTENSION_METHODS = new Set([ constant REPLACE_METHOD (line 59) | const REPLACE_METHOD = 'replace'; constant EXTENSION_PROPERTIES (line 65) | const EXTENSION_PROPERTIES = new Set(['lastObject', 'firstObject']); constant KNOWN_NON_ARRAY_FUNCTION_CALLS (line 70) | const KNOWN_NON_ARRAY_FUNCTION_CALLS = new Set([ constant KNOWN_NON_ARRAY_FUNCTION_CALLS_REGEXP (line 95) | const KNOWN_NON_ARRAY_FUNCTION_CALLS_REGEXP = new Set([ constant KNOWN_NON_ARRAY_OBJECTS (line 103) | const KNOWN_NON_ARRAY_OBJECTS = new Set([ constant KNOWN_NON_ARRAY_CLASSES (line 117) | const KNOWN_NON_ARRAY_CLASSES = new Set([ constant FN_NAMES_TO_KNOWN_NON_ARRAY_WORDS (line 134) | const FN_NAMES_TO_KNOWN_NON_ARRAY_WORDS = new Map([ function variableNameToWords (line 146) | function variableNameToWords(name) { function applyFix (line 178) | function applyFix(callExpressionNode, fixer, context, options = {}) { function isThisStoreCall (line 613) | function isThisStoreCall(node) { method create (line 646) | create(context) { FILE: lib/rules/no-arrow-function-computed-properties.js constant ERROR_MESSAGE (line 7) | const ERROR_MESSAGE = 'Do not use arrow functions in computed properties'; method create (line 37) | create(context) { FILE: lib/rules/no-assignment-of-untracked-properties-used-in-tracking-contexts.js function createMacrosByPathMap (line 15) | function createMacrosByPathMap(macroConfigurations) { function createMacrosByIndexPathMap (line 29) | function createMacrosByIndexPathMap(macroConfigurations) { constant ERROR_MESSAGE (line 47) | const ERROR_MESSAGE = function findTrackedProperties (line 56) | function findTrackedProperties(nodeClassDeclaration, trackedImportName) { method create (line 179) | create(context) { FILE: lib/rules/no-at-ember-render-modifiers.js constant ERROR_MESSAGE (line 3) | const ERROR_MESSAGE = function importDeclarationIsPackageName (line 9) | function importDeclarationIsPackageName(node, path) { method create (line 29) | create(context) { FILE: lib/rules/no-attrs-in-components.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = 'Do not use `this.attrs`'; method create (line 28) | create(context) { function isThisAttrsExpression (line 65) | function isThisAttrsExpression(node) { FILE: lib/rules/no-attrs-snapshot.js constant ERROR_MESSAGE (line 10) | const ERROR_MESSAGE = method create (line 37) | create(context) { FILE: lib/rules/no-builtin-form-components.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = 'Do not use built-in form components. Use native H... constant DISALLOWED_IMPORTS (line 6) | const DISALLOWED_IMPORTS = new Set(['Input', 'Textarea']); method create (line 24) | create(context) { FILE: lib/rules/no-capital-letters-in-routes.js method create (line 23) | create(context) { FILE: lib/rules/no-classic-classes.js constant ERROR_MESSAGE_NO_CLASSIC_CLASSES (line 7) | const ERROR_MESSAGE_NO_CLASSIC_CLASSES = function hasNoArguments (line 10) | function hasNoArguments(node) { function hasObjectArgument (line 14) | function hasObjectArgument(node, scopeManager) { function isEmberImport (line 21) | function isEmberImport(classImportedFrom) { method create (line 71) | create(context) { FILE: lib/rules/no-classic-components.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = method create (line 25) | create(context) { function getImportDefaultSpecifier (line 43) | function getImportDefaultSpecifier(node) { FILE: lib/rules/no-component-lifecycle-hooks.js constant ERROR_MESSAGE_NO_COMPONENT_LIFECYCLE_HOOKS (line 12) | const ERROR_MESSAGE_NO_COMPONENT_LIFECYCLE_HOOKS = method create (line 35) | create(context) { FILE: lib/rules/no-computed-properties-in-native-classes.js constant ERROR_MESSAGE (line 7) | const ERROR_MESSAGE = function findComputedNodes (line 15) | function findComputedNodes(nodeBody) { method create (line 57) | create(context) { FILE: lib/rules/no-controller-access-in-routes.js constant ERROR_MESSAGE (line 7) | const ERROR_MESSAGE = method create (line 44) | create(context) { function getPropertiesArgumentsIncludeController (line 187) | function getPropertiesArgumentsIncludeController(args) { FILE: lib/rules/no-controllers.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = 'Avoid using controllers except for specifying `qu... method ClassDeclaration (line 28) | ClassDeclaration(node) { method CallExpression (line 37) | CallExpression(node) { function classDeclarationHasProperty (line 50) | function classDeclarationHasProperty(classDeclaration, propertyName) { function callExpressionClassHasProperty (line 60) | function callExpressionClassHasProperty(callExpression, propertyName, sc... FILE: lib/rules/no-current-route-name.js constant ERROR_MESSAGE (line 3) | const ERROR_MESSAGE = 'Use currentURL() instead of currentRouteName()'; method create (line 21) | create(context) { FILE: lib/rules/no-deeply-nested-dependent-keys-with-each.js constant ERROR_MESSAGE (line 10) | const ERROR_MESSAGE = method create (line 29) | create(context) { FILE: lib/rules/no-deprecated-router-transition-methods.js function getBaseFixSteps (line 9) | function getBaseFixSteps(fixer, context, currentClass) { method create (line 74) | create(context) { FILE: lib/rules/no-duplicate-dependent-keys.js constant ERROR_MESSAGE (line 8) | const ERROR_MESSAGE = 'Dependent keys should not be repeated'; method create (line 29) | create(context) { function findDuplicateStringNodes (line 70) | function findDuplicateStringNodes(stringNodes) { FILE: lib/rules/no-ember-super-in-es-classes.js function isDirectlyInClass (line 3) | function isDirectlyInClass(node) { method create (line 38) | create(context) { FILE: lib/rules/no-ember-testing-in-module-scope.js constant ERROR_MESSAGES (line 6) | const ERROR_MESSAGES = [ method create (line 28) | create(context) { FILE: lib/rules/no-empty-attrs.js method create (line 24) | create(context) { FILE: lib/rules/no-empty-glimmer-component-classes.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = 'Do not create empty backing classes for Glimmer c... constant ERROR_MESSAGE_TEMPLATE_TAG (line 6) | const ERROR_MESSAGE_TEMPLATE_TAG = method create (line 30) | create(context) { FILE: lib/rules/no-function-prototype-extensions.js method create (line 23) | create(context) { FILE: lib/rules/no-get-with-default.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = 'Use `||` or the ternary operator instead of `getW... method create (line 41) | create(context) { function fix (line 124) | function fix({ FILE: lib/rules/no-get.js constant ERROR_MESSAGE_GET (line 9) | const ERROR_MESSAGE_GET = "Use ES5 getters (`this.property`) instead of ... constant ERROR_MESSAGE_GET_PROPERTIES (line 11) | const ERROR_MESSAGE_GET_PROPERTIES = constant VALID_JS_VARIABLE_NAME_REGEXP (line 14) | const VALID_JS_VARIABLE_NAME_REGEXP = new RegExp('^[a-zA-Z_$][0-9a-zA-Z_... constant VALID_JS_ARRAY_INDEX_REGEXP (line 15) | const VALID_JS_ARRAY_INDEX_REGEXP = new RegExp(/^\d+$/); function isValidJSVariableName (line 16) | function isValidJSVariableName(str) { function isValidJSArrayIndex (line 19) | function isValidJSArrayIndex(str) { function isValidJSPath (line 22) | function isValidJSPath(str) { function reportGet (line 26) | function reportGet({ node, context, path, useAt, useOptionalChaining, ob... function fixGet (line 46) | function fixGet({ function reportGetProperties (line 113) | function reportGetProperties({ context, node, objectText, properties }) { function fixGetProperties (line 135) | function fixGetProperties({ fixer, node, objectText, propertyNames }) { method create (line 211) | create(context) { function validateGetPropertiesArguments (line 471) | function validateGetPropertiesArguments(args, ignoreNestedPaths) { function convertLiteralTypePath (line 482) | function convertLiteralTypePath({ FILE: lib/rules/no-global-jquery.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = 'Do not use global `$` or `jQuery`'; method create (line 28) | create(context) { FILE: lib/rules/no-html-safe.js constant ERROR_MESSAGE (line 3) | const ERROR_MESSAGE = 'Do not use `htmlSafe`.'; method create (line 26) | create(context) { FILE: lib/rules/no-implicit-injections.js constant MODULE_TYPES (line 11) | const MODULE_TYPES = [ function fixService (line 28) | function fixService(fixer, currentClass, serviceInjectImportName, failed... function normalizeConfiguration (line 51) | function normalizeConfiguration(denyList) { method create (line 110) | create(context) { FILE: lib/rules/no-implicit-service-injection-argument.js constant ERROR_MESSAGE (line 11) | const ERROR_MESSAGE = "Don't omit the argument for the injected service ... method create (line 29) | create(context) { FILE: lib/rules/no-incorrect-calls-with-inline-anonymous-functions.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = function isMemberExpressionOnRun (line 8) | function isMemberExpressionOnRun(node) { method create (line 36) | create(context) { FILE: lib/rules/no-incorrect-computed-macros.js constant ERROR_MESSAGE_AND_OR (line 6) | const ERROR_MESSAGE_AND_OR = 'Computed property macro should be used wit... method create (line 24) | create(context) { FILE: lib/rules/no-invalid-debug-function-arguments.js constant ERROR_MESSAGE (line 10) | const ERROR_MESSAGE = constant DEBUG_FUNCTIONS (line 13) | const DEBUG_FUNCTIONS = ['assert', 'deprecate', 'warn']; method create (line 33) | create(context) { function isDebugFunctionWithReversedArgs (line 60) | function isDebugFunctionWithReversedArgs(node, importedIdentifiers) { function isDebugFunction (line 69) | function isDebugFunction(node, importedIdentifiers) { function getDebugFunction (line 73) | function getDebugFunction(node, importedIdentifiers) { FILE: lib/rules/no-invalid-dependent-keys.js constant ERROR_MESSAGE_UNBALANCED_BRACES (line 11) | const ERROR_MESSAGE_UNBALANCED_BRACES = 'Found unbalanced braces in depe... constant ERROR_MESSAGE_UNNECESSARY_BRACES (line 12) | const ERROR_MESSAGE_UNNECESSARY_BRACES = 'Found unnecessary braces in de... constant ERROR_MESSAGE_TERMINAL_AT_EACH (line 13) | const ERROR_MESSAGE_TERMINAL_AT_EACH = 'Found terminal `@each`, use `[]`... constant ERROR_MESSAGE_MIDDLE_BRACKETS (line 14) | const ERROR_MESSAGE_MIDDLE_BRACKETS = '`[]` should only be used at the e... constant ERROR_MESSAGE_LEADING_TRAILING_PERIOD (line 15) | const ERROR_MESSAGE_LEADING_TRAILING_PERIOD = 'Found leading or trailing... constant ERROR_MESSAGE_INVALID_CHARACTER (line 16) | const ERROR_MESSAGE_INVALID_CHARACTER = 'Found invalid character in depe... function hasUnbalancedBraces (line 18) | function hasUnbalancedBraces(str) { constant REGEXP_UNNECESSARY_BRACES (line 25) | const REGEXP_UNNECESSARY_BRACES = /{([^,.]+)}/g; function hasUnnecessaryBraces (line 26) | function hasUnnecessaryBraces(str) { function hasTerminalAtEach (line 30) | function hasTerminalAtEach(str) { function hasMiddleBrackets (line 34) | function hasMiddleBrackets(str) { method create (line 59) | create(context) { function removeLastOccurrenceOf (line 167) | function removeLastOccurrenceOf(strToSearch, strToRemove) { FILE: lib/rules/no-invalid-test-waiters.js constant MODULE_SCOPE_ERROR_MESSAGE (line 6) | const MODULE_SCOPE_ERROR_MESSAGE = 'The buildWaiter function should be i... constant DIRECT_ASSIGNMENT_ERROR_MESSAGE (line 7) | const DIRECT_ASSIGNMENT_ERROR_MESSAGE = function isInModuleScope (line 10) | function isInModuleScope(node) { function isDirectVariableDeclaration (line 19) | function isDirectVariableDeclaration(node) { method create (line 40) | create(context) { FILE: lib/rules/no-jquery.js constant ERROR_MESSAGE (line 11) | const ERROR_MESSAGE = 'Do not use jQuery'; method create (line 29) | create(context) { FILE: lib/rules/no-legacy-test-waiters.js constant LEGACY_TEST_WAITER_FUNCTIONS (line 4) | const LEGACY_TEST_WAITER_FUNCTIONS = ['registerWaiter', 'unregisterWaite... constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = method create (line 24) | create(context) { FILE: lib/rules/no-mixins.js constant ERROR_MESSAGE (line 7) | const ERROR_MESSAGE = "Don't use a mixin"; method create (line 26) | create(context) { FILE: lib/rules/no-modifier-argument-destructuring.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = method create (line 28) | create(context) { FILE: lib/rules/no-new-mixins.js constant ERROR_MESSAGE (line 9) | const ERROR_MESSAGE = "Don't create new mixins"; method create (line 27) | create(context) { FILE: lib/rules/no-noop-setup-on-error-in-before.js method create (line 27) | create(context) { FILE: lib/rules/no-observers.js constant ERROR_MESSAGE (line 11) | const ERROR_MESSAGE = "Don't use observers"; method create (line 29) | create(context) { FILE: lib/rules/no-old-shims.js method create (line 265) | create(context) { FILE: lib/rules/no-on-calls-in-components.js method create (line 25) | create(context) { FILE: lib/rules/no-pause-test.js constant ERROR_MESSAGE (line 7) | const ERROR_MESSAGE = 'Do not commit `pauseTest()`'; method create (line 29) | create(context) { FILE: lib/rules/no-private-routing-service.js constant PRIVATE_ROUTING_SERVICE_ERROR_MESSAGE (line 12) | const PRIVATE_ROUTING_SERVICE_ERROR_MESSAGE = constant ROUTER_MICROLIB_ERROR_MESSAGE (line 15) | const ROUTER_MICROLIB_ERROR_MESSAGE = constant ROUTER_MAIN_ERROR_MESSAGE (line 18) | const ROUTER_MAIN_ERROR_MESSAGE = method create (line 58) | create(context) { FILE: lib/rules/no-proxies.js constant ERROR_MESSAGE (line 3) | const ERROR_MESSAGE = 'Do not use array or object proxies.'; method create (line 25) | create(context) { FILE: lib/rules/no-replace-test-comments.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = "No 'Replace this with your real tests' comments. ... method create (line 27) | create(context) { FILE: lib/rules/no-restricted-property-modifications.js method create (line 49) | create(context) { function isReadOnlyPropertyUsingAliasOrReads (line 114) | function isReadOnlyPropertyUsingAliasOrReads( function isThisSet (line 131) | function isThisSet(node) { function isThisSetReadOnlyProperty (line 143) | function isThisSetReadOnlyProperty(node, readOnlyProperties) { function isAliasComputedProperty (line 147) | function isAliasComputedProperty(node, importedComputedName, importedAli... function isReadsComputedProperty (line 154) | function isReadsComputedProperty(node, importedComputedName, importedRea... function isIdentifierCall (line 161) | function isIdentifierCall(node, name) { function isMemberExpressionCall (line 167) | function isMemberExpressionCall(node, object, name) { function isReadOnlyProperty (line 178) | function isReadOnlyProperty(property, readOnlyProperties) { FILE: lib/rules/no-restricted-resolver-tests.js function getNoUnitTrueMessage (line 10) | function getNoUnitTrueMessage(fn) { function getNoNeedsMessage (line 14) | function getNoNeedsMessage(fn) { function getSingleStringArgumentMessage (line 18) | function getSingleStringArgumentMessage(fn) { function getNoPOJOWithoutIntegrationTrueMessage (line 22) | function getNoPOJOWithoutIntegrationTrueMessage(fn) { function hasOnlyStringArgument (line 26) | function hasOnlyStringArgument(node) { function hasUnitTrue (line 33) | function hasUnitTrue(node) { function hasNeeds (line 40) | function hasNeeds(node) { function hasIntegrationTrue (line 49) | function hasIntegrationTrue(node) { function getAncestorCallExpression (line 58) | function getAncestorCallExpression(node) { function getLastArgument (line 62) | function getLastArgument(node) { method create (line 94) | create(context) { FILE: lib/rules/no-restricted-service-injections.js constant DEFAULT_ERROR_MESSAGE (line 8) | const DEFAULT_ERROR_MESSAGE = 'Injecting this service is not allowed fro... method create (line 61) | create(context) { FILE: lib/rules/no-runloop.js constant RUNLOOP_TO_LIFELINE_MAP (line 10) | const RUNLOOP_TO_LIFELINE_MAP = Object.freeze({ constant ERROR_MESSAGE (line 18) | const ERROR_MESSAGE = constant EMBER_RUNLOOP_FUNCTIONS (line 22) | const EMBER_RUNLOOP_FUNCTIONS = [ method create (line 74) | create(context) { FILE: lib/rules/no-settled-after-test-helper.js constant ERROR_MESSAGE (line 3) | const ERROR_MESSAGE = constant SETTLING_TEST_HELPERS (line 6) | const SETTLING_TEST_HELPERS = new Set([ method create (line 39) | create(context) { function isAwaitSettled (line 98) | function isAwaitSettled(node) { function isAwaitSettlingTestHelper (line 113) | function isAwaitSettlingTestHelper(node, settlingTestHelpers) { FILE: lib/rules/no-shadow-route-definition.js constant ROOT_PATH_TRIM_REGEX (line 7) | const ROOT_PATH_TRIM_REGEX = /\/{2,}/g; constant SOURCE_PATH_VALUE_TYPE (line 8) | const SOURCE_PATH_VALUE_TYPE = { constant URL_CHUNK_SEPARATOR (line 12) | const URL_CHUNK_SEPARATOR = '/'; function buildErrorMessage (line 14) | function buildErrorMessage(opts) { function buildSourceLocationString (line 21) | function buildSourceLocationString(routeInfo) { function buildRouteErrorInfo (line 25) | function buildRouteErrorInfo(routeInfo) { function isNestedRouteWithSamePath (line 29) | function isNestedRouteWithSamePath(routeInfo) { method create (line 53) | create(context) { function getRouteInfo (line 103) | function getRouteInfo(node, scopeManager) { function getRouteBasePath (line 148) | function getRouteBasePath(node, scopeManager) { function getParentRoutesPaths (line 171) | function getParentRoutesPaths(node, scopeManager) { function getPropertyByKeyName (line 183) | function getPropertyByKeyName(objectExpression, keyName) { function trimRootLevelNestedRoutes (line 192) | function trimRootLevelNestedRoutes(routesPath) { function convertPathToGenericForMatching (line 196) | function convertPathToGenericForMatching(routePathInfos) { function convertPathForDisplay (line 220) | function convertPathForDisplay(routePathInfos) { function getRouteName (line 228) | function getRouteName(node) { function getNodeValue (line 233) | function getNodeValue(node) { function isString (line 252) | function isString(value) { function isValidRouteInfo (line 256) | function isValidRouteInfo(routeInfo) { function lookupIfElseBlockStatementsTreePrefix (line 260) | function lookupIfElseBlockStatementsTreePrefix(node) { FILE: lib/rules/no-side-effects.js function isEmberSetThis (line 15) | function isEmberSetThis(node, importedEmberName) { function isImportedSetThis (line 29) | function isImportedSetThis(node, importedSetName, importedSetPropertiesN... function isThisSet (line 41) | function isThisSet(node) { constant DISALLOWED_FUNCTION_CALLS (line 57) | const DISALLOWED_FUNCTION_CALLS = new Set(['send', 'sendAction', 'sendEv... function isDisallowedFunctionCall (line 58) | function isDisallowedFunctionCall(node, importedEmberName) { function isImportedSendEventCall (line 70) | function isImportedSendEventCall(node, importedSendEventName) { function memberExpressionBeginsWithThis (line 86) | function memberExpressionBeginsWithThis(node) { function findSideEffects (line 108) | function findSideEffects( constant ERROR_MESSAGE (line 137) | const ERROR_MESSAGE = "Don't introduce side-effects in computed properti... method create (line 174) | create(context) { FILE: lib/rules/no-string-prototype-extensions.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = 'Do not using `String` prototype extension methods.'; constant EXTENSION_METHODS (line 7) | const EXTENSION_METHODS = new Set([ method create (line 35) | create(context) { FILE: lib/rules/no-test-and-then.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = 'Use `await` instead of `andThen` test wait helper.'; method create (line 28) | create(context) { FILE: lib/rules/no-test-import-export.js constant NO_IMPORT_MESSAGE (line 10) | const NO_IMPORT_MESSAGE = constant NO_EXPORT_MESSAGE (line 13) | const NO_EXPORT_MESSAGE = 'No exports from test file. Any exports should... method ImportDeclaration (line 47) | ImportDeclaration(node) { method ExportNamedDeclaration (line 61) | ExportNamedDeclaration(node) { method ExportDefaultDeclaration (line 64) | ExportDefaultDeclaration(node) { function isInTestDirectory (line 71) | function isInTestDirectory(filename) { function isTestHelperFilename (line 80) | function isTestHelperFilename(filename) { FILE: lib/rules/no-test-module-for.js constant ERROR_MESSAGE (line 8) | const ERROR_MESSAGE = 'moduleFor* apis are are not allowed. Use `module`... method create (line 30) | create(context) { function isModuleFor (line 61) | function isModuleFor(_context, node) { FILE: lib/rules/no-test-support-import.js constant ERROR_MESSAGE_NO_IMPORT (line 9) | const ERROR_MESSAGE_NO_IMPORT = method ImportDeclaration (line 32) | ImportDeclaration(node) { FILE: lib/rules/no-test-this-render.js function makeErrorMessage (line 6) | function makeErrorMessage(functionName) { method create (line 31) | create(context) { FILE: lib/rules/no-tracked-built-ins.js constant TRACKED_BUILT_INS_MAPPING (line 9) | const TRACKED_BUILT_INS_MAPPING = { constant TRACKED_BUILT_INS_MODULE (line 18) | const TRACKED_BUILT_INS_MODULE = 'tracked-built-ins'; constant EMBER_REACTIVE_MODULE (line 19) | const EMBER_REACTIVE_MODULE = '@ember/reactive/collections'; constant ERROR_MESSAGE_IMPORT (line 21) | const ERROR_MESSAGE_IMPORT = method create (line 50) | create(context) { FILE: lib/rules/no-tracked-properties-from-args.js constant ERROR_MESSAGE (line 8) | const ERROR_MESSAGE = function visitClassPropertyOrPropertyDefinition (line 11) | function visitClassPropertyOrPropertyDefinition(node, context, trackedIm... method create (line 46) | create(context) { FILE: lib/rules/no-try-invoke.js constant ERROR_MESSAGE (line 6) | const ERROR_MESSAGE = 'Use optional chaining operator `?.()` instead of ... method create (line 23) | create(context) { FILE: lib/rules/no-unnecessary-index-route.js constant ERROR_MESSAGE (line 9) | const ERROR_MESSAGE = method create (line 28) | create(context) { FILE: lib/rules/no-unnecessary-route-path-option.js constant ERROR_MESSAGE (line 12) | const ERROR_MESSAGE = 'Do not provide unnecessary `path` option which ma... method create (line 30) | create(context) { function hasPropertyWithKeyName (line 81) | function hasPropertyWithKeyName(objectExpression, keyName) { function getPropertyByKeyName (line 85) | function getPropertyByKeyName(objectExpression, keyName) { function pathMatchesRouteName (line 94) | function pathMatchesRouteName(path, routeName) { FILE: lib/rules/no-unnecessary-service-injection-argument.js constant ERROR_MESSAGE (line 11) | const ERROR_MESSAGE = method create (line 30) | create(context) { FILE: lib/rules/no-unused-services.js method create (line 32) | create(context) { function splitValue (line 395) | function splitValue(value) { FILE: lib/rules/no-volatile-computed-properties.js constant ERROR_MESSAGE (line 7) | const ERROR_MESSAGE = 'Do not use volatile computed properties'; method create (line 24) | create(context) { FILE: lib/rules/order-in-components.js constant ORDER (line 10) | const ORDER = [ method create (line 64) | create(context) { FILE: lib/rules/order-in-controllers.js constant ORDER (line 10) | const ORDER = [ method create (line 55) | create(context) { FILE: lib/rules/order-in-models.js constant ORDER (line 10) | const ORDER = [ method create (line 49) | create(context) { FILE: lib/rules/order-in-routes.js constant ORDER (line 10) | const ORDER = [ method create (line 62) | create(context) { FILE: lib/rules/prefer-ember-test-helpers.js method Program (line 37) | Program(node) { FILE: lib/rules/require-async-inverse-relationship.js method create (line 14) | create(context) { FILE: lib/rules/require-computed-macros.js function makeErrorMessage (line 14) | function makeErrorMessage(macro) { constant ERROR_MESSAGE_READS (line 18) | const ERROR_MESSAGE_READS = makeErrorMessage('reads'); constant ERROR_MESSAGE_AND (line 19) | const ERROR_MESSAGE_AND = makeErrorMessage('and'); constant ERROR_MESSAGE_OR (line 20) | const ERROR_MESSAGE_OR = makeErrorMessage('or'); constant ERROR_MESSAGE_GT (line 21) | const ERROR_MESSAGE_GT = makeErrorMessage('gt'); constant ERROR_MESSAGE_GTE (line 22) | const ERROR_MESSAGE_GTE = makeErrorMessage('gte'); constant ERROR_MESSAGE_LT (line 23) | const ERROR_MESSAGE_LT = makeErrorMessage('lt'); constant ERROR_MESSAGE_LTE (line 24) | const ERROR_MESSAGE_LTE = makeErrorMessage('lte'); constant ERROR_MESSAGE_NOT (line 25) | const ERROR_MESSAGE_NOT = makeErrorMessage('not'); constant ERROR_MESSAGE_EQUAL (line 26) | const ERROR_MESSAGE_EQUAL = makeErrorMessage('equal'); constant ERROR_MESSAGE_FILTER_BY (line 27) | const ERROR_MESSAGE_FILTER_BY = makeErrorMessage('filterBy'); constant ERROR_MESSAGE_MAP_BY (line 28) | const ERROR_MESSAGE_MAP_BY = makeErrorMessage('mapBy'); function isThisPropertyFunctionCall (line 37) | function isThisPropertyFunctionCall(node, functionName) { function isSimpleThisExpressionsInsideLogicalExpression (line 72) | function isSimpleThisExpressionsInsideLogicalExpression(node, operator) { function getThisExpressions (line 103) | function getThisExpressions(nodeLogicalExpression) { function getPropertyName (line 118) | function getPropertyName(nodeComputedProperty) { function makeFix (line 124) | function makeFix(nodeToReplace, macro, macroArgs) { method create (line 170) | create(context) { FILE: lib/rules/require-computed-property-dependencies.js function isIdentifier (line 20) | function isIdentifier(node, name) { function isMemberExpression (line 37) | function isMemberExpression(node, objectName, propertyName) { function isTwoPartStringLiteral (line 55) | function isTwoPartStringLiteral(node) { function nodeToStringValue (line 69) | function nodeToStringValue(node) { function parseComputedDependencies (line 86) | function parseComputedDependencies(args) { function findEmberGetCalls (line 109) | function findEmberGetCalls(node, importedNames) { function findThisGetCalls (line 134) | function findThisGetCalls(node) { function getArrayOrRest (line 164) | function getArrayOrRest(args) { function extractEmberGetDependencies (line 178) | function extractEmberGetDependencies( function extractThisGetDependencies (line 224) | function extractThisGetDependencies(memberExpression, context) { function removeRedundantKeys (line 228) | function removeRedundantKeys(keys) { function removeServiceNames (line 234) | function removeServiceNames(keys, serviceNames) { constant ERROR_MESSAGE_NON_STRING_VALUE (line 241) | const ERROR_MESSAGE_NON_STRING_VALUE = 'Non-string value used as compute... method create (line 280) | create(context) { FILE: lib/rules/require-fetch-import.js constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = 'Explicitly import `fetch` instead of using `windo... method create (line 23) | create(context) { FILE: lib/rules/require-return-from-computed.js function isAnySegmentReachable (line 10) | function isAnySegmentReachable(segments) { constant ERROR_MESSAGE (line 20) | const ERROR_MESSAGE = 'Always return a value from computed properties'; method create (line 38) | create(context) { FILE: lib/rules/require-super-in-lifecycle-hooks.js function hasMatchingNode (line 7) | function hasMatchingNode(node, matcher) { function isClassicSuper (line 25) | function isClassicSuper(node) { function isNativeSuper (line 41) | function isNativeSuper(node, hook) { constant ERROR_MESSAGE (line 55) | const ERROR_MESSAGE = 'Call super in lifecycle hooks'; method create (line 92) | create(context) { FILE: lib/rules/require-tagless-components.js constant ERROR_MESSAGE_REQUIRE_TAGLESS_COMPONENTS (line 13) | const ERROR_MESSAGE_REQUIRE_TAGLESS_COMPONENTS = function isTagNameIdentifier (line 22) | function isTagNameIdentifier(node) { function isTagNameProperty (line 32) | function isTagNameProperty(node) { function isNonEmptyTagNameProperty (line 40) | function isNonEmptyTagNameProperty(node) { function getNonEmptyTagNameInObjectExpression (line 48) | function getNonEmptyTagNameInObjectExpression(node) { function getNonEmptyTagNameInClassBody (line 56) | function getNonEmptyTagNameInClassBody(node) { function hasNoTagNameInObjectExpression (line 64) | function hasNoTagNameInObjectExpression(node) { function hasNoTagNameInClassBody (line 72) | function hasNoTagNameInClassBody(node) { function getDecoratorCallExpressionWithName (line 81) | function getDecoratorCallExpressionWithName(node, name) { method create (line 104) | create(context) { FILE: lib/rules/require-valid-css-selector-in-test-helpers.js constant REGEX_SPLIT_BY_COMMA_NOT_IN_QUOTES (line 17) | const REGEX_SPLIT_BY_COMMA_NOT_IN_QUOTES = /,(?=(?:(?:[^"']*["']){2})*[^... constant TEST_MODULE_NAMES (line 19) | const TEST_MODULE_NAMES = new Set(['module', 'describe']); constant TEST_HELPER_IMPORTS (line 20) | const TEST_HELPER_IMPORTS = new Set([ constant QUERY_SELECTOR_METHODS (line 36) | const QUERY_SELECTOR_METHODS = new Set(['querySelectorAll', 'querySelect... constant PARENT_NODE_NAMES (line 37) | const PARENT_NODE_NAMES = new Set(['element', 'document']); constant SELECTOR_RULES (line 38) | const SELECTOR_RULES = Object.freeze({ method fix (line 45) | fix(node, str, fixer) { method fix (line 61) | fix() {} method fix (line 70) | fix() {} function hasMissingClosingBracket (line 75) | function hasMissingClosingBracket(selector) { function _isValidSelector (line 79) | function _isValidSelector(selector) { function _isAssertDomCall (line 91) | function _isAssertDomCall(node, assertIdentifierName) { function _isQuerySelectorCall (line 101) | function _isQuerySelectorCall(node, testModuleSpecifier) { function _isTestHelperCall (line 112) | function _isTestHelperCall(node, hasTestHelperImport, localImportNames) { method create (line 137) | create(context) { FILE: lib/rules/route-path-style.js constant ERROR_MESSAGE (line 12) | const ERROR_MESSAGE = 'Use kebab-case in route path.'; method create (line 35) | create(context) { function hasPropertyWithKeyName (line 87) | function hasPropertyWithKeyName(objectExpression, keyName) { function getPropertyByKeyName (line 91) | function getPropertyByKeyName(objectExpression, keyName) { function getStaticURLSegments (line 100) | function getStaticURLSegments(path) { function isDynamicSegment (line 104) | function isDynamicSegment(segment) { function isWildcardSegment (line 108) | function isWildcardSegment(segment) { function isStaticSegment (line 112) | function isStaticSegment(segment) { constant KEBAB_CASE_REGEXP (line 116) | const KEBAB_CASE_REGEXP = /^[\da-z-]+$/; function isKebabCase (line 117) | function isKebabCase(str) { function convertRoutePathToKebabCase (line 121) | function convertRoutePathToKebabCase(path) { FILE: lib/rules/routes-segments-snake-case.js method create (line 30) | create(context) { FILE: lib/rules/template-attribute-indentation.js function getWhiteSpaceLength (line 3) | function getWhiteSpaceLength(statement) { function getEndLocationForOpen (line 8) | function getEndLocationForOpen(node) { function canApplyRule (line 12) | function canApplyRule(node, config, sourceCode) { function getSourceForLoc (line 29) | function getSourceForLoc(sourceLines, loc) { function getSourceForNode (line 54) | function getSourceForNode(sourceLines, node) { function parseOptions (line 58) | function parseOptions(options) { method create (line 146) | create(context) { FILE: lib/rules/template-attribute-order.js method create (line 37) | create(context) { FILE: lib/rules/template-block-indentation.js constant VOID_TAGS (line 5) | const VOID_TAGS = new Set([ constant IGNORED_ELEMENTS (line 23) | const IGNORED_ELEMENTS = new Set(['pre', 'script', 'style', 'textarea']); function isControlChar (line 25) | function isControlChar(char) { function getDisplayName (line 29) | function getDisplayName(node) { function childrenFor (line 55) | function childrenFor(node) { function hasChildren (line 62) | function hasChildren(node) { function hasLeadingContent (line 66) | function hasLeadingContent(child, siblings) { function detectNestedElseIfBlock (line 89) | function detectNestedElseIfBlock(node) { function parseOptions (line 101) | function parseOptions(options) { method create (line 166) | create(context) { FILE: lib/rules/template-builtin-component-arguments.js constant FORBIDDEN_ATTRIBUTES (line 1) | const FORBIDDEN_ATTRIBUTES = { function generateErrorMessage (line 6) | function generateErrorMessage(component, attribute) { method create (line 31) | create(context) { FILE: lib/rules/template-deprecated-inline-view-helper.js method create (line 25) | create(context) { FILE: lib/rules/template-deprecated-render-helper.js method create (line 25) | create(context) { FILE: lib/rules/template-eol-last.js method create (line 33) | create(context) { FILE: lib/rules/template-linebreak-style.js function toDisplay (line 6) | function toDisplay(value) { constant EOL_MAP (line 10) | const EOL_MAP = { lf: '\n', cr: '\r', crlf: '\r\n' }; method create (line 39) | create(context) { FILE: lib/rules/template-link-href-attributes.js method create (line 25) | create(context) { FILE: lib/rules/template-link-rel-noopener.js method create (line 23) | create(context) { FILE: lib/rules/template-modifier-name-case.js constant SIMPLE_DASHERIZE_REGEXP (line 3) | const SIMPLE_DASHERIZE_REGEXP = /[A-Z]/g; constant ALPHA (line 4) | const ALPHA = /[A-Za-z]/; function dasherize (line 6) | function dasherize(key) { method create (line 41) | create(context) { FILE: lib/rules/template-no-abstract-roles.js constant PROHIBITED_ROLE_VALUES (line 6) | const PROHIBITED_ROLE_VALUES = new Set( method create (line 34) | create(context) { FILE: lib/rules/template-no-accesskey-attribute.js method create (line 25) | create(context) { FILE: lib/rules/template-no-action-modifiers.js method create (line 45) | create(context) { FILE: lib/rules/template-no-action-on-submit-button.js function isInsideForm (line 1) | function isInsideForm(node) { function isSubmitButton (line 23) | function isSubmitButton(node) { function hasClickHandlingModifier (line 36) | function hasClickHandlingModifier(node) { method create (line 83) | create(context) { FILE: lib/rules/template-no-action.js function isActionHelperPath (line 1) | function isActionHelperPath(node) { method create (line 47) | create(context) { FILE: lib/rules/template-no-args-paths.js method create (line 24) | create(context) { FILE: lib/rules/template-no-arguments-for-html-elements.js method create (line 27) | create(context) { FILE: lib/rules/template-no-aria-hidden-body.js method create (line 25) | create(context) { FILE: lib/rules/template-no-aria-unsupported-elements.js constant ELEMENTS_WITHOUT_ARIA_SUPPORT (line 6) | const ELEMENTS_WITHOUT_ARIA_SUPPORT = new Set( method create (line 35) | create(context) { FILE: lib/rules/template-no-array-prototype-extensions.js constant FIRST_OBJECT_PROP_NAME (line 1) | const FIRST_OBJECT_PROP_NAME = 'firstObject'; constant LAST_OBJECT_PROP_NAME (line 2) | const LAST_OBJECT_PROP_NAME = 'lastObject'; constant ERROR_MESSAGES (line 4) | const ERROR_MESSAGES = { function isAllowed (line 14) | function isAllowed(originalStr, matchedStr) { function isGetHelperWithMatchedLiteral (line 36) | function isGetHelperWithMatchedLiteral(node, matchedStr) { function buildGetHelperParts (line 67) | function buildGetHelperParts(originalPath) { method create (line 100) | create(context) { FILE: lib/rules/template-no-at-ember-render-modifiers.js constant RENDER_MODIFIER_IMPORT_PATHS (line 2) | const RENDER_MODIFIER_IMPORT_PATHS = { constant ROOT_NAMED_EXPORTS (line 9) | const ROOT_NAMED_EXPORTS = { constant KEBAB_NAMES (line 15) | const KEBAB_NAMES = new Set(['did-insert', 'did-update', 'will-destroy']); constant ROOT_PACKAGE (line 16) | const ROOT_PACKAGE = '@ember/render-modifiers'; method create (line 42) | create(context) { FILE: lib/rules/template-no-attrs-in-components.js constant COMPONENT_TEMPLATE_REGEX (line 4) | const COMPONENT_TEMPLATE_REGEX = new RegExp( method create (line 35) | create(context) { FILE: lib/rules/template-no-autofocus-attribute.js function isMustacheBooleanFalse (line 25) | function isMustacheBooleanFalse(value) { function isNativeInputHelper (line 45) | function isNativeInputHelper(node) { function isInsideDialog (line 64) | function isInsideDialog(node) { method create (line 102) | create(context) { FILE: lib/rules/template-no-bare-strings.js constant DEFAULT_GLOBAL_ATTRIBUTES (line 1) | const DEFAULT_GLOBAL_ATTRIBUTES = [ constant DEFAULT_ELEMENT_ATTRIBUTES (line 9) | const DEFAULT_ELEMENT_ATTRIBUTES = { constant BUILTIN_COMPONENT_ATTRIBUTES (line 14) | const BUILTIN_COMPONENT_ATTRIBUTES = { constant DEFAULT_ALLOWLIST (line 19) | const DEFAULT_ALLOWLIST = [ constant IGNORED_ELEMENTS (line 87) | const IGNORED_ELEMENTS = ['pre', 'script', 'style', 'template', 'textare... function sanitizeConfigArray (line 89) | function sanitizeConfigArray(arr = []) { function mergeObjects (line 93) | function mergeObjects(obj1 = {}, obj2 = {}) { function isPageTitleHelper (line 104) | function isPageTitleHelper(node) { function isIfHelper (line 108) | function isIfHelper(node) { function isUnlessHelper (line 112) | function isUnlessHelper(node) { function isStringOnlyConcatHelper (line 116) | function isStringOnlyConcatHelper(node) { function isInAttrNode (line 124) | function isInAttrNode(node) { method create (line 177) | create(context) { FILE: lib/rules/template-no-bare-yield.js function isEmptyNode (line 1) | function isEmptyNode(node) { function isBareYield (line 9) | function isBareYield(node) { method create (line 39) | create(context) { FILE: lib/rules/template-no-block-params-for-html-elements.js method create (line 27) | create(context) { FILE: lib/rules/template-no-builtin-form-components.js method create (line 27) | create(context) { FILE: lib/rules/template-no-capital-arguments.js constant RESERVED (line 1) | const RESERVED = new Set(['@arguments', '@args', '@block', '@else']); constant ALLOWED_PREFIX (line 2) | const ALLOWED_PREFIX = /^[a-z]/; method create (line 29) | create(context) { FILE: lib/rules/template-no-chained-this.js method create (line 25) | create(context) { FILE: lib/rules/template-no-class-bindings.js method create (line 25) | create(context) { FILE: lib/rules/template-no-curly-component-invocation.js constant BUILT_INS (line 2) | const BUILT_INS = new Set([ constant ALWAYS_CURLY (line 39) | const ALWAYS_CURLY = new Set(['yield']); function transformTagName (line 41) | function transformTagName(name, isLocal) { function parseConfig (line 59) | function parseConfig(config) { function isExplicitThisPath (line 74) | function isExplicitThisPath(pathOriginal) { method create (line 123) | create(context) { FILE: lib/rules/template-no-debugger.js method create (line 23) | create(context) { FILE: lib/rules/template-no-deprecated.js constant TS_ALIAS_FLAG (line 8) | const TS_ALIAS_FLAG = 2_097_152; method create (line 27) | create(context) { FILE: lib/rules/template-no-duplicate-attributes.js method create (line 27) | create(context) { FILE: lib/rules/template-no-duplicate-id.js constant IGNORE_IDS (line 1) | const IGNORE_IDS = new Set(['{{unique-id}}', '{{(unique-id)}}']); function isControlFlowHelper (line 3) | function isControlFlowHelper(node) { function findBlockParamAncestor (line 12) | function findBlockParamAncestor(node, headName) { method create (line 48) | create(context) { FILE: lib/rules/template-no-duplicate-landmark-elements.js method create (line 31) | create(context) { function getLabel (line 196) | function getLabel(node) { function getRoleValue (line 219) | function getRoleValue(node) { function isNewScopeElement (line 227) | function isNewScopeElement(node) { function getLandmarkRole (line 231) | function getLandmarkRole(node, LANDMARK_ROLES, ELEMENT_TO_ROLE, insideSe... FILE: lib/rules/template-no-dynamic-subexpression-invocations.js function isInAttrPosition (line 1) | function isInAttrPosition(node) { method create (line 48) | create(context) { FILE: lib/rules/template-no-element-event-actions.js method create (line 32) | create(context) { FILE: lib/rules/template-no-empty-headings.js constant HEADINGS (line 4) | const HEADINGS = new Set(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']); function isAriaHiddenTruthy (line 13) | function isAriaHiddenTruthy(attr) { function isHidden (line 25) | function isHidden(node) { function isTextEmpty (line 35) | function isTextEmpty(text) { function hasAccessibleContent (line 40) | function hasAccessibleContent(node, sourceCode) { function isHeadingElement (line 81) | function isHeadingElement(node) { method create (line 115) | create(context) { FILE: lib/rules/template-no-extra-mut-helper-argument.js method create (line 23) | create(context) { FILE: lib/rules/template-no-forbidden-elements.js constant DEFAULT_FORBIDDEN (line 1) | const DEFAULT_FORBIDDEN = ['meta', 'style', 'html', 'script']; method create (line 38) | create(context) { FILE: lib/rules/template-no-heading-inside-button.js constant HEADING_ELEMENTS (line 1) | const HEADING_ELEMENTS = new Set(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']); function hasButtonParent (line 3) | function hasButtonParent(node) { method create (line 43) | create(context) { FILE: lib/rules/template-no-html-comments.js method create (line 25) | create(context) { FILE: lib/rules/template-no-implicit-this.js constant BUILT_INS (line 2) | const BUILT_INS = new Set([ constant CALLEE_PARENT_TYPES (line 35) | const CALLEE_PARENT_TYPES = new Set([ function isCalleePosition (line 44) | function isCalleePosition(node) { function isJsScopeVariable (line 60) | function isJsScopeVariable(node, sourceCode) { function isLocalBlockParam (line 80) | function isLocalBlockParam(node, pathRoot) { method create (line 130) | create(context) { FILE: lib/rules/template-no-index-component-invocation.js method create (line 24) | create(context) { FILE: lib/rules/template-no-inline-event-handlers.js method create (line 19) | create(context) { FILE: lib/rules/template-no-inline-linkto.js method create (line 24) | create(context) { FILE: lib/rules/template-no-inline-styles.js method create (line 29) | create(context) { FILE: lib/rules/template-no-input-block.js method create (line 20) | create(context) { FILE: lib/rules/template-no-input-tagname.js method create (line 21) | create(context) { FILE: lib/rules/template-no-invalid-aria-attributes.js function isBoolean (line 3) | function isBoolean(value) { function isNumeric (line 7) | function isNumeric(value) { function allowsUndefinedLiteral (line 22) | function allowsUndefinedLiteral(attrDef, value) { function validateByType (line 26) | function validateByType(attrDef, value) { function isValidAriaValue (line 71) | function isValidAriaValue(attrName, value) { function getExpectedTypeDescription (line 79) | function getExpectedTypeDescription(attrName) { method create (line 133) | create(context) { FILE: lib/rules/template-no-invalid-interactive.js function hasAttr (line 7) | function hasAttr(node, name) { function getTextAttr (line 11) | function getTextAttr(node, name) { constant DISALLOWED_DOM_EVENTS (line 19) | const DISALLOWED_DOM_EVENTS = new Set([ constant ELEMENT_ALLOWED_EVENTS (line 34) | const ELEMENT_ALLOWED_EVENTS = { method create (line 73) | create(context) { FILE: lib/rules/template-no-invalid-link-text.js constant DISALLOWED_LINK_TEXTS (line 1) | const DISALLOWED_LINK_TEXTS = new Set(['click here', 'more info', 'read ... function getTextContentResult (line 3) | function getTextContentResult(node) { function isDynamicValue (line 29) | function isDynamicValue(value) { function checkAriaAttributes (line 40) | function checkAriaAttributes(attrs) { method create (line 107) | create(context) { FILE: lib/rules/template-no-invalid-link-title.js function getChildTextContents (line 4) | function getChildTextContents(children) { function hasInvalidLinkTitle (line 20) | function hasInvalidLinkTitle(children, titleValues) { method create (line 47) | create(context) { FILE: lib/rules/template-no-invalid-meta.js method create (line 32) | create(context) { FILE: lib/rules/template-no-invalid-role.js constant ARIA_13_DRAFT_ROLES (line 10) | const ARIA_13_DRAFT_ROLES = [ constant VALID_ROLES (line 17) | const VALID_ROLES = new Set([ constant SEMANTIC_ELEMENTS (line 24) | const SEMANTIC_ELEMENTS = new Set([ method create (line 147) | create(context) { FILE: lib/rules/template-no-jsx-attributes.js function getMessage (line 45) | function getMessage(name) { method create (line 74) | create(context) { FILE: lib/rules/template-no-let-reference.js function checkIfWritableReferences (line 22) | function checkIfWritableReferences(node, scope) { method GlimmerPathExpression (line 33) | GlimmerPathExpression(node) { method GlimmerElementNode (line 37) | GlimmerElementNode(node) { FILE: lib/rules/template-no-link-to-positional-params.js method create (line 23) | create(context) { FILE: lib/rules/template-no-link-to-tagname.js method create (line 24) | create(context) { FILE: lib/rules/template-no-log.js method create (line 23) | create(context) { FILE: lib/rules/template-no-model-argument-in-route-templates.js function isRouteTemplate (line 15) | function isRouteTemplate(filePath) { method create (line 57) | create(context) { FILE: lib/rules/template-no-multiple-empty-lines.js method create (line 35) | create(context) { FILE: lib/rules/template-no-mut-helper.js method create (line 32) | create(context) { FILE: lib/rules/template-no-negated-condition.js constant ERROR_MESSAGE_FLIP_IF (line 1) | const ERROR_MESSAGE_FLIP_IF = constant ERROR_MESSAGE_USE_IF (line 3) | const ERROR_MESSAGE_USE_IF = 'Change `unless (not condition)` to `if con... constant ERROR_MESSAGE_USE_UNLESS (line 4) | const ERROR_MESSAGE_USE_UNLESS = 'Change `if (not condition)` to `unless... constant ERROR_MESSAGE_NEGATED_HELPER (line 5) | const ERROR_MESSAGE_NEGATED_HELPER = 'Simplify unnecessary negation of h... constant INVERTIBLE_HELPERS (line 7) | const INVERTIBLE_HELPERS = new Set(['not', 'eq', 'not-eq', 'gt', 'gte', ... constant HELPER_INVERSIONS (line 9) | const HELPER_INVERSIONS = { function isIf (line 19) | function isIf(node) { function isUnless (line 23) | function isUnless(node) { function hasNotHelper (line 27) | function hasNotHelper(node) { function hasNestedFixableHelper (line 36) | function hasNestedFixableHelper(node) { function escapeRegExp (line 45) | function escapeRegExp(string) { method create (line 83) | create(context) { FILE: lib/rules/template-no-nested-interactive.js function hasAttr (line 6) | function hasAttr(node, name) { function getTextAttr (line 10) | function getTextAttr(node, name) { function getRole (line 18) | function getRole(node) { constant MENUITEM_ROLES (line 25) | const MENUITEM_ROLES = new Set(['menuitem', 'menuitemcheckbox', 'menuite... function isCompositeWidgetPattern (line 27) | function isCompositeWidgetPattern(parentRole, childRole) { function isMenuItemNode (line 42) | function isMenuItemNode(node) { function describeInteractive (line 58) | function describeInteractive(node) { function isAllowedDetailsChild (line 96) | function isAllowedDetailsChild(childNode, parentEntry) { method create (line 150) | create(context) { FILE: lib/rules/template-no-nested-landmark.js constant LANDMARK_ELEMENTS (line 3) | const LANDMARK_ELEMENTS = new Set(['header', 'aside', 'footer', 'form', ... constant EQUIVALENT_ROLE (line 5) | const EQUIVALENT_ROLE = { function isLandmark (line 14) | function isLandmark(node) { function getLandmarkType (line 29) | function getLandmarkType(node) { method create (line 62) | create(context) { FILE: lib/rules/template-no-nested-splattributes.js method create (line 25) | create(context) { FILE: lib/rules/template-no-obscure-array-access.js constant DIGIT_REGEXP (line 1) | const DIGIT_REGEXP = /^\[?\d+]?$/; function getHelperParams (line 12) | function getHelperParams(original) { method create (line 52) | create(context) { function buildFix (line 89) | function buildFix(context, node, params) { FILE: lib/rules/template-no-obsolete-elements.js constant OBSOLETE (line 1) | const OBSOLETE = [ function hasBindingInScopeChain (line 33) | function hasBindingInScopeChain(scope, name) { method create (line 61) | create(context) { FILE: lib/rules/template-no-only-default-slot.js constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE = method create (line 25) | create(context) { FILE: lib/rules/template-no-outlet-outside-routes.js function isRouteTemplate (line 13) | function isRouteTemplate(filePath) { method create (line 53) | create(context) { FILE: lib/rules/template-no-page-title-component.js method create (line 18) | create(context) { FILE: lib/rules/template-no-passed-in-event-handlers.js constant EMBER_EVENTS (line 5) | const EMBER_EVENTS = new Set([ function isEventName (line 32) | function isEventName(name) { method create (line 74) | create(context) { FILE: lib/rules/template-no-pointer-down-event-binding.js method create (line 24) | create(context) { FILE: lib/rules/template-no-positional-data-test-selectors.js constant BUILT_INS (line 1) | const BUILT_INS = new Set([ function checkNode (line 35) | function checkNode(node, context) { method create (line 90) | create(context) { FILE: lib/rules/template-no-positive-tabindex.js function getTabindexViolation (line 6) | function getTabindexViolation(attrValue) { function getConditionalTabindexViolation (line 62) | function getConditionalTabindexViolation(params) { method create (line 115) | create(context) { FILE: lib/rules/template-no-potential-path-strings.js constant FINE_SYMBOLS (line 1) | const FINE_SYMBOLS = ['|', '/', '\\']; method create (line 27) | create(context) { FILE: lib/rules/template-no-quoteless-attributes.js method create (line 23) | create(context) { FILE: lib/rules/template-no-redundant-fn.js method create (line 25) | create(context) { FILE: lib/rules/template-no-redundant-role.js constant DEFAULT_CONFIG (line 4) | const DEFAULT_CONFIG = { function parseConfig (line 8) | function parseConfig(config) { function createErrorMessageLandmarkElement (line 15) | function createErrorMessageLandmarkElement(element, role) { function createErrorMessageAnyElement (line 19) | function createErrorMessageAnyElement(element, role) { constant ALLOWED_ELEMENT_ROLES (line 23) | const ALLOWED_ELEMENT_ROLES = [ function getSelectImplicitRole (line 39) | function getSelectImplicitRole(node) { constant ROLE_TO_ELEMENTS (line 76) | const ROLE_TO_ELEMENTS = { method create (line 158) | create(context) { FILE: lib/rules/template-no-restricted-invocations.js constant COMPONENT_HELPER_NAME (line 2) | const COMPONENT_HELPER_NAME = 'component'; function dasherize (line 4) | function dasherize(str) { function parseConfig (line 16) | function parseConfig(config) { method create (line 88) | create(context) { FILE: lib/rules/template-no-route-action.js method create (line 25) | create(context) { FILE: lib/rules/template-no-scope-outside-table-headings.js constant HTML_ELEMENTS (line 3) | const HTML_ELEMENTS = new Set(htmlTags); method create (line 27) | create(context) { FILE: lib/rules/template-no-shadowed-elements.js function isHtmlElement (line 9) | function isHtmlElement(tagName) { method create (line 54) | create(context) { FILE: lib/rules/template-no-splattributes-with-class.js constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE = method create (line 26) | create(context) { FILE: lib/rules/template-no-this-in-template-only-components.js constant VALID_COMPONENT_EXTENSIONS (line 4) | const VALID_COMPONENT_EXTENSIONS = ['.js', '.ts']; constant GLIMMER_SCRIPT_EXTENSIONS (line 5) | const GLIMMER_SCRIPT_EXTENSIONS = ['.gjs', '.gts']; function componentClassExists (line 7) | function componentClassExists(pathWithoutExtension) { function isTemplateOnlyComponent (line 13) | function isTemplateOnlyComponent(templateFilePath) { method create (line 83) | create(context) { FILE: lib/rules/template-no-trailing-spaces.js method create (line 24) | create(context) { FILE: lib/rules/template-no-triple-curlies.js method create (line 21) | create(context) { FILE: lib/rules/template-no-unavailable-this.js function isInsideClassOrFunction (line 1) | function isInsideClassOrFunction(node) { method create (line 33) | create(context) { FILE: lib/rules/template-no-unbalanced-curlies.js constant SUSPECT_CHARS (line 3) | const SUSPECT_CHARS = '}}'; method create (line 28) | create(context) { FILE: lib/rules/template-no-unbound.js method create (line 20) | create(context) { FILE: lib/rules/template-no-unknown-arguments-for-builtin-components.js function deprecateArgument (line 1) | function deprecateArgument(componentName, argumentName, replacementAttri... function deprecateEvent (line 11) | function deprecateEvent(componentName, argumentName, replacementAttribut... function removeAtSymbol (line 265) | function removeAtSymbol(txt) { function fuzzyMatch (line 269) | function fuzzyMatch(query, candidates) { function getErrorMessage (line 306) | function getErrorMessage(tagName, argumentName) { function checkConflicts (line 340) | function checkConflicts(nodeMeta, node, seen, context) { function checkRequired (line 366) | function checkRequired(nodeMeta, node, seen, context) { function buildRenameFix (line 388) | function buildRenameFix(attr, newName) { method create (line 421) | create(context) { FILE: lib/rules/template-no-unnecessary-component-helper.js function toPascalCase (line 1) | function toPascalCase(name) { function isValidIdentifier (line 8) | function isValidIdentifier(name) { function isComponentWithStringLiteral (line 12) | function isComponentWithStringLiteral(node) { function getComponentInvocationText (line 24) | function getComponentInvocationText(sourceCode, node, componentName) { function getOpenInvocationEnd (line 38) | function getOpenInvocationEnd(node) { method create (line 75) | create(context) { FILE: lib/rules/template-no-unnecessary-concat.js method create (line 23) | create(context) { FILE: lib/rules/template-no-unnecessary-curly-parens.js function isFixableMustache (line 1) | function isFixableMustache(node) { method create (line 34) | create(context) { FILE: lib/rules/template-no-unnecessary-curly-strings.js method create (line 21) | create(context) { FILE: lib/rules/template-no-unsupported-role-attributes.js function getStaticAttrValue (line 3) | function getStaticAttrValue(node, name) { function nodeSatisfiesAttributeConstraint (line 15) | function nodeSatisfiesAttributeConstraint(node, attrSpec) { function keyMatchesNode (line 35) | function keyMatchesNode(node, key) { constant ELEMENT_ROLES_KEYS_BY_TAG (line 50) | const ELEMENT_ROLES_KEYS_BY_TAG = buildElementRolesIndex(); function buildElementRolesIndex (line 52) | function buildElementRolesIndex() { function getImplicitRole (line 63) | function getImplicitRole(node) { function getExplicitRole (line 100) | function getExplicitRole(node) { function removeRangeWithAdjacentWhitespace (line 108) | function removeRangeWithAdjacentWhitespace(sourceText, range) { method create (line 149) | create(context) { FILE: lib/rules/template-no-unused-block-params.js function collectChildNodes (line 1) | function collectChildNodes(n) { function markParamIfUsed (line 38) | function markParamIfUsed(name, blockParams, usedParams, shadowedParams) { function isPartialStatement (line 45) | function isPartialStatement(n) { function buildShadowedSet (line 52) | function buildShadowedSet(shadowedParams, innerBlockParams, outerBlockPa... function checkBlockParts (line 62) | function checkBlockParts(n, blockParams, usedParams, shadowedParams, new... function checkUnusedBlockParams (line 91) | function checkUnusedBlockParams(context, node, blockParams, startNodes) { method create (line 191) | create(context) { FILE: lib/rules/template-no-valueless-arguments.js function isNamedArgument (line 2) | function isNamedArgument(attrName) { method create (line 24) | create(context) { FILE: lib/rules/template-no-whitespace-for-layout.js constant ERROR_MESSAGE (line 2) | const ERROR_MESSAGE = 'Excess whitespace detected.'; method create (line 25) | create(context) { FILE: lib/rules/template-no-whitespace-within-word.js constant WHITESPACE_ENTITY_LIST (line 1) | const WHITESPACE_ENTITY_LIST = [ constant CHARACTER_REGEX (line 55) | const CHARACTER_REGEX = '[a-zA-Z]'; constant WHITESPACE_WITHIN_WORD_REGEX (line 63) | const WHITESPACE_WITHIN_WORD_REGEX = new RegExp( method create (line 89) | create(context) { FILE: lib/rules/template-no-with.js constant DEPRECATION_URL (line 2) | const DEPRECATION_URL = 'https://deprecations.emberjs.com/v3.x/#toc_embe... method create (line 24) | create(context) { FILE: lib/rules/template-no-yield-block-params-to-else-inverse.js constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE = 'Yielding block params to else/inverse block is no... method create (line 26) | create(context) { FILE: lib/rules/template-no-yield-only.js function isEmptyNode (line 1) | function isEmptyNode(node) { function isYieldOnly (line 9) | function isYieldOnly(node) { method create (line 43) | create(context) { FILE: lib/rules/template-no-yield-to-default.js constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE = 'A block named "default" is not valid'; method create (line 26) | create(context) { FILE: lib/rules/template-quotes.js function attrValueHasChar (line 1) | function attrValueHasChar(node, ch) { method create (line 53) | create(context) { FILE: lib/rules/template-require-aria-activedescendant-tabindex.js constant HTML_TAGS (line 3) | const HTML_TAGS = new Set(dom.keys()); constant INTERACTIVE_ELEMENTS (line 4) | const INTERACTIVE_ELEMENTS = new Set(['input', 'button', 'select', 'text... constant ERROR_MESSAGE (line 5) | const ERROR_MESSAGE = constant FIXED_TABINDEX (line 7) | const FIXED_TABINDEX = 'tabindex="0"'; function isInteractiveElement (line 9) | function isInteractiveElement(node) { function getTabindexNumericValue (line 20) | function getTabindexNumericValue(tabindexAttr) { method create (line 69) | create(context) { FILE: lib/rules/template-require-button-type.js function hasParentForm (line 1) | function hasParentForm(node) { method create (line 36) | create(context) { FILE: lib/rules/template-require-context-role.js constant ROLES_REQUIRING_CONTEXT (line 1) | const ROLES_REQUIRING_CONTEXT = { method create (line 41) | create(context) { function getRoleFromNode (line 84) | function getRoleFromNode(node) { function hasAriaHiddenTrue (line 92) | function hasAriaHiddenTrue(node) { function getParentContext (line 107) | function getParentContext(elementStack) { FILE: lib/rules/template-require-each-key.js constant FIXED_KEY (line 1) | const FIXED_KEY = 'key="@identity"'; method create (line 27) | create(context) { FILE: lib/rules/template-require-form-method.js constant VALID_FORM_METHODS (line 3) | const VALID_FORM_METHODS = ['POST', 'GET', 'DIALOG']; constant DEFAULT_CONFIG (line 5) | const DEFAULT_CONFIG = { function parseConfig (line 9) | function parseConfig(config) { function makeErrorMessage (line 38) | function makeErrorMessage(methods) { function getFixedMethod (line 42) | function getFixedMethod(config) { method create (line 90) | create(context) { FILE: lib/rules/template-require-has-block-helper.js constant TRANSFORMATIONS (line 1) | const TRANSFORMATIONS = { function getErrorMessage (line 6) | function getErrorMessage(name) { function shouldWrapInSubExpression (line 10) | function shouldWrapInSubExpression(node) { method create (line 52) | create(context) { FILE: lib/rules/template-require-iframe-src-attribute.js constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE = constant FIXED_SRC_ATTRIBUTE (line 3) | const FIXED_SRC_ATTRIBUTE = 'src="about:blank"'; method create (line 29) | create(context) { FILE: lib/rules/template-require-iframe-title.js constant INVALID_LITERAL_TYPES (line 7) | const INVALID_LITERAL_TYPES = new Set([ function isInvalidTitleLiteralPath (line 14) | function isInvalidTitleLiteralPath(path) { function getInvalidLiteralType (line 18) | function getInvalidLiteralType(path) { method create (line 71) | create(context) { FILE: lib/rules/template-require-input-label.js function hasAttr (line 1) | function hasAttr(node, name) { function isString (line 5) | function isString(value) { function isRegExp (line 9) | function isRegExp(value) { function allowedFormat (line 13) | function allowedFormat(value) { function parseConfig (line 17) | function parseConfig(config) { function matchesLabelTag (line 35) | function matchesLabelTag(tag, configuredTag) { method create (line 77) | create(context) { FILE: lib/rules/template-require-input-type.js constant VALID_TYPES (line 7) | const VALID_TYPES = new Set([ method create (line 60) | create(context) { FILE: lib/rules/template-require-lang-attribute.js constant DEFAULT_CONFIG (line 3) | const DEFAULT_CONFIG = { function isValidLangTag (line 7) | function isValidLangTag(value) { function parseConfig (line 14) | function parseConfig(config) { method create (line 65) | create(context) { FILE: lib/rules/template-require-mandatory-role-attributes.js function getStaticRolesFromElement (line 7) | function getStaticRolesFromElement(node) { function getStaticRolesFromMustache (line 17) | function getStaticRolesFromMustache(node) { function splitRoleTokens (line 27) | function splitRoleTokens(value) { function getStaticAttrValue (line 38) | function getStaticAttrValue(node, name) { function isClassicHbsFilename (line 63) | function isClassicHbsFilename(context) { function getTagName (line 68) | function getTagName(node, context) { constant AX_CONCEPTS_BY_TAG (line 98) | const AX_CONCEPTS_BY_TAG = buildAxConceptsByTag(); function buildAxConceptsByTag (line 100) | function buildAxConceptsByTag() { function isSemanticRoleElement (line 122) | function isSemanticRoleElement(node, role, context) { function getMissingRequiredAttributes (line 164) | function getMissingRequiredAttributes(roleTokens, foundAriaAttributes, n... method create (line 212) | create(context) { FILE: lib/rules/template-require-media-caption.js method create (line 24) | create(context) { FILE: lib/rules/template-require-presentational-children.js constant ROLES_REQUIRING_PRESENTATIONAL_CHILDREN (line 6) | const ROLES_REQUIRING_PRESENTATIONAL_CHILDREN = new Set( constant NON_SEMANTIC_TAGS (line 11) | const NON_SEMANTIC_TAGS = new Set([ constant SKIPPED_TAGS (line 27) | const SKIPPED_TAGS = new Set([ function getRoleValue (line 34) | function getRoleValue(node) { function hasPresentationalRole (line 42) | function hasPresentationalRole(node) { function findAllSemanticDescendants (line 47) | function findAllSemanticDescendants(children, nonSemanticTags, results) { method create (line 107) | create(context) { FILE: lib/rules/template-require-splattributes.js method create (line 26) | create(context) { FILE: lib/rules/template-require-strict-mode.js constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE = function isStrictModeFile (line 4) | function isStrictModeFile(filePath) { method create (line 30) | create(context) { FILE: lib/rules/template-require-valid-alt-text.js constant REDUNDANT_WORDS (line 3) | const REDUNDANT_WORDS = ['image', 'photo', 'picture', 'logo', 'spacer']; function findAttr (line 5) | function findAttr(node, name) { function hasAttr (line 9) | function hasAttr(node, name) { function hasNonEmptyTextAttr (line 27) | function hasNonEmptyTextAttr(node, name) { function hasAnyNonEmptyTextAttr (line 44) | function hasAnyNonEmptyTextAttr(node, names) { function getTextValue (line 48) | function getTextValue(attr) { function getNormalizedAltText (line 58) | function getNormalizedAltText(altAttr) { function hasChildren (line 77) | function hasChildren(node) { method create (line 122) | create(context) { FILE: lib/rules/template-require-valid-form-groups.js constant FORM_ELEMENTS (line 2) | const FORM_ELEMENTS = new Set(['input']); function hasRoleGroup (line 4) | function hasRoleGroup(node) { function hasAriaLabel (line 9) | function hasAriaLabel(node) { function isValidFormGroup (line 13) | function isValidFormGroup(node) { function hasMultipleFormElementsInParentScope (line 21) | function hasMultipleFormElementsInParentScope(node) { function hasValidGroupingAncestor (line 35) | function hasValidGroupingAncestor(node) { method create (line 74) | create(context) { FILE: lib/rules/template-require-valid-named-block-naming-format.js constant FORMAT (line 1) | const FORMAT = { function camelize (line 6) | function camelize(str) { function dasherize (line 18) | function dasherize(str) { constant FORMAT_METHOD (line 22) | const FORMAT_METHOD = { constant DEFAULT_FORMAT (line 27) | const DEFAULT_FORMAT = FORMAT.CAMEL_CASE; function parseConfig (line 29) | function parseConfig(config) { function getStringQuote (line 46) | function getStringQuote(text) { function isHasBlockNode (line 50) | function isHasBlockNode(node) { function isYieldNode (line 54) | function isYieldNode(node) { method create (line 87) | create(context) { FILE: lib/rules/template-self-closing-void-elements.js method create (line 29) | create(context) { FILE: lib/rules/template-simple-modifiers.js function isModifierHelper (line 1) | function isModifierHelper(node) { function isValidFirstParam (line 5) | function isValidFirstParam(node) { method create (line 35) | create(context) { FILE: lib/rules/template-simple-unless.js function isUnless (line 1) | function isUnless(node) { function isIf (line 5) | function isIf(node) { method create (line 44) | create(context) { FILE: lib/rules/template-sort-invocations.js method create (line 28) | create(context) { FILE: lib/rules/template-splat-attributes-only.js method create (line 22) | create(context) { FILE: lib/rules/template-style-concatenation.js method create (line 25) | create(context) { FILE: lib/rules/template-table-groups.js constant ALLOWED_TABLE_CHILDREN (line 1) | const ALLOWED_TABLE_CHILDREN = ['caption', 'colgroup', 'thead', 'tbody',... constant CONTROL_FLOW_START_MARK (line 2) | const CONTROL_FLOW_START_MARK = 0; constant CONTROL_FLOW_END_MARK (line 3) | const CONTROL_FLOW_END_MARK = 1; function dasherize (line 5) | function dasherize(str) { function isControlFlowHelper (line 12) | function isControlFlowHelper(node) { function isIfOrUnless (line 20) | function isIfOrUnless(node) { function getEffectiveChildren (line 25) | function getEffectiveChildren(children) { function isAllowedTableChild (line 45) | function isAllowedTableChild(child, internalTags) { method create (line 136) | create(context) { FILE: lib/rules/template-template-length.js constant DEFAULT_MAX_LENGTH (line 1) | const DEFAULT_MAX_LENGTH = 200; constant DEFAULT_MIN_LENGTH (line 2) | const DEFAULT_MIN_LENGTH = 5; constant DEFAULT_CONFIG (line 4) | const DEFAULT_CONFIG = { function isValidConfigObjectFormat (line 9) | function isValidConfigObjectFormat(config) { function parseConfig (line 25) | function parseConfig(config) { method create (line 92) | create(context) { FILE: lib/rules/use-brace-expansion.js constant ERROR_MESSAGE (line 11) | const ERROR_MESSAGE = 'Use brace expansion'; method create (line 29) | create(context) { FILE: lib/rules/use-ember-data-rfc-395-imports.js constant MAPPINGS (line 3) | const MAPPINGS = require('@ember-data/rfc395-data'); function oldDataImportsReducer (line 15) | function oldDataImportsReducer(acc, mapping) { constant OLD_DATA_IMPORTS (line 23) | const OLD_DATA_IMPORTS = MAPPINGS.reduce(oldDataImportsReducer, Object.c... function globalsReducer (line 36) | function globalsReducer(acc, mapping) { constant GLOBALS (line 54) | const GLOBALS = MAPPINGS.reduce(globalsReducer, Object.create(null)); constant ERROR_MESSAGE (line 56) | const ERROR_MESSAGE = method create (line 79) | create(context) { FILE: lib/rules/use-ember-get-and-set.js method create (line 48) | create(context) { FILE: lib/utils/computed-properties.js function isComputedPropertyBodyArg (line 21) | function isComputedPropertyBodyArg(node) { function getComputedPropertyFunctionBody (line 42) | function getComputedPropertyFunctionBody(node) { FILE: lib/utils/computed-property-dependent-keys.js function isBare (line 20) | function isBare(key) { function collapseKeys (line 34) | function collapseKeys(keys) { function expandKeys (line 66) | function expandKeys(keys) { function expandKey (line 80) | function expandKey(key) { constant ARRAY_PROPERTIES (line 110) | const ARRAY_PROPERTIES = new Set(['length', 'firstObject', 'lastObject']); function computedPropertyDependencyMatchesKeyPath (line 119) | function computedPropertyDependencyMatchesKeyPath(dependency, keyPath) { function keyExistsAsPrefixInList (line 169) | function keyExistsAsPrefixInList(keys, key) { function findComputedPropertyDependentKeys (line 193) | function findComputedPropertyDependentKeys( function getComputedPropertyDependentKeysForConfig (line 265) | function getComputedPropertyDependentKeysForConfig(argument, index, { st... function getComputedPropertyDependentKeys (line 315) | function getComputedPropertyDependentKeys(node, computedDependenciesConf... FILE: lib/utils/computed-property-macros.js constant MACROS_TO_TRACKED_ARGUMENT_COUNT (line 8) | const MACROS_TO_TRACKED_ARGUMENT_COUNT = { constant DEFAULT_MACRO_CONFIGURATIONS (line 45) | const DEFAULT_MACRO_CONFIGURATIONS = Object.entries(MACROS_TO_TRACKED_AR... function getMacros (line 65) | function getMacros() { function getMacrosFromImports (line 76) | function getMacrosFromImports(macrosByImport, macrosByIndexImport) { function getTrackedArgumentCount (line 89) | function getTrackedArgumentCount(macro) { function macroToCanonicalName (line 100) | function macroToCanonicalName(macro, macroImportNames) { FILE: lib/utils/decorators.js function getDecoratorName (line 18) | function getDecoratorName(node) { function findDecorator (line 30) | function findDecorator(node, decoratorName) { function findDecoratorByNameCallback (line 44) | function findDecoratorByNameCallback(node, callback) { function hasDecorator (line 57) | function hasDecorator(node, decoratorName) { function getDecorator (line 72) | function getDecorator(node, decoratorName) { function isClassPropertyOrPropertyDefinitionWithDecorator (line 88) | function isClassPropertyOrPropertyDefinitionWithDecorator(node, decorato... FILE: lib/utils/editorconfig.js function resolveEditorConfig (line 13) | function resolveEditorConfig(filePath) { FILE: lib/utils/ember-source-version.js function getEmberSourceVersion (line 11) | function getEmberSourceVersion(projectRoot) { function isVersionAtLeast (line 32) | function isVersionAtLeast(version, major, minor) { function isEmberSourceVersionAtLeast (line 56) | function isEmberSourceVersionAtLeast(major, minor, projectRoot) { FILE: lib/utils/ember.js constant CORE_MODULE_IMPORT_PATHS (line 77) | const CORE_MODULE_IMPORT_PATHS = { function isClassicEmberCoreModule (line 90) | function isClassicEmberCoreModule(node, module, filePath) { function isLocalModule (line 101) | function isLocalModule(callee, element) { function isEmberModule (line 108) | function isEmberModule(callee, element, module) { function isPropOfType (line 118) | function isPropOfType(node, type) { function isModule (line 139) | function isModule(node, element, moduleName = 'Ember') { function isDSModel (line 151) | function isDSModel(node, filePath) { function isEmberDataModel (line 162) | function isEmberDataModel(context, node) { function isModuleByFilePath (line 211) | function isModuleByFilePath(filePath, module) { function isTestFile (line 231) | function isTestFile(fileName) { function isMirageDirectory (line 237) | function isMirageDirectory(fileName) { function isMirageConfig (line 242) | function isMirageConfig(fileName) { constant COMMON_JQUERY_NAMES (line 248) | const COMMON_JQUERY_NAMES = ['$', 'jQuery']; constant COMMON_LODASH_NAMES (line 249) | const COMMON_LODASH_NAMES = ['_', 'lodash']; constant THIRD_PARTY_LIBRARIES_WITH_EXTEND (line 250) | const THIRD_PARTY_LIBRARIES_WITH_EXTEND = new Set([...COMMON_JQUERY_NAME... function isExtendObject (line 252) | function isExtendObject(node) { function isReopenClassObject (line 268) | function isReopenClassObject(node) { function isReopenObject (line 272) | function isReopenObject(node) { function isEmberCoreModule (line 276) | function isEmberCoreModule(context, node, moduleName) { function isAnyEmberCoreModule (line 315) | function isAnyEmberCoreModule(context, node) { function isEmberComponent (line 330) | function isEmberComponent(context, node) { function isGlimmerComponent (line 334) | function isGlimmerComponent(context, node) { function isEmberController (line 338) | function isEmberController(context, node) { function isEmberMixin (line 342) | function isEmberMixin(context, node) { function isEmberRoute (line 346) | function isEmberRoute(context, node) { function isEmberService (line 350) | function isEmberService(context, node) { function isEmberArrayProxy (line 354) | function isEmberArrayProxy(context, node) { function isEmberObjectProxy (line 358) | function isEmberObjectProxy(context, node) { function isEmberObject (line 362) | function isEmberObject(context, node) { function isEmberHelper (line 366) | function isEmberHelper(context, node) { function isEmberProxy (line 370) | function isEmberProxy(context, node) { function isInjectedServiceProp (line 383) | function isInjectedServiceProp(node, importedEmberName, importedInjectNa... function isInjectedControllerProp (line 408) | function isInjectedControllerProp(node, importedEmberName, importedContr... function isObserverProp (line 433) | function isObserverProp(node, importedEmberName, importedObserverName) { function isComputedProp (line 457) | function isComputedProp( function isComputedPropMacro (line 494) | function isComputedPropMacro(node, importedEmberName, importedComputedNa... function isArrayProp (line 513) | function isArrayProp(node) { function isObjectProp (line 522) | function isObjectProp(node) { function isCustomProp (line 531) | function isCustomProp(property) { function isRouteLifecycleHook (line 550) | function isRouteLifecycleHook(property) { function isActionsProp (line 554) | function isActionsProp(property) { function isComponentLifecycleHookName (line 563) | function isComponentLifecycleHookName(name) { function isGlimmerComponentLifecycleHookName (line 580) | function isGlimmerComponentLifecycleHookName(name) { function isComponentLifecycleHook (line 584) | function isComponentLifecycleHook(property) { function isGlimmerComponentLifecycleHook (line 588) | function isGlimmerComponentLifecycleHook(property) { function isRoute (line 594) | function isRoute(node) { function isRouteLifecycleHookName (line 603) | function isRouteLifecycleHookName(name) { function isRouteProperty (line 618) | function isRouteProperty(name) { function isRouteDefaultProp (line 633) | function isRouteDefaultProp(property) { function isControllerProperty (line 649) | function isControllerProperty(name) { function isControllerDefaultProp (line 662) | function isControllerDefaultProp(property) { function getModuleProperties (line 671) | function getModuleProperties(moduleNode, scopeManager) { function getEmberImportAliasName (line 686) | function getEmberImportAliasName(importDeclaration) { function isSingleLineFn (line 696) | function isSingleLineFn(property, importedEmberName, importedObserverNam... function isMultiLineFn (line 708) | function isMultiLineFn(property, importedEmberName, importedObserverName) { function isFunctionExpression (line 720) | function isFunctionExpression(property) { function isRelation (line 732) | function isRelation(property) { function hasDuplicateDependentKeys (line 749) | function hasDuplicateDependentKeys(callExp, importedEmberName, importedC... function parseDependentKeys (line 768) | function parseDependentKeys(callExp) { function unwrapBraceExpressions (line 788) | function unwrapBraceExpressions(dependentKeys) { function isEmberObjectImplementingUnknownProperty (line 806) | function isEmberObjectImplementingUnknownProperty(node, scopeManager) { function isObserverDecorator (line 831) | function isObserverDecorator(node, importedObservesName) { function convertServiceNameToKebabCase (line 841) | function convertServiceNameToKebabCase(serviceName) { FILE: lib/utils/fixer.js function removeCommaSeparatedNode (line 10) | function removeCommaSeparatedNode(node, sourceCode, fixer) { function insertImportDeclaration (line 32) | function insertImportDeclaration(sourceCode, fixer, source, specifier, d... FILE: lib/utils/html-interactive-content.js constant UNCONDITIONAL_INTERACTIVE_TAGS (line 26) | const UNCONDITIONAL_INTERACTIVE_TAGS = new Set([ function isHtmlInteractiveContent (line 52) | function isHtmlInteractiveContent(node, getTextAttrValue, options = {}) { function hasAttribute (line 90) | function hasAttribute(node, name) { FILE: lib/utils/import.js function getSourceModuleNameForIdentifier (line 25) | function getSourceModuleNameForIdentifier(context, node) { function getSourceModuleName (line 37) | function getSourceModuleName(node) { function getImportIdentifier (line 61) | function getImportIdentifier(node, source, namedImportIdentifier = null) { FILE: lib/utils/interactive-roles.js function buildInteractiveRoleSet (line 43) | function buildInteractiveRoleSet() { function buildCompositeWidgetChildren (line 57) | function buildCompositeWidgetChildren() { FILE: lib/utils/is-native-element.js constant ELEMENT_TAGS (line 13) | const ELEMENT_TAGS = new Set([...htmlTags, ...svgTags, ...mathmlTagNames]); function isNativeElement (line 49) | function isNativeElement(node, sourceCode) { function hasBindingInScopeChain (line 69) | function hasBindingInScopeChain(scope, name) { function isComponentInvocation (line 86) | function isComponentInvocation(node, sourceCode) { FILE: lib/utils/javascript.js function duplicateArrays (line 14) | function duplicateArrays(arr, times) { function removeWhitespace (line 22) | function removeWhitespace(str) { FILE: lib/utils/landmark-roles.js constant ALL_LANDMARK_ROLES (line 11) | const ALL_LANDMARK_ROLES = buildLandmarkRoleSet(); constant LANDMARK_ROLES (line 27) | const LANDMARK_ROLES = new Set([...ALL_LANDMARK_ROLES].filter((role) => ... function buildLandmarkRoleSet (line 29) | function buildLandmarkRoleSet() { FILE: lib/utils/new-module.js constant EMBER_NAMESPACES (line 12) | const EMBER_NAMESPACES = new Set(['inject.controller', 'inject.service']); function isNamespace (line 20) | function isNamespace(obj) { function isNamedExport (line 24) | function isNamedExport(obj) { function getReplacementSpecifier (line 28) | function getReplacementSpecifier(obj) { function buildMessage (line 45) | function buildMessage(obj) { function buildFix (line 84) | function buildFix(node, modulesData) { function buildNewImports (line 98) | function buildNewImports(node, modulesData, moduleName) { function buildLines (line 123) | function buildLines(newImports) { function getFullNames (line 146) | function getFullNames(prefix, node) { function isDestructuring (line 160) | function isDestructuring(node) { FILE: lib/utils/property-getter.js function isThisGetCall (line 16) | function isThisGetCall(node) { function isSimpleThisExpression (line 43) | function isSimpleThisExpression(node) { function nodeToDependentKey (line 84) | function nodeToDependentKey(nodeWithThisExpression, context) { FILE: lib/utils/property-order.js constant NAMES (line 14) | const NAMES = { function determinePropertyType (line 55) | function determinePropertyType( function getOrder (line 151) | function getOrder(ORDER, type) { function getNodeKeyName (line 169) | function getNodeKeyName(node) { function getName (line 181) | function getName(type, node) { function reportUnorderedProperties (line 200) | function reportUnorderedProperties( function getCommentOffsetBefore (line 322) | function getCommentOffsetBefore(property, sourceCode) { function addBackwardsPosition (line 342) | function addBackwardsPosition(order, newPosition, targetPosition) { FILE: lib/utils/property-setter.js function isThisSet (line 13) | function isThisSet(node) { FILE: lib/utils/scope-references-this.js function scopeReferencesThis (line 11) | function scopeReferencesThis(node) { FILE: lib/utils/stack.js method constructor (line 2) | constructor() { method pop (line 5) | pop() { method push (line 8) | push(item) { method peek (line 11) | peek() { method size (line 14) | size() { FILE: lib/utils/static-attr-value.js function getStaticAttrValue (line 15) | function getStaticAttrValue(value) { function extractLiteral (line 48) | function extractLiteral(path) { FILE: lib/utils/types.js function isAnyFunctionExpression (line 57) | function isAnyFunctionExpression(node) { function isArrayExpression (line 68) | function isArrayExpression(node) { function isArrowFunctionExpression (line 79) | function isArrowFunctionExpression(node) { function isAssignmentExpression (line 90) | function isAssignmentExpression(node) { function isBinaryExpression (line 101) | function isBinaryExpression(node) { function isCallExpression (line 112) | function isCallExpression(node) { function isCallWithFunctionExpression (line 124) | function isCallWithFunctionExpression(node) { function isClassDeclaration (line 142) | function isClassDeclaration(node) { function isClassPropertyOrPropertyDefinition (line 152) | function isClassPropertyOrPropertyDefinition(node) { function isCommaToken (line 158) | function isCommaToken(token) { function isConciseArrowFunctionWithCallExpression (line 170) | function isConciseArrowFunctionWithCallExpression(node) { function isConditionalExpression (line 181) | function isConditionalExpression(node) { function isDecorator (line 192) | function isDecorator(node) { function isExpressionStatement (line 203) | function isExpressionStatement(node) { function isFunctionDeclaration (line 214) | function isFunctionDeclaration(node) { function isFunctionExpression (line 225) | function isFunctionExpression(node) { function isIdentifier (line 236) | function isIdentifier(node) { function isImportDeclaration (line 247) | function isImportDeclaration(node) { function isImportDefaultSpecifier (line 258) | function isImportDefaultSpecifier(node) { function isLiteral (line 269) | function isLiteral(node) { function isLogicalExpression (line 280) | function isLogicalExpression(node) { function isMemberExpression (line 291) | function isMemberExpression(node) { function isMethodDefinition (line 302) | function isMethodDefinition(node) { function isNewExpression (line 313) | function isNewExpression(node) { function isObjectExpression (line 324) | function isObjectExpression(node) { function isObjectPattern (line 335) | function isObjectPattern(node) { function isOptionalCallExpression (line 346) | function isOptionalCallExpression(node) { function isOptionalMemberExpression (line 357) | function isOptionalMemberExpression(node) { function isProperty (line 368) | function isProperty(node) { function isReturnStatement (line 379) | function isReturnStatement(node) { function isSpreadElement (line 390) | function isSpreadElement(node) { function isString (line 394) | function isString(node) { function isStringLiteral (line 398) | function isStringLiteral(node) { function isTaggedTemplateExpression (line 409) | function isTaggedTemplateExpression(node) { function isTemplateLiteral (line 420) | function isTemplateLiteral(node) { function isThisExpression (line 431) | function isThisExpression(node) { function isUnaryExpression (line 442) | function isUnaryExpression(node) { function isVariableDeclarator (line 453) | function isVariableDeclarator(node) { FILE: lib/utils/utils.js function findNodes (line 40) | function findNodes(body, nodeName) { function getSize (line 56) | function getSize(node) { function parseCallee (line 66) | function parseCallee(node) { function parseArgs (line 94) | function parseArgs(node) { function findUnorderedProperty (line 112) | function findUnorderedProperty(arr) { function getPropertyValue (line 133) | function getPropertyValue(node, path) { function collectObjectPatternBindings (line 161) | function collectObjectPatternBindings(node, initialObjToBinding) { function isEmptyMethod (line 186) | function isEmptyMethod(node) { function getAncestor (line 199) | function getAncestor(node, predicate) { function getName (line 223) | function getName(node, includeFunctionCallParens = false) { function getNodeOrNodeFromVariable (line 254) | function getNodeOrNodeFromVariable(node, scopeManager) { function isInLeftSideOfAssignmentExpression (line 287) | function isInLeftSideOfAssignmentExpression(node) { function startsWithThisExpression (line 299) | function startsWithThisExpression(node) { FILE: scripts/bench-compare.mjs constant BASE_BRANCH (line 29) | const BASE_BRANCH = baseIdx !== -1 ? args[baseIdx + 1] : 'master'; function run (line 35) | function run(cmd, opts = {}) { function resolveRef (line 43) | function resolveRef(branch) { constant ROOT (line 58) | const ROOT = process.cwd(); constant CONTROL_DIR (line 59) | const CONTROL_DIR = join(tmpdir(), `bench-control-${BASE_BRANCH}-${Date.... constant BASE_REF (line 63) | const BASE_REF = resolveRef(BASE_BRANCH); function cleanup (line 67) | function cleanup() { FILE: scripts/bench-utils.mjs function formatTime (line 7) | function formatTime(ns) { function deltaEmoji (line 13) | function deltaEmoji(pct) { function parsePairs (line 26) | function parsePairs(json) { function readBenchJSON (line 55) | function readBenchJSON(path) { FILE: scripts/update-rules.js function generate (line 21) | function generate(filename, filter) { FILE: tests/bench/large.js class ProjectDashboardComponent (line 8) | class ProjectDashboardComponent extends Component { method filteredProjects (line 71) | get filteredProjects() { method sortedProjects (line 90) | get sortedProjects() { method paginatedProjects (line 101) | get paginatedProjects() { method totalPages (line 106) | get totalPages() { method hasNextPage (line 110) | get hasNextPage() { method hasPreviousPage (line 114) | get hasPreviousPage() { method currentProjectTasks (line 120) | get currentProjectTasks() { method filteredTasks (line 125) | get filteredTasks() { method groupedTasks (line 164) | get groupedTasks() { method tasksByStatus (line 174) | get tasksByStatus() { method overdueTasks (line 184) | get overdueTasks() { method upcomingDeadlines (line 190) | get upcomingDeadlines() { method projectMembers (line 206) | get projectMembers() { method taskAssignmentMap (line 211) | get taskAssignmentMap() { method projectStats (line 219) | get projectStats() { method globalStats (line 241) | get globalStats() { method burndownData (line 252) | get burndownData() { method totalTimeSpent (line 274) | get totalTimeSpent() { method timeByTask (line 278) | get timeByTask() { method timeByUser (line 287) | get timeByUser() { method isTimerRunning (line 296) | get isTimerRunning() { method isOverviewTab (line 302) | get isOverviewTab() { method isTasksTab (line 306) | get isTasksTab() { method isBoardTab (line 310) | get isBoardTab() { method isTimelineTab (line 314) | get isTimelineTab() { method isMembersTab (line 318) | get isMembersTab() { method isSettingsTab (line 322) | get isSettingsTab() { method isActivityTab (line 326) | get isActivityTab() { method loadData (line 332) | @action method refreshData (line 358) | @action method selectProject (line 366) | @action method clearProjectSelection (line 374) | @action method createProject (line 380) | @action method updateProject (line 408) | @action method deleteProject (line 428) | @action method archiveProject (line 448) | @action method selectTask (line 462) | @action method clearTaskSelection (line 467) | @action method createTask (line 472) | @action method updateTaskStatus (line 504) | @action method assignTask (line 524) | @action method updateTaskPriority (line 538) | @action method deleteTask (line 552) | @action method duplicateTask (line 568) | @action method addTaskLabel (line 594) | @action method removeTaskLabel (line 600) | @action method addComment (line 608) | @action method deleteComment (line 626) | @action method taskComments (line 637) | get taskComments() { method onDragStart (line 646) | @action method onDragOver (line 651) | @action method onDrop (line 656) | @action method onDragEnd (line 665) | @action method startTimer (line 673) | @action method stopTimer (line 691) | @action method deleteTimeEntry (line 717) | @action method setTab (line 730) | @action method updateSearch (line 737) | @action method clearSearch (line 743) | @action method toggleFilters (line 749) | @action method setFilterStatus (line 754) | @action method setFilterAssignee (line 760) | @action method setFilterPriority (line 766) | @action method setDateRange (line 772) | @action method clearFilters (line 778) | @action method setSortField (line 787) | @action method setViewMode (line 797) | @action method setGroupBy (line 802) | @action method toggleCompleted (line 807) | @action method toggleGroupCollapse (line 812) | @action method nextPage (line 820) | @action method previousPage (line 825) | @action method goToPage (line 830) | @action method openCreateModal (line 835) | @action method closeCreateModal (line 840) | @action method openEditModal (line 847) | @action method closeEditModal (line 853) | @action method toggleActivitySidebar (line 859) | @action method exportProjectData (line 866) | @action method importProjectData (line 899) | @action method _resetProjectForm (line 939) | _resetProjectForm() { method _resetTaskForm (line 946) | _resetTaskForm() { method _logActivity (line 956) | _logActivity(type, entity, metadata = {}) { method willDestroy (line 969) | willDestroy() { FILE: tests/bench/medium.js class TodoListComponent (line 7) | class TodoListComponent extends Component { method filteredItems (line 33) | get filteredItems() { method sortedItems (line 65) | get sortedItems() { method completedCount (line 84) | get completedCount() { method activeCount (line 88) | get activeCount() { method hasCompleted (line 92) | get hasCompleted() { method allCompleted (line 96) | get allCompleted() { method selectedCount (line 100) | get selectedCount() { method hasSelection (line 104) | get hasSelection() { method allSelected (line 108) | get allSelected() { method overdueCount (line 115) | get overdueCount() { method itemsByCategory (line 121) | get itemsByCategory() { method canUndo (line 131) | get canUndo() { method canRedo (line 135) | get canRedo() { method progressPercentage (line 139) | get progressPercentage() { method statsForDisplay (line 144) | get statsForDisplay() { method _pushUndo (line 155) | _pushUndo(actionDescription) { method addItem (line 166) | @action method toggleItem (line 199) | @action method removeItem (line 206) | @action method clearCompleted (line 214) | @action method setFilter (line 225) | @action method updateLabel (line 230) | @action method handleKeydown (line 235) | @action method toggleAll (line 244) | @action method startEditing (line 254) | @action method cancelEditing (line 260) | @action method saveEdit (line 266) | @action method toggleSelection (line 279) | @action method selectAll (line 291) | @action method bulkDelete (line 301) | @action method bulkComplete (line 312) | @action method bulkSetPriority (line 324) | @action method archiveCompleted (line 336) | @action method restoreFromArchive (line 344) | @action method toggleArchiveView (line 352) | @action method setSortBy (line 357) | @action method updateSearch (line 367) | @action method setCategory (line 372) | @action method setPriority (line 377) | @action method setDueDate (line 382) | @action method undo (line 387) | @action method redo (line 402) | @action method duplicateItem (line 417) | @action method exportItems (line 433) | @action method importItems (line 446) | @action FILE: tests/bench/small.js class CounterComponent (line 6) | class CounterComponent extends Component { method increment (line 11) | @action method isPositive (line 16) | get isPositive() { FILE: tests/config-setup.js constant CONFIG_NAMES (line 7) | const CONFIG_NAMES = Object.keys(configs); FILE: tests/helpers/babel-eslint-parser.js function parse (line 3) | function parse(code) { function parseForESLint (line 11) | function parseForESLint(code) { FILE: tests/helpers/faux-context.js class FauxContext (line 9) | class FauxContext { method constructor (line 10) | constructor(code, filename = '', report = () => {}) { method getAncestors (line 24) | getAncestors() { FILE: tests/helpers/test-case.js function addPrefix (line 6) | function addPrefix(testCase, prefix) { function addComputedImport (line 23) | function addComputedImport(testCase) { FILE: tests/lib/eslint-directive-comments-test.js constant RULE_ID (line 23) | const RULE_ID = 'ember/template-no-unnecessary-concat'; function makeLinter (line 25) | function makeLinter(parserName) { FILE: tests/lib/rules-preprocessor/gjs-gts-parser-test.js function initESLint (line 23) | function initESLint(parser = gjsGtsParser) { FILE: tests/lib/rules-preprocessor/template-no-deprecated/component-stub.ts class ComponentBase (line 1) | class ComponentBase { FILE: tests/lib/rules-preprocessor/template-no-deprecated/component-with-args.ts class ComponentWithArgs (line 3) | class ComponentWithArgs extends ComponentBase<{ FILE: tests/lib/rules-preprocessor/template-no-deprecated/current-component.ts class CurrentComponent (line 1) | class CurrentComponent {} FILE: tests/lib/rules-preprocessor/template-no-deprecated/deprecated-component.ts class DeprecatedComponent (line 2) | class DeprecatedComponent {} FILE: tests/lib/rules-preprocessor/template-no-deprecated/deprecated-helper.ts function deprecatedHelper (line 2) | function deprecatedHelper(): string { FILE: tests/lib/rules/no-deprecated-router-transition-methods.js function validRouteClassUsage (line 23) | function validRouteClassUsage(serviceDefinition) { function validRouteExtendUsage (line 43) | function validRouteExtendUsage(serviceDefinition) { function invalidRouteClassUsage (line 63) | function invalidRouteClassUsage(serviceDefinition, { routerServiceName, ... function invalidRouteExtendUsage (line 104) | function invalidRouteExtendUsage(serviceDefinition, { routerServiceName,... FILE: tests/lib/rules/no-implicit-injections.js constant FLASH_MESSAGES_CONFIG (line 23) | const FLASH_MESSAGES_CONFIG = { constant MEDIA_CONFIG (line 26) | const MEDIA_CONFIG = { constant FEATURE_CHECKER_CONFIG (line 29) | const FEATURE_CHECKER_CONFIG = { constant NESTED_SERVICE_CONFIG (line 32) | const NESTED_SERVICE_CONFIG = { function createClassUsage (line 36) | function createClassUsage(serviceDefinition) { function createExtendUsage (line 55) | function createExtendUsage(serviceDefinition) { FILE: tests/lib/rules/no-implicit-service-injection-argument.js constant EMBER_IMPORT (line 10) | const EMBER_IMPORT = "import Ember from 'ember';"; constant INJECT_IMPORT (line 11) | const INJECT_IMPORT = "import {inject} from '@ember/service';"; constant SERVICE_IMPORT (line 12) | const SERVICE_IMPORT = "import {inject as service} from '@ember/service';"; constant NEW_SERVICE_IMPORT (line 13) | const NEW_SERVICE_IMPORT = "import {service} from '@ember/service';"; FILE: tests/lib/rules/no-invalid-debug-function-arguments.js constant VALID_USAGES_BASIC (line 14) | const VALID_USAGES_BASIC = [ constant VALID_USAGES_FOR_EACH_DEBUG_FUNCTION (line 23) | const VALID_USAGES_FOR_EACH_DEBUG_FUNCTION = DEBUG_FUNCTIONS.flatMap((de... constant VALID_USAGES (line 76) | const VALID_USAGES = [...VALID_USAGES_BASIC, ...VALID_USAGES_FOR_EACH_DE... constant INVALID_USAGES (line 78) | const INVALID_USAGES = DEBUG_FUNCTIONS.flatMap((debugFunction) => [ FILE: tests/lib/rules/no-pause-test.js constant TEST_FILE_NAME (line 16) | const TEST_FILE_NAME = 'some-test.js'; FILE: tests/lib/rules/no-private-routing-service.js constant EMBER_IMPORT (line 14) | const EMBER_IMPORT = "import Ember from 'ember';"; constant SERVICE_IMPORT (line 15) | const SERVICE_IMPORT = "import {inject as service} from '@ember/service';"; constant NEW_SERVICE_IMPORT (line 16) | const NEW_SERVICE_IMPORT = "import {service} from '@ember/service';"; FILE: tests/lib/rules/no-restricted-service-injections.js constant EMBER_IMPORT (line 6) | const EMBER_IMPORT = "import Ember from 'ember';"; constant INJECT_IMPORT (line 7) | const INJECT_IMPORT = "import {inject} from '@ember/service';"; constant SERVICE_IMPORT (line 8) | const SERVICE_IMPORT = "import {inject as service} from '@ember/service';"; constant NEW_SERVICE_IMPORT (line 9) | const NEW_SERVICE_IMPORT = "import {service} from '@ember/service';"; FILE: tests/lib/rules/no-test-and-then.js constant TEST_FILE_NAME (line 21) | const TEST_FILE_NAME = 'some-test.js'; FILE: tests/lib/rules/no-test-import-export.js constant NO_IMPORT_MESSAGE (line 10) | const NO_IMPORT_MESSAGE = rule.meta.importMessage; constant NO_EXPORT_MESSAGE (line 11) | const NO_EXPORT_MESSAGE = rule.meta.exportMessage; FILE: tests/lib/rules/no-test-module-for.js constant TEST_FILE_NAME (line 21) | const TEST_FILE_NAME = 'some-test.js'; FILE: tests/lib/rules/no-test-this-render.js constant TEST_FILE_NAME (line 16) | const TEST_FILE_NAME = 'some-test.js'; FILE: tests/lib/rules/no-unnecessary-service-injection-argument.js constant EMBER_IMPORT (line 10) | const EMBER_IMPORT = "import Ember from 'ember';"; constant SERVICE_IMPORT (line 11) | const SERVICE_IMPORT = "import {inject} from '@ember/service';"; constant RENAMED_SERVICE_IMPORT (line 12) | const RENAMED_SERVICE_IMPORT = "import {inject as service} from '@ember/... constant NEW_SERVICE_IMPORT (line 13) | const NEW_SERVICE_IMPORT = "import {service} from '@ember/service';"; FILE: tests/lib/rules/no-unused-services.js constant SERVICE_NAME (line 20) | const SERVICE_NAME = 'fooName'; constant SERVICE_IMPORT (line 21) | const SERVICE_IMPORT = "import {inject as service} from '@ember/service';"; constant NEW_SERVICE_IMPORT (line 22) | const NEW_SERVICE_IMPORT = "import {service} from '@ember/service';"; constant EO_IMPORTS (line 23) | const EO_IMPORTS = "import {computed, get, getProperties, observer} from... constant RENAMED_EO_IMPORTS (line 24) | const RENAMED_EO_IMPORTS = constant ALIAS_IMPORT (line 26) | const ALIAS_IMPORT = "import {alias} from '@ember/object/computed';"; constant RENAMED_ALIAS_IMPORT (line 27) | const RENAMED_ALIAS_IMPORT = "import {alias as al} from '@ember/object/c... constant OBSERVES_IMPORT (line 28) | const OBSERVES_IMPORT = "import {observes} from '@ember-decorators/objec... constant RENAMED_OBSERVES_IMPORT (line 29) | const RENAMED_OBSERVES_IMPORT = "import {observes as obs} from '@ember-d... constant EMBER_IMPORT (line 30) | const EMBER_IMPORT = "import Ember from 'ember';"; constant RENAMED_EMBER_IMPORT (line 31) | const RENAMED_EMBER_IMPORT = "import Em from 'ember';"; function generateUseCasesFor (line 38) | function generateUseCasesFor(propertyName) { function generateEmberObjectUseCasesFor (line 61) | function generateEmberObjectUseCasesFor(propertyName, renamed = false) { function generateMacroUseCasesFor (line 80) | function generateMacroUseCasesFor(propertyName, renamed = false) { function generateComputedUseCasesFor (line 95) | function generateComputedUseCasesFor(propertyName, renamed = false) { function generateObserverUseCasesFor (line 115) | function generateObserverUseCasesFor(propertyName, renamed = false) { function generateValid (line 135) | function generateValid(importString = SERVICE_IMPORT) { FILE: tests/lib/rules/prefer-ember-test-helpers.js constant TEST_FILE_NAME (line 21) | const TEST_FILE_NAME = 'some-test.js'; constant REGULAR_FILE_NAME (line 22) | const REGULAR_FILE_NAME = 'regular-file.js'; FILE: tests/lib/rules/require-valid-css-selector-in-test-helpers.js constant EXAMPLE_SELECTORS (line 11) | const EXAMPLE_SELECTORS = [ FILE: tests/lib/rules/template-no-action-on-submit-button.js constant ERROR_MESSAGE (line 9) | const ERROR_MESSAGE = FILE: tests/lib/rules/template-no-curly-component-invocation.js function generateError (line 9) | function generateError(name) { function generateBlockError (line 155) | function generateBlockError(name, isLocal) { FILE: tests/lib/rules/template-no-deprecated.js constant FIXTURES_DIR (line 7) | const FIXTURES_DIR = path.join(__dirname, '../rules-preprocessor/templat... constant PREPROCESSOR_DIR (line 46) | const PREPROCESSOR_DIR = path.join(__dirname, '../rules-preprocessor'); FILE: tests/lib/rules/template-no-splattributes-with-class.js constant ERROR_MESSAGE (line 4) | const ERROR_MESSAGE = FILE: tests/lib/rules/template-no-this-in-template-only-components.js constant FIXTURES (line 5) | const FIXTURES = path.resolve( FILE: tests/lib/rules/template-no-triple-curlies.js function wrapTemplate (line 24) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unbalanced-curlies.js function wrapTemplate (line 67) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unbound.js function wrapTemplate (line 19) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unnecessary-component-helper.js function wrapTemplate (line 78) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unnecessary-concat.js function wrapTemplate (line 31) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unnecessary-curly-parens.js function wrapTemplate (line 45) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unnecessary-curly-strings.js function wrapTemplate (line 35) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unsupported-role-attributes.js function wrapTemplate (line 157) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-unused-block-params.js function wrapTemplate (line 151) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-valueless-arguments.js function wrapTemplate (line 27) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-whitespace-for-layout.js function wrapTemplate (line 50) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-whitespace-within-word.js function wrapTemplate (line 60) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-with.js function wrapTemplate (line 25) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-yield-block-params-to-else-inverse.js function wrapTemplate (line 28) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-yield-only.js function wrapTemplate (line 45) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-no-yield-to-default.js constant ERROR_MESSAGE (line 4) | const ERROR_MESSAGE = 'A block named "default" is not valid'; function wrapTemplate (line 87) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-quotes.js function wrapTemplate (line 142) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-require-aria-activedescendant-tabindex.js constant ERROR_MESSAGE (line 4) | const ERROR_MESSAGE = function wrapTemplate (line 47) | function wrapTemplate(entry) { FILE: tests/lib/rules/template-require-button-type.js constant ERROR_MESSAGE (line 4) | const ERROR_MESSAGE = 'All `