Skip to content
This repository was archived by the owner on Sep 16, 2022. It is now read-only.

Commit bff5029

Browse files
leonsenftmatanlurey
authored andcommitted
refactor(Compiler): emit module URL for style attribution in dev mode
Previously this was emitted in the debug code generation mode, but was emitted as the empty string in the release code generation mode. With the switch to a unified code generation mode, we'll now rely on `isDevMode` to tree shake the module URL away, and pass null instead. Note this also changed the URL from the template module URL to the component module URL. While it's orginal purpose was for templates, it's been repurposed for style attribution, thus the component module URL (which could import numerous style sheet URLs) is the best fit. PiperOrigin-RevId: 200603316
1 parent b926f39 commit bff5029

36 files changed

+162
-124
lines changed

_goldens/test/_files/change_detection.template.golden

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import 'package:angular/src/core/render/api.dart';
1515
import 'package:angular/src/core/linker/view_type.dart' as import4;
1616
import 'package:angular/src/core/change_detection/change_detection.dart';
1717
import 'package:angular/src/core/linker/app_view_utils.dart' as import6;
18+
import 'package:angular/src/runtime.dart' as import7;
1819
import 'package:angular/angular.dart';
1920

2021
final List<dynamic> styles$CheckOnceComponent = const [];
@@ -25,7 +26,7 @@ class ViewCheckOnceComponent0 extends AppView<import1.CheckOnceComponent> {
2526
static RenderComponentType _renderType;
2627
ViewCheckOnceComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckOnce) {
2728
rootEl = import2.document.createElement('CheckOnce');
28-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$CheckOnceComponent);
29+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$CheckOnceComponent);
2930
setupComponentType(_renderType);
3031
}
3132
@override
@@ -94,7 +95,7 @@ class ViewCheckedComponent0 extends AppView<import1.CheckedComponent> {
9495
static RenderComponentType _renderType;
9596
ViewCheckedComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckOnce) {
9697
rootEl = import2.document.createElement('Checked');
97-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$CheckedComponent);
98+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$CheckedComponent);
9899
setupComponentType(_renderType);
99100
}
100101
@override
@@ -153,7 +154,7 @@ class ViewCheckAlwaysComponent0 extends AppView<import1.CheckAlwaysComponent> {
153154
static RenderComponentType _renderType;
154155
ViewCheckAlwaysComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckOnce) {
155156
rootEl = import2.document.createElement('CheckAlways');
156-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$CheckAlwaysComponent);
157+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$CheckAlwaysComponent);
157158
setupComponentType(_renderType);
158159
}
159160
@override
@@ -212,7 +213,7 @@ class ViewDetachedComponent0 extends AppView<import1.DetachedComponent> {
212213
static RenderComponentType _renderType;
213214
ViewDetachedComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckOnce) {
214215
rootEl = import2.document.createElement('Detached');
215-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$DetachedComponent);
216+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$DetachedComponent);
216217
setupComponentType(_renderType);
217218
}
218219
@override
@@ -271,7 +272,7 @@ class ViewOnPushComponent0 extends AppView<import1.OnPushComponent> {
271272
static RenderComponentType _renderType;
272273
ViewOnPushComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckOnce) {
273274
rootEl = import2.document.createElement('OnPush');
274-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$OnPushComponent);
275+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$OnPushComponent);
275276
setupComponentType(_renderType);
276277
}
277278
@override
@@ -330,7 +331,7 @@ class ViewStatefulComponent0 extends AppView<import1.StatefulComponent> {
330331
static RenderComponentType _renderType;
331332
ViewStatefulComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckOnce) {
332333
rootEl = import2.document.createElement('Stateful');
333-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$StatefulComponent);
334+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$StatefulComponent);
334335
setupComponentType(_renderType);
335336
}
336337
@override
@@ -391,7 +392,7 @@ class ViewDefaultComponent0 extends AppView<import1.DefaultComponent> {
391392
static RenderComponentType _renderType;
392393
ViewDefaultComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
393394
rootEl = import2.document.createElement('Default');
394-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$DefaultComponent);
395+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/change_detection.dart' : null), ViewEncapsulation.None, styles$DefaultComponent);
395396
setupComponentType(_renderType);
396397
}
397398
@override

_goldens/test/_files/component_loader_pattern.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import 'package:angular/src/core/linker/view_type.dart' as import3;
1919
import 'package:angular/src/core/change_detection/change_detection.dart';
2020
import 'dart:html' as import5;
2121
import 'package:angular/src/core/linker/app_view_utils.dart' as import6;
22+
import 'package:angular/src/runtime.dart' as import7;
2223
import 'package:angular/angular.dart';
2324

2425
final List<dynamic> styles$TestComponent = const [];
@@ -27,7 +28,7 @@ class ViewTestComponent0 extends AppView<import1.TestComponent> {
2728
static RenderComponentType _renderType;
2829
ViewTestComponent0(AppView<dynamic> parentView, int parentIndex) : super(import3.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
2930
rootEl = import5.document.createElement('test');
30-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$TestComponent);
31+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/component_loader_pattern.dart' : null), ViewEncapsulation.None, styles$TestComponent);
3132
setupComponentType(_renderType);
3233
}
3334
@override

_goldens/test/_files/core_directives.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import 'package:angular/src/core/render/api.dart';
1717
import 'package:angular/src/core/linker/view_type.dart' as import6;
1818
import 'package:angular/src/core/change_detection/change_detection.dart';
1919
import 'package:angular/src/core/linker/app_view_utils.dart' as import8;
20+
import 'package:angular/src/runtime.dart' as import9;
2021
import 'package:angular/angular.dart';
2122
import 'package:angular/src/core/linker/template_ref.dart';
2223
import 'dart:core';
@@ -32,7 +33,7 @@ class ViewTestFooComponent0 extends AppView<import1.TestFooComponent> {
3233
static RenderComponentType _renderType;
3334
ViewTestFooComponent0(AppView<dynamic> parentView, int parentIndex) : super(import6.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
3435
rootEl = import2.document.createElement('test-foo');
35-
_renderType ??= import8.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$TestFooComponent);
36+
_renderType ??= import8.appViewUtils.createRenderType((import9.isDevMode ? 'asset:_goldens/test/_files/core_directives.dart' : null), ViewEncapsulation.None, styles$TestFooComponent);
3637
setupComponentType(_renderType);
3738
}
3839
@override

_goldens/test/_files/deferred/container_component.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import 'package:angular/src/core/linker/view_type.dart' as import4;
1818
import 'package:angular/src/core/change_detection/change_detection.dart';
1919
import 'dart:html' as import6;
2020
import 'package:angular/src/core/linker/app_view_utils.dart' as import7;
21+
import 'package:angular/src/runtime.dart' as import8;
2122
import 'package:angular/angular.dart';
2223
import 'package:angular/src/core/linker/template_ref.dart';
2324
import 'deferred_component.template.dart' deferred as deflib1;
@@ -33,7 +34,7 @@ class ViewTestContainerComponent0 extends AppView<import1.TestContainerComponent
3334
static RenderComponentType _renderType;
3435
ViewTestContainerComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
3536
rootEl = import6.document.createElement('test-container');
36-
_renderType ??= import7.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$TestContainerComponent);
37+
_renderType ??= import7.appViewUtils.createRenderType((import8.isDevMode ? 'asset:_goldens/test/_files/deferred/container_component.dart' : null), ViewEncapsulation.None, styles$TestContainerComponent);
3738
setupComponentType(_renderType);
3839
}
3940
@override

_goldens/test/_files/deferred/deferred_component.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import 'package:angular/src/core/render/api.dart';
1515
import 'package:angular/src/core/linker/view_type.dart' as import4;
1616
import 'package:angular/src/core/change_detection/change_detection.dart';
1717
import 'package:angular/src/core/linker/app_view_utils.dart' as import6;
18+
import 'package:angular/src/runtime.dart' as import7;
1819
import 'package:angular/angular.dart';
1920

2021
final List<dynamic> styles$DeferredChildComponent = const [];
@@ -24,7 +25,7 @@ class ViewDeferredChildComponent0 extends AppView<import1.DeferredChildComponent
2425
static RenderComponentType _renderType;
2526
ViewDeferredChildComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
2627
rootEl = import2.document.createElement('deferred-component');
27-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$DeferredChildComponent);
28+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/deferred/deferred_component.dart' : null), ViewEncapsulation.None, styles$DeferredChildComponent);
2829
setupComponentType(_renderType);
2930
}
3031
@override

_goldens/test/_files/directives/base_component.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import 'package:angular/src/core/render/api.dart';
1919
import 'package:angular/src/core/linker/view_type.dart' as import6;
2020
import 'package:angular/src/core/change_detection/change_detection.dart';
2121
import 'package:angular/src/core/linker/app_view_utils.dart' as import8;
22+
import 'package:angular/src/runtime.dart' as import9;
2223
import 'package:angular/angular.dart';
2324

2425
final List<dynamic> styles$TestFooComponent = const [];
@@ -31,7 +32,7 @@ class ViewTestFooComponent0 extends AppView<import1.TestFooComponent> {
3132
static RenderComponentType _renderType;
3233
ViewTestFooComponent0(AppView<dynamic> parentView, int parentIndex) : super(import6.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
3334
rootEl = import2.document.createElement('test-foo');
34-
_renderType ??= import8.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$TestFooComponent);
35+
_renderType ??= import8.appViewUtils.createRenderType((import9.isDevMode ? 'asset:_goldens/test/_files/directives/base_component.dart' : null), ViewEncapsulation.None, styles$TestFooComponent);
3536
setupComponentType(_renderType);
3637
}
3738
@override

_goldens/test/_files/directives/components.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import 'package:angular/src/core/render/api.dart';
1515
import 'package:angular/src/core/linker/view_type.dart' as import4;
1616
import 'package:angular/src/core/change_detection/change_detection.dart';
1717
import 'package:angular/src/core/linker/app_view_utils.dart' as import6;
18+
import 'package:angular/src/runtime.dart' as import7;
1819
import 'package:angular/angular.dart';
1920

2021
final List<dynamic> styles$TestSubComponent = const [];
@@ -24,7 +25,7 @@ class ViewTestSubComponent0 extends AppView<import1.TestSubComponent> {
2425
static RenderComponentType _renderType;
2526
ViewTestSubComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
2627
rootEl = import2.document.createElement('test-bar');
27-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$TestSubComponent);
28+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/directives/components.dart' : null), ViewEncapsulation.None, styles$TestSubComponent);
2829
setupComponentType(_renderType);
2930
}
3031
@override

_goldens/test/_files/directives/directive_wrapper.template.golden

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,10 @@ import 'package:angular/src/core/render/api.dart';
1717
import 'package:angular/src/core/linker/view_type.dart' as import4;
1818
import 'package:angular/src/core/change_detection/change_detection.dart';
1919
import 'package:angular/src/core/linker/app_view_utils.dart' as import6;
20+
import 'package:angular/src/runtime.dart' as import7;
2021
import 'package:angular/angular.dart';
2122
import 'package:angular/src/core/linker/element_ref.dart';
22-
import 'package:angular/src/core/change_detection/directive_change_detector.dart' as import9;
23+
import 'package:angular/src/core/change_detection/directive_change_detector.dart' as import10;
2324

2425
final List<dynamic> styles$TestFooComponent = ['div._ngcontent-%ID%{font-size:10px;}'];
2526

@@ -31,7 +32,7 @@ class ViewTestFooComponent0 extends AppView<import1.TestFooComponent> {
3132
static RenderComponentType _renderType;
3233
ViewTestFooComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
3334
rootEl = import2.document.createElement('test-foo');
34-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.Emulated, styles$TestFooComponent);
35+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/directives/directive_wrapper.dart' : null), ViewEncapsulation.Emulated, styles$TestFooComponent);
3536
setupComponentType(_renderType);
3637
}
3738
@override
@@ -118,7 +119,7 @@ class ViewDirectiveContainerTest0 extends AppView<import1.DirectiveContainerTest
118119
static RenderComponentType _renderType;
119120
ViewDirectiveContainerTest0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
120121
rootEl = import2.document.createElement('directive-container');
121-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$DirectiveContainerTest);
122+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/directives/directive_wrapper.dart' : null), ViewEncapsulation.None, styles$DirectiveContainerTest);
122123
setupComponentType(_renderType);
123124
}
124125
@override
@@ -186,7 +187,7 @@ AppView viewFactory_DirectiveContainerTestHost0(AppView<dynamic> parentView, int
186187

187188
const ComponentFactory<import1.DirectiveContainerTest> DirectiveContainerTestNgFactory = const ComponentFactory<import1.DirectiveContainerTest>('directive-container', viewFactory_DirectiveContainerTestHost0, _DirectiveContainerTestMetadata);
188189

189-
class ChildDirectiveNgCd extends import9.DirectiveChangeDetector {
190+
class ChildDirectiveNgCd extends import10.DirectiveChangeDetector {
190191
final import1.ChildDirective instance;
191192
var _expr_0;
192193
var _expr_1;
@@ -211,7 +212,7 @@ class ChildDirectiveNgCd extends import9.DirectiveChangeDetector {
211212
}
212213
}
213214

214-
class FastDirectiveNgCd extends import9.DirectiveChangeDetector {
215+
class FastDirectiveNgCd extends import10.DirectiveChangeDetector {
215216
final import1.FastDirective instance;
216217
var _expr_0;
217218
FastDirectiveNgCd(this.instance, AppView v, import2.Element e) {

_goldens/test/_files/directives/functional_directives.template.golden

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import 'package:angular/src/core/render/api.dart';
1616
import 'package:angular/src/core/linker/view_type.dart' as import4;
1717
import 'package:angular/src/core/change_detection/change_detection.dart';
1818
import 'package:angular/src/core/linker/app_view_utils.dart' as import6;
19+
import 'package:angular/src/runtime.dart' as import7;
1920
import 'package:angular/angular.dart';
2021

2122
final List<dynamic> styles$AppComponent = const [];
@@ -26,7 +27,7 @@ class ViewAppComponent0 extends AppView<import1.AppComponent> {
2627
static RenderComponentType _renderType;
2728
ViewAppComponent0(AppView<dynamic> parentView, int parentIndex) : super(import4.ViewType.component, {}, parentView, parentIndex, ChangeDetectionStrategy.CheckAlways) {
2829
rootEl = import2.document.createElement('app');
29-
_renderType ??= import6.appViewUtils.createRenderType('', ViewEncapsulation.None, styles$AppComponent);
30+
_renderType ??= import6.appViewUtils.createRenderType((import7.isDevMode ? 'asset:_goldens/test/_files/directives/functional_directives.dart' : null), ViewEncapsulation.None, styles$AppComponent);
3031
setupComponentType(_renderType);
3132
}
3233
@override

0 commit comments

Comments
 (0)