Skip to content

Commit 092a833

Browse files
authored
feat(tabs): register tabs elements (#1883)
* feat(tabs): register tabs elements * feat(tests-app-ng): add tabs component
1 parent 5042e08 commit 092a833

File tree

4 files changed

+61
-18
lines changed

4 files changed

+61
-18
lines changed

Diff for: e2e/tests-app-ng/app/app.routes.ts

+3
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import { ModalViewMainPageComponent } from "./modal/modal-view-main-page.compone
3131
import { LazyLoadModalComponent } from "./modal/lazy/lazy-load-modal.component";
3232

3333
import { TabViewComponent } from "./tab-view/tab-view.component";
34+
import { TabsComponent } from "./tabs/tabs.component";
3435

3536
import { NavigationOptionsComponent } from "./navigation-options/navigation-options.component";
3637
import { NavigationInfoComponent } from "./navigation-options/navigation-info.component";
@@ -77,6 +78,7 @@ export const routableComponents = [
7778
LazyLoadModalComponent,
7879

7980
TabViewComponent,
81+
TabsComponent,
8082

8183
NavigationOptionsComponent,
8284
NavigationInfoComponent,
@@ -156,6 +158,7 @@ export const routes = [
156158
{ path: "modal/lazy", component: LazyLoadModalComponent, data: { title: "modal(lazy)" } },
157159

158160
{ path: "tab-view", component: TabViewComponent, data: { title: "tab-view", isNavigatable: true } },
161+
{ path: "tabs", component: TabsComponent, data: { title: "tabs", isNavigatable: true } },
159162

160163
{ path: "nav-options", component: NavigationOptionsComponent, data: { title: "nav-options", isNavigatable: true } },
161164
{ path: "nav-info", component: NavigationInfoComponent, data: { title: "nav-info" } },

Diff for: e2e/tests-app-ng/app/tabs/tabs.component.ts

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
import { Component, OnInit } from "@angular/core";
2+
3+
@Component({
4+
selector: "tabs-component",
5+
template: `
6+
<Tabs id="tabs">
7+
8+
<TabStrip>
9+
10+
<TabStripItem title="TabStripItem 1" iconSource="res://icon">
11+
</TabStripItem>
12+
13+
<TabStripItem>
14+
<Label text="TabStripItem 2">
15+
</Label>
16+
<Image src="res://icon">
17+
</Image>
18+
</TabStripItem>
19+
20+
<TabStripItem title="TabStripItem 3" iconSource="res://icon">
21+
</TabStripItem>
22+
23+
</TabStrip>
24+
25+
<TabContentItem>
26+
<StackLayout>
27+
<Label text="TabContentItem 1">
28+
</Label>
29+
</StackLayout>
30+
</TabContentItem>
31+
32+
<TabContentItem>
33+
<StackLayout>
34+
<Label text="TabContentItem 2">
35+
</Label>
36+
</StackLayout>
37+
</TabContentItem>
38+
39+
<TabContentItem>
40+
<StackLayout>
41+
<Label text="TabContentItem 3">
42+
</Label>
43+
</StackLayout>
44+
</TabContentItem>
45+
46+
</Tabs>
47+
`,
48+
})
49+
50+
export class TabsComponent implements OnInit {
51+
public ngOnInit(): void { }
52+
}

Diff for: e2e/tests-app-ng/app/vendor.ts

-18
This file was deleted.

Diff for: nativescript-angular/element-registry.ts

+6
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,7 @@ const frameMeta: ViewClassMeta = {
175175
registerElement("AbsoluteLayout", () => require("tns-core-modules/ui/layouts/absolute-layout").AbsoluteLayout);
176176
registerElement("ActivityIndicator", () => require("tns-core-modules/ui/activity-indicator").ActivityIndicator);
177177
registerElement("Border", () => require("tns-core-modules/ui/border").Border);
178+
registerElement("BottomNavigation", () => require("tns-core-modules/ui/bottom-navigation").BottomNavigation);
178179
registerElement("Button", () => require("tns-core-modules/ui/button").Button);
179180
registerElement("ContentView", () => require("tns-core-modules/ui/content-view").ContentView);
180181
registerElement("DatePicker", () => require("tns-core-modules/ui/date-picker").DatePicker);
@@ -202,6 +203,11 @@ registerElement("StackLayout", () => require("tns-core-modules/ui/layouts/stack-
202203
registerElement("FlexboxLayout", () => require("tns-core-modules/ui/layouts/flexbox-layout").FlexboxLayout);
203204
registerElement("Switch", () => require("tns-core-modules/ui/switch").Switch);
204205
registerElement("TabView", () => require("tns-core-modules/ui/tab-view").TabView);
206+
registerElement("TabStrip", () => require("tns-core-modules/ui/tab-navigation-base/tab-strip").TabStrip);
207+
registerElement("TabStripItem", () => require("tns-core-modules/ui/tab-navigation-base/tab-strip-item").TabStripItem);
208+
registerElement("TabContentItem",
209+
() => require("tns-core-modules/ui/tab-navigation-base/tab-content-item").TabContentItem);
210+
registerElement("Tabs", () => require("tns-core-modules/ui/tabs").Tabs);
205211
registerElement("TextField", () => require("tns-core-modules/ui/text-field").TextField);
206212
registerElement("TextView", () => require("tns-core-modules/ui/text-view").TextView);
207213
registerElement("TimePicker", () => require("tns-core-modules/ui/time-picker").TimePicker);

0 commit comments

Comments
 (0)