Skip to content

Commit

Permalink
Merge pull request #243 from ember-cli/remove-default-resolver
Browse files Browse the repository at this point in the history
Remove falling back to DefaultResolver
  • Loading branch information
rwjblue committed Jul 24, 2018
2 parents 51f92e8 + c77449d commit 0ffc530
Showing 1 changed file with 26 additions and 6 deletions.
32 changes: 26 additions & 6 deletions addon/resolvers/classic/index.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
/* globals requirejs, require */

import Ember from 'ember';
import DefaultResolver from '@ember/application/globals-resolver';
import { assert, deprecate, warn } from '@ember/debug';
import { get, computed } from '@ember/object';
import EmberObject, { get, computed } from '@ember/object';
import { dasherize, classify, underscore } from '@ember/string';
import { DEBUG } from '@glimmer/env';
import classFactory from '../../utils/class-factory';
Expand Down Expand Up @@ -108,17 +107,14 @@ function resolveOther(parsedName) {
}

return defaultExport;
} else {
return this._super(parsedName);
}
}

// Ember.DefaultResolver docs:
// https://github.com/emberjs/ember.js/blob/master/packages/ember-application/lib/system/resolver.js
const Resolver = DefaultResolver.extend({
const Resolver = EmberObject.extend({
resolveOther,
parseName,
resolveTemplate: resolveOther,
pluralizedTypes: null,
moduleRegistry: null,

Expand Down Expand Up @@ -152,6 +148,22 @@ const Resolver = DefaultResolver.extend({
return this._normalizeCache[fullName] || (this._normalizeCache[fullName] = this._normalize(fullName));
},

resolve(fullName) {
let parsedName = this.parseName(fullName);
let resolveMethodName = parsedName.resolveMethodName;
let resolved;

if (typeof this[resolveMethodName] === 'function') {
resolved = this[resolveMethodName](parsedName);
}

if (resolved == null) {
resolved = this.resolveOther(parsedName);
}

return resolved;
},

_normalize(fullName) {
// A) Convert underscores to dashes
// B) Convert camelCase to dash-case, except for helpers where we want to avoid shadowing camelCase expressions
Expand Down Expand Up @@ -223,6 +235,14 @@ const Resolver = DefaultResolver.extend({
}
},

resolveTemplate(parsedName) {
let resolved = this.resolveOther(parsedName);
if (resolved == null) {
resolved = Ember.TEMPLATES[parsedName.fullNameWithoutType];
}
return resolved;
},

mainModuleName(parsedName) {
if (parsedName.fullNameWithoutType === 'main') {
// if router:main or adapter:main look for a module with just the type first
Expand Down

0 comments on commit 0ffc530

Please sign in to comment.