mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
As a part of #54154, an old parser behavior came up where two-way bindings were parsed by appending `= $event` to the event side. This was problematic, because it allowed some non-writable expressions to be passed into two-way bindings. These changes introduce a migration that will change the two-way bindings into two separate input/output bindings that represent the old behavior so that in a future version we can throw a parser error for the invalid expressions. ```ts // Before @Component({ template: `<input [(ngModel)]="a && b"/>` }) export class MyComp {} // After @Component({ template: `<input [ngModel]="a && b" (ngModelChange)="a && (b = $event)"/>` }) export class MyComp {} ``` PR Close #54630
42 lines
1.7 KiB
Text
42 lines
1.7 KiB
Text
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
|
|
|
|
ts_library(
|
|
name = "test_lib",
|
|
testonly = True,
|
|
srcs = glob(["**/*.ts"]),
|
|
deps = [
|
|
"//packages/core/schematics/utils",
|
|
"@npm//@angular-devkit/core",
|
|
"@npm//@angular-devkit/schematics",
|
|
"@npm//@bazel/runfiles",
|
|
"@npm//@types/shelljs",
|
|
"@npm//tslint",
|
|
],
|
|
)
|
|
|
|
jasmine_node_test(
|
|
name = "test",
|
|
data = [
|
|
"//packages/core/schematics:collection.json",
|
|
"//packages/core/schematics:migrations.json",
|
|
"//packages/core/schematics/migrations/block-template-entities",
|
|
"//packages/core/schematics/migrations/block-template-entities:bundle",
|
|
"//packages/core/schematics/migrations/compiler-options",
|
|
"//packages/core/schematics/migrations/compiler-options:bundle",
|
|
"//packages/core/schematics/migrations/invalid-two-way-bindings",
|
|
"//packages/core/schematics/migrations/invalid-two-way-bindings:bundle",
|
|
"//packages/core/schematics/migrations/transfer-state",
|
|
"//packages/core/schematics/migrations/transfer-state:bundle",
|
|
"//packages/core/schematics/ng-generate/control-flow-migration",
|
|
"//packages/core/schematics/ng-generate/control-flow-migration:bundle",
|
|
"//packages/core/schematics/ng-generate/control-flow-migration:static_files",
|
|
"//packages/core/schematics/ng-generate/standalone-migration",
|
|
"//packages/core/schematics/ng-generate/standalone-migration:bundle",
|
|
"//packages/core/schematics/ng-generate/standalone-migration:static_files",
|
|
],
|
|
templated_args = ["--nobazel_run_linker"],
|
|
deps = [
|
|
":test_lib",
|
|
"@npm//shelljs",
|
|
],
|
|
)
|