Skip to content

Commit

Permalink
Merge pull request #19373 from emberjs/deprecate-old-manager-capabili…
Browse files Browse the repository at this point in the history
…ties

[DEPRECATION] Deprecate Old Manager capabilities
  • Loading branch information
rwjblue committed Feb 3, 2021
2 parents b480c96 + 8e9d375 commit 68a1c4f
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 5 deletions.
6 changes: 5 additions & 1 deletion packages/@ember/-internals/glimmer/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -390,5 +390,9 @@ export { DOMChanges, NodeDOMTreeConstruction, DOMTreeConstruction } from './lib/
export { INVOKE } from './lib/helpers/action';
export { default as OutletView } from './lib/views/outlet';
export { OutletState } from './lib/utils/outlet';
export { setComponentManager } from './lib/utils/managers';
export {
componentCapabilities,
modifierCapabilities,
setComponentManager,
} from './lib/utils/managers';
export { isSerializationFirstNode } from './lib/utils/serialization-first-node-helpers';
48 changes: 47 additions & 1 deletion packages/@ember/-internals/glimmer/lib/utils/managers.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
import { Owner } from '@ember/-internals/owner';
import { deprecate } from '@ember/debug';
import { COMPONENT_MANAGER_STRING_LOOKUP } from '@ember/deprecated-features';
import { DEBUG } from '@glimmer/env';
import { ComponentManager } from '@glimmer/interfaces';
import { setComponentManager as glimmerSetComponentManager } from '@glimmer/manager';
import {
componentCapabilities as glimmerComponentCapabilities,
modifierCapabilities as glimmerModifierCapabilities,
setComponentManager as glimmerSetComponentManager,
} from '@glimmer/manager';

export function setComponentManager(
stringOrFunction: string | ((owner: Owner) => ComponentManager<unknown>),
Expand Down Expand Up @@ -33,3 +38,44 @@ export function setComponentManager(

return glimmerSetComponentManager(factory, obj);
}

export let componentCapabilities = glimmerComponentCapabilities;
export let modifierCapabilities = glimmerModifierCapabilities;

if (DEBUG) {
componentCapabilities = (version, options) => {
deprecate(
'Versions of component manager capabilities prior to 3.13 have been deprecated. You must update to the 3.13 capabilities.',
version === '3.13',
{
id: 'manager-capabilities.components-3-4',
url: 'https://emberjs.com/deprecations/v3.x#toc_manager-capabilities-components-3-4',
until: '4.0.0',
for: 'ember-source',
since: {
enabled: '3.26.0',
},
}
);

return glimmerComponentCapabilities(version, options);
};

modifierCapabilities = (version, options) => {
deprecate(
'Versions of modifier manager capabilities prior to 3.22 have been deprecated. You must update to the 3.22 capabilities.',
version === '3.22',
{
id: 'manager-capabilities.modifiers-3-13',
url: 'https://emberjs.com/deprecations/v3.x#toc_manager-capabilities-modifiers-3-13',
until: '4.0.0',
for: 'ember-source',
since: {
enabled: '3.26.0',
},
}
);

return glimmerModifierCapabilities(version, options);
};
}
4 changes: 2 additions & 2 deletions packages/ember/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,8 @@ import {
import {
Checkbox,
Component,
componentCapabilities,
modifierCapabilities,
setComponentManager,
escapeExpression,
getTemplates,
Expand Down Expand Up @@ -146,8 +148,6 @@ import {
} from '@glimmer/runtime';

import {
componentCapabilities,
modifierCapabilities,
helperCapabilities,
setModifierManager,
setComponentTemplate,
Expand Down
4 changes: 3 additions & 1 deletion packages/ember/tests/reexports_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,9 @@ let allExports = [
['HTMLBars.template', '@ember/-internals/glimmer', 'template'],
['Handlebars.Utils.escapeExpression', '@ember/-internals/glimmer', 'escapeExpression'],
['_setComponentManager', '@ember/-internals/glimmer', 'setComponentManager'],
['_componentManagerCapabilities', '@glimmer/manager', 'componentCapabilities'],
['_componentManagerCapabilities', '@ember/-internals/glimmer', 'componentCapabilities'],
['_setModifierManager', '@glimmer/manager', 'setModifierManager'],
['_modifierManagerCapabilities', '@ember/-internals/glimmer', 'modifierCapabilities'],
['_setComponentTemplate', '@glimmer/manager', 'setComponentTemplate'],
['_getComponentTemplate', '@glimmer/manager', 'getComponentTemplate'],
EMBER_GLIMMER_HELPER_MANAGER
Expand Down

0 comments on commit 68a1c4f

Please sign in to comment.