Skip to content

Commit f10a8fb

Browse files
authored
feat: angular 9 ivy support (#2169)
closes #2152 closes #2060
1 parent 35ca4fa commit f10a8fb

File tree

209 files changed

+1121
-993
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

209 files changed

+1121
-993
lines changed

Diff for: CHANGELOG.md

+10-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
<a name="9.0.0"></a>
2+
# [9.0.0](https://github.com/NativeScript/nativescript-angular/compare/8.20.4...9.0.0) (2020-06-03)
3+
4+
5+
### Features
6+
7+
* angular 9 ivy ([fbe2450](https://github.com/NativeScript/nativescript-angular/commit/fbe2450))
8+
9+
110
<a name="8.20.4"></a>
211
## [8.20.4](https://github.com/NativeScript/nativescript-angular/compare/8.20.3...8.20.4) (2020-01-07)
312

@@ -649,7 +658,7 @@ Angular apps described in [this](https://angular.io/guide/ngmodule-faq#q-browser
649658
Migration steps:
650659
In all NgModules, except the root one (`AppModule`), replace:
651660
```
652-
import { NativeScriptModule } from "nativescript-angular/nativescript.module";
661+
import { NativeScriptModule } from "@nativescript/angular";
653662
654663
@NgModule({
655664
imports: [

Diff for: build/pack-scripts/package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
"license": "ISC",
1111
"devDependencies": {
1212
"@types/node": "^12.7.12",
13-
"fs-extra": "^8.1.0",
13+
"fs-extra": "^9.0.0",
1414
"rimraf": "^3.0.0",
15-
"ts-node": "^8.4.1",
16-
"typescript": "^3.6.4"
15+
"ts-node": "^8.10.2",
16+
"typescript": "^3.8.3"
1717
}
1818
}

Diff for: build/pack-scripts/tsconfig.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@
66
"emitDecoratorMetadata": true,
77
"noEmitHelpers": true,
88
"noEmitOnError": true,
9+
"skipLibCheck": true,
910
"lib": [
10-
"es6",
11+
"es2017",
1112
"dom",
12-
"es2015.iterable"
13+
"es6"
1314
],
1415
"types": [
1516
"node"

Diff for: e2e/animation-examples/app/app.module.ts

+23-5
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,21 @@ import {
44
NgModuleFactoryLoader
55
} from "@angular/core";
66

7-
import { NativeScriptModule } from "nativescript-angular/nativescript.module";
8-
import { NativeScriptAnimationsModule } from "nativescript-angular/animations";
9-
import { NSModuleFactoryLoader } from "nativescript-angular/router";
7+
import { NativeScriptModule } from "@nativescript/angular";
8+
import { NativeScriptAnimationsModule } from "@nativescript/angular/animations";
9+
import { NSModuleFactoryLoader } from "@nativescript/angular/router";
10+
11+
import { AppRoutingModule } from "./app.routing";
12+
import { AnimationsListComponent } from "./animations-list.component";
13+
import { AnimationBuilderComponent } from "./animation-builder.component";
14+
import { ExternalAnimationComponent } from "./external-animation.component";
15+
import { FadeInOutComponent } from "./fade-in-out.component";
16+
import { OptionsComponent } from "./options.component";
17+
import { OptionsDefaultComponent } from "./options-default.component";
18+
import { AnimateChildComponent } from "./animate-child.component";
19+
import { SelectorAllComponent } from "./selector-all.component";
20+
import { QueryStaggerComponent } from "./query-stagger.component";
1021

11-
import { AppRoutingModule, routedComponents } from "./app.routing";
1222
import { AppComponent } from "./app.component";
1323

1424
@NgModule({
@@ -17,7 +27,15 @@ import { AppComponent } from "./app.component";
1727
],
1828
declarations: [
1929
AppComponent,
20-
...routedComponents,
30+
AnimationsListComponent,
31+
AnimationBuilderComponent,
32+
ExternalAnimationComponent,
33+
FadeInOutComponent,
34+
OptionsComponent,
35+
OptionsDefaultComponent,
36+
AnimateChildComponent,
37+
SelectorAllComponent,
38+
QueryStaggerComponent,
2139
],
2240
imports: [
2341
NativeScriptModule,

Diff for: e2e/animation-examples/app/app.routing.ts

+2-14
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { NgModule } from "@angular/core";
22
import { Routes } from "@angular/router";
3-
import { NativeScriptRouterModule } from "nativescript-angular/router";
3+
import { NativeScriptRouterModule } from "@nativescript/angular/router";
44

55
import { AnimationsListComponent } from "./animations-list.component";
66
import { AnimationBuilderComponent } from "./animation-builder.component";
@@ -23,23 +23,11 @@ const routes: Routes = [
2323
{ path: "animate-child", component: AnimateChildComponent },
2424
{ path: "selector", component: SelectorAllComponent },
2525
{ path: "query-stagger", component: QueryStaggerComponent },
26-
{ path: "hero", loadChildren: "./hero/hero.module#HeroModule" },
26+
{ path: "hero", loadChildren: () => import("./hero/hero.module").then(m => m.HeroModule) },
2727
];
2828

2929
@NgModule({
3030
imports: [NativeScriptRouterModule.forRoot(routes)],
3131
exports: [NativeScriptRouterModule],
3232
})
3333
export class AppRoutingModule { }
34-
35-
export const routedComponents = [
36-
AnimationsListComponent,
37-
AnimationBuilderComponent,
38-
ExternalAnimationComponent,
39-
FadeInOutComponent,
40-
OptionsComponent,
41-
OptionsDefaultComponent,
42-
AnimateChildComponent,
43-
SelectorAllComponent,
44-
QueryStaggerComponent,
45-
];

Diff for: e2e/animation-examples/app/hero/hero-routing.module.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { NgModule } from "@angular/core";
22
import { Routes } from "@angular/router";
3-
import { NativeScriptRouterModule } from "nativescript-angular/router";
3+
import { NativeScriptRouterModule } from "@nativescript/angular/router";
44

55
import { HeroTeamBuilderComponent } from './hero-team-builder.component';
66

Diff for: e2e/animation-examples/app/hero/hero.module.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core";
2-
import { NativeScriptCommonModule } from "nativescript-angular/common";
2+
import { NativeScriptCommonModule } from "@nativescript/angular/common";
33

44
import { HeroRoutingModule, routedComponents } from "./hero-routing.module";
55

Diff for: e2e/animation-examples/app/main.aot.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { platformNativeScript } from "nativescript-angular/platform-static";
1+
import { platformNativeScript } from "@nativescript/angular/platform-static";
22
import { AppModuleNgFactory } from "./app.module.ngfactory";
33

44
platformNativeScript().bootstrapModuleFactory(AppModuleNgFactory);

Diff for: e2e/animation-examples/app/main.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { platformNativeScriptDynamic } from "nativescript-angular/platform";
2-
import { animationsTraceCategory } from "nativescript-angular/trace";
3-
import { setCategories, enable } from "trace";
1+
import { platformNativeScriptDynamic } from "@nativescript/angular/platform";
2+
import { animationsTraceCategory } from "@nativescript/angular/trace";
3+
import { setCategories, enable } from "@nativescript/core/trace";
44

55
import { AppModule } from "./app.module";
66

Diff for: e2e/animation-examples/ngcc.config.js

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
module.exports = {
2+
packages: {
3+
"@nativescript/angular": {
4+
entryPoints: {
5+
".": {
6+
override: {
7+
main: "./index.js",
8+
typings: "./index.d.ts",
9+
},
10+
ignoreMissingDependencies: true,
11+
}
12+
},
13+
ignorableDeepImportMatchers: [
14+
/tns-core-modules\//,
15+
/@nativescript\/core\//,
16+
]
17+
}
18+
}
19+
};

Diff for: e2e/animation-examples/package.json

+21-17
Original file line numberDiff line numberDiff line change
@@ -6,31 +6,31 @@
66
"nativescript": {
77
"id": "org.nativescript.ng4animations",
88
"tns-ios": {
9-
"version": "latest"
9+
"version": "6.5.1"
1010
},
1111
"tns-android": {
1212
"version": "latest"
1313
}
1414
},
1515
"dependencies": {
16-
"@angular/animations": "~8.2.0",
17-
"@angular/common": "~8.2.0",
18-
"@angular/compiler": "~8.2.0",
19-
"@angular/core": "~8.2.0",
20-
"@angular/forms": "~8.2.0",
21-
"@angular/platform-browser": "~8.2.0",
22-
"@angular/platform-browser-dynamic": "~8.2.0",
23-
"@angular/router": "~8.2.0",
24-
"nativescript-angular": "file:../../nativescript-angular-package",
16+
"@angular/animations": "~9.1.0",
17+
"@angular/common": "~9.1.0",
18+
"@angular/compiler": "~9.1.0",
19+
"@angular/core": "~9.1.0",
20+
"@angular/forms": "~9.1.0",
21+
"@angular/platform-browser": "~9.1.0",
22+
"@angular/platform-browser-dynamic": "~9.1.0",
23+
"@angular/router": "~9.1.0",
24+
"@nativescript/angular": "file:../../dist/nativescript-angular-scoped.tgz",
2525
"nativescript-theme-core": "~1.0.2",
2626
"reflect-metadata": "~0.1.8",
27-
"rxjs": "^6.4.0",
28-
"tns-core-modules": "next",
29-
"zone.js": "^0.9.1"
27+
"rxjs": "~6.5.5",
28+
"@nativescript/core": "next",
29+
"zone.js": "^0.10.3"
3030
},
3131
"devDependencies": {
32-
"@angular/compiler-cli": "~8.2.0",
33-
"@ngtools/webpack": "~8.2.0",
32+
"@angular/compiler-cli": "~9.1.0",
33+
"@ngtools/webpack": "~9.1.0",
3434
"@types/chai": "~4.1.7",
3535
"@types/mocha": "~5.2.5",
3636
"@types/node": "~10.12.18",
@@ -44,14 +44,18 @@
4444
"nativescript-css-loader": "~0.26.0",
4545
"nativescript-dev-appium": "^6.0.0",
4646
"nativescript-dev-webpack": "next",
47-
"typescript": "~3.5.3"
47+
"typescript": "~3.8.3"
4848
},
4949
"scripts": {
50+
"clean": "npx rimraf hooks node_modules package-lock.json",
51+
"setup": "cd ../../nativescript-angular && npm run pack && cd ../e2e/animation-examples && npm run clean",
5052
"u": "update-ns-webpack",
5153
"e2e": "tsc -p e2e && mocha --opts ../config/mocha.opts --recursive e2e --appiumCapsLocation ../config/appium.capabilities.json",
5254
"e2e-watch": "tsc -p e2e --watch",
5355
"update-app-ng-deps": "update-app-ng-deps",
5456
"ns-verify-bundle": "ns-verify-bundle",
55-
"update-ns-webpack": "update-ns-webpack"
57+
"update-ns-webpack": "update-ns-webpack",
58+
"ngcc": "ngcc --properties es2015 module main --first-only",
59+
"postinstall": "npm run ngcc"
5660
}
5761
}

Diff for: e2e/animation-examples/tsconfig.json

+8-15
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,26 @@
66
"emitDecoratorMetadata": true,
77
"noEmitHelpers": true,
88
"noEmitOnError": true,
9+
"skipLibCheck": true,
910
"lib": [
10-
"es6",
11+
"es2017",
1112
"dom",
12-
"es2015.iterable"
13+
"es6"
1314
],
1415
"baseUrl": ".",
1516
"paths": {
16-
"*": [
17-
"./node_modules/tns-core-modules/*",
18-
"./node_modules/*",
19-
"./node_modules/nativescript-angular/node_modules/*"
20-
],
2117
"~/*": [
2218
"app/*"
19+
],
20+
"*": [
21+
"./node_modules/*"
2322
]
2423
}
2524
},
26-
"include": [
27-
"../../nativescript-angular-package",
28-
"../../nativescript-angular",
29-
"**/*"
25+
"files": [
26+
"./app/main.ts"
3027
],
3128
"exclude": [
32-
"../../nativescript-angular-package/node_modules",
33-
"../../nativescript-angular-package/**/*.d.ts",
34-
"../../nativescript-angular/node_modules",
35-
"../../nativescript-angular/**/*.d.ts",
3629
"node_modules",
3730
"platforms",
3831
"**/*.aot",

Diff for: e2e/animation-examples/tsconfig.tns.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"extends": "./tsconfig",
33
"compilerOptions": {
4-
"module": "es2015",
4+
"module": "ESNext",
55
"moduleResolution": "node"
66
}
77
}

Diff for: e2e/modal-navigation-ng/app/app.component.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { Component, ViewContainerRef } from "@angular/core";
22
import { Router, NavigationEnd } from "@angular/router";
3-
import { NSLocationStrategy } from "nativescript-angular/router/ns-location-strategy";
3+
import { NSLocationStrategy } from "@nativescript/angular";
44

55
import { ViewContainerRefService } from "./shared/ViewContainerRefService";
66

77
import { AppModule } from "./app.module";
8-
import { ModalDialogOptions, ModalDialogService } from "nativescript-angular";
8+
import { ModalDialogOptions, ModalDialogService } from "@nativescript/angular";
99
import { ModalViewComponent } from "./modal-shared/modal-view.component";
1010

1111
@Component({

Diff for: e2e/modal-navigation-ng/app/app.module.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core";
2-
import { NativeScriptModule } from "nativescript-angular/nativescript.module";
2+
import { NativeScriptModule } from "@nativescript/angular";
33
import { AppRoutingModule } from "./app.routing";
44
import { AppComponent } from "./app.component";
55
import { NamedRouterComponent } from "./named-router.component";
@@ -19,9 +19,9 @@ import { ModalViewContentComponent } from "./modal-shared/modal-view-content.com
1919
import { ModalSharedSecondComponent } from "./modal-shared/modal-shared-second.component";
2020
import { ViewContainerRefService } from "./shared/ViewContainerRefService";
2121

22-
import { enable as traceEnable, addCategories } from "tns-core-modules/trace";
23-
import { routerTraceCategory } from "nativescript-angular/trace";
24-
import { NativeScriptPlatformRef } from "nativescript-angular";
22+
import { enable as traceEnable, addCategories } from "@nativescript/core/trace";
23+
import { routerTraceCategory } from "@nativescript/angular/trace";
24+
import { NativeScriptPlatformRef } from "@nativescript/angular";
2525

2626
addCategories(routerTraceCategory);
2727
traceEnable();

Diff for: e2e/modal-navigation-ng/app/app.routing.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { NgModule } from "@angular/core";
2-
import { NativeScriptRouterModule } from "nativescript-angular/router";
2+
import { NativeScriptRouterModule } from "@nativescript/angular/router";
33
import { Routes, Router } from "@angular/router";
44

55
import { HomeComponent } from "./home/home.component";

Diff for: e2e/modal-navigation-ng/app/home/home.component.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
import { Component, ViewContainerRef } from "@angular/core";
2-
import { ModalDialogService, ModalDialogOptions } from "nativescript-angular/directives/dialogs";
3-
import { RouterExtensions } from "nativescript-angular/router";
4-
import { EventData } from "tns-core-modules/data/observable";
2+
import { ModalDialogService, ModalDialogOptions } from "@nativescript/angular/directives/dialogs";
3+
import { RouterExtensions } from "@nativescript/angular/router";
4+
import { EventData } from "@nativescript/core/data/observable";
55

66
import { ViewContainerRefService } from "../shared/ViewContainerRefService";
77
import { ModalRouterComponent } from "../modal/modal-router/modal-router.component";
88
import { ModalComponent } from "../modal/modal.component";
99
import { ModalViewComponent } from "../modal-shared/modal-view.component";
10-
import { confirm } from "tns-core-modules/ui/dialogs";
10+
import { confirm } from "@nativescript/core/ui/dialogs";
1111

1212
import { AppModule } from "../app.module";
13-
import { PageService } from "nativescript-angular";
13+
import { PageService } from "@nativescript/angular";
1414

1515
@Component({
1616
moduleId: module.id,

Diff for: e2e/modal-navigation-ng/app/layout.component.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Component, ViewContainerRef } from "@angular/core";
22
import { Router, NavigationEnd } from "@angular/router";
3-
import { NSLocationStrategy } from "nativescript-angular/router/ns-location-strategy";
4-
import { ModalDialogService, ModalDialogOptions } from "nativescript-angular/directives/dialogs";
3+
import { NSLocationStrategy } from "@nativescript/angular";
4+
import { ModalDialogService, ModalDialogOptions } from "@nativescript/angular/directives/dialogs";
55
import { ModalViewComponent } from "./modal-shared/modal-view.component";
66
import { ViewContainerRefService } from "./shared/ViewContainerRefService";
77
import { AppModule } from "./app.module";

Diff for: e2e/modal-navigation-ng/app/main.aot.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// this import should be first in order to load some required settings (like globals and reflect-metadata)
2-
import { platformNativeScript } from "nativescript-angular/platform-static";
2+
import { platformNativeScript } from "@nativescript/angular/platform-static";
33
import { AppModule } from "./app.module";
4-
import { NativeScriptPlatformRef } from "nativescript-angular";
4+
import { NativeScriptPlatformRef } from "@nativescript/angular";
55
// "./app.module.ngfactory" is a dynamically generated module when compiled with AoT.
66
import { AppModuleNgFactory } from "./app.module.ngfactory";
77

Diff for: e2e/modal-navigation-ng/app/main.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
// this import should be first in order to load some required settings (like globals and reflect-metadata)
2-
import { platformNativeScriptDynamic } from "nativescript-angular/platform";
2+
import { platformNativeScriptDynamic } from "@nativescript/angular/platform";
33

44
import { AppModule } from "./app.module";
5-
import { NativeScriptPlatformRef } from "nativescript-angular";
5+
import { NativeScriptPlatformRef } from "@nativescript/angular";
66

77
AppModule.platformRef = <NativeScriptPlatformRef>platformNativeScriptDynamic();
88
AppModule.platformRef.bootstrapModule(AppModule);

Diff for: e2e/modal-navigation-ng/app/modal-nested/modal-nested.component.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { Component } from "@angular/core";
2-
import { View, ShownModallyData } from "tns-core-modules/ui/core/view"
3-
import { ModalDialogParams } from "nativescript-angular/directives/dialogs";
2+
import { View, ShownModallyData } from "@nativescript/core/ui/core/view"
3+
import { ModalDialogParams } from "@nativescript/angular/directives/dialogs";
44

55
@Component({
66
moduleId: module.id,

0 commit comments

Comments
 (0)