@@ -5,6 +5,7 @@ import { action, computed } from '@ember/object';
5
5
import { reads } from '@ember/object/computed' ;
6
6
import { getOwner } from '@ember/application' ;
7
7
import Evented from '@ember/object/evented' ;
8
+ import { macroCondition , dependencySatisfies } from '@embroider/macros' ;
8
9
import { namespaceEngineRouteName } from '../utils/namespace-engine-route-name' ;
9
10
import { getRootOwner } from '../utils/root-owner' ;
10
11
import { resemblesURL } from '../utils/resembles-url' ;
@@ -66,21 +67,29 @@ export default class EngineRouterService extends Service.extend(Evented) {
66
67
}
67
68
68
69
refresh ( routeName = this . currentRouteName , ...args ) {
69
- if ( resemblesURL ( routeName ) ) {
70
- return this . externalRouter . refresh ( routeName ) ;
70
+ if ( macroCondition ( dependencySatisfies ( 'ember-source' , '>= 4.1.0' ) ) ) {
71
+ if ( resemblesURL ( routeName ) ) {
72
+ return this . externalRouter . refresh ( routeName ) ;
73
+ }
74
+
75
+ return this . externalRouter . refresh (
76
+ namespaceEngineRouteName ( this . _mountPoint , routeName ) ,
77
+ ...args
78
+ ) ;
79
+ } else {
80
+ assert ( 'Refresh method is not available in ember-source below v4.1' ) ;
71
81
}
72
-
73
- return this . externalRouter . refresh (
74
- namespaceEngineRouteName ( this . _mountPoint , routeName ) ,
75
- ...args
76
- ) ;
77
82
}
78
83
79
84
refreshExternal ( routeName , ...args ) {
80
- return this . externalRouter . refresh (
81
- this . getExternalRouteName ( routeName ) ,
82
- ...args
83
- ) ;
85
+ if ( macroCondition ( dependencySatisfies ( 'ember-source' , '>= 4.1.0' ) ) ) {
86
+ return this . externalRouter . refresh (
87
+ this . getExternalRouteName ( routeName ) ,
88
+ ...args
89
+ ) ;
90
+ } else {
91
+ assert ( 'Refresh method is not available in ember-source below v4.1' ) ;
92
+ }
84
93
}
85
94
86
95
transitionTo ( routeName , ...args ) {
0 commit comments