@nativescript/template-tab-navigation-vue 9.0.1 → 9.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App_Resources/iOS/Info.plist +2 -2
- package/app/app.css +21 -0
- package/app/app.js +3 -5
- package/app/components/App.vue +8 -17
- package/app/components/Browse.vue +6 -21
- package/app/components/ItemDetails.vue +4 -13
- package/app/components/Items.vue +28 -84
- package/app/components/Search.vue +6 -21
- package/package.json +5 -5
- package/app/_app-common.scss +0 -46
- package/app/app.android.scss +0 -4
- package/app/app.ios.scss +0 -4
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
<key>CFBundlePackageType</key>
|
|
16
16
|
<string>APPL</string>
|
|
17
17
|
<key>CFBundleShortVersionString</key>
|
|
18
|
-
<string>1.0</string>
|
|
18
|
+
<string>1.0.0</string>
|
|
19
19
|
<key>CFBundleSignature</key>
|
|
20
20
|
<string>????</string>
|
|
21
21
|
<key>CFBundleVersion</key>
|
|
22
|
-
<string>1.0</string>
|
|
22
|
+
<string>1.0.0</string>
|
|
23
23
|
<key>LSRequiresIPhoneOS</key>
|
|
24
24
|
<true/>
|
|
25
25
|
<key>UILaunchStoryboardName</key>
|
package/app/app.css
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
|
|
3
|
+
ActionBar {
|
|
4
|
+
background-color: #65adf1;
|
|
5
|
+
color: white;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.fas {
|
|
9
|
+
font-family: 'Font Awesome 5 Free', 'fa-solid-900';
|
|
10
|
+
font-weight: 900;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.far {
|
|
14
|
+
font-family: 'Font Awesome 5 Free', 'fa-regular-400';
|
|
15
|
+
font-weight: 400;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.fab {
|
|
19
|
+
font-family: 'Font Awesome 5 Brands', 'fa-brands-400';
|
|
20
|
+
font-weight: 400;
|
|
21
|
+
}
|
package/app/app.js
CHANGED
package/app/components/App.vue
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
<template
|
|
1
|
+
<template>
|
|
2
2
|
<TabView androidTabsPosition="bottom">
|
|
3
3
|
<TabViewItem title="Home">
|
|
4
4
|
<Frame id="items">
|
|
5
|
-
<Items/>
|
|
5
|
+
<Items />
|
|
6
6
|
</Frame>
|
|
7
7
|
</TabViewItem>
|
|
8
8
|
|
|
9
9
|
<TabViewItem title="Browse">
|
|
10
10
|
<Frame id="browse">
|
|
11
|
-
<Browse/>
|
|
11
|
+
<Browse />
|
|
12
12
|
</Frame>
|
|
13
13
|
</TabViewItem>
|
|
14
14
|
|
|
15
15
|
<TabViewItem title="Search">
|
|
16
16
|
<Frame id="search">
|
|
17
|
-
<Search/>
|
|
17
|
+
<Search />
|
|
18
18
|
</Frame>
|
|
19
19
|
</TabViewItem>
|
|
20
20
|
</TabView>
|
|
21
21
|
</template>
|
|
22
22
|
|
|
23
23
|
<script>
|
|
24
|
-
import Items from
|
|
25
|
-
import Browse from
|
|
26
|
-
import Search from
|
|
24
|
+
import Items from './Items.vue'
|
|
25
|
+
import Browse from './Browse.vue'
|
|
26
|
+
import Search from './Search.vue'
|
|
27
27
|
|
|
28
28
|
export default {
|
|
29
29
|
components: {
|
|
@@ -31,14 +31,5 @@
|
|
|
31
31
|
Browse,
|
|
32
32
|
Search
|
|
33
33
|
}
|
|
34
|
-
}
|
|
34
|
+
}
|
|
35
35
|
</script>
|
|
36
|
-
|
|
37
|
-
<style lang="scss">
|
|
38
|
-
// Start custom common variables
|
|
39
|
-
@import "@nativescript/theme/scss/variables/blue";
|
|
40
|
-
// End custom common variables
|
|
41
|
-
|
|
42
|
-
// Custom styles
|
|
43
|
-
|
|
44
|
-
</style>
|
|
@@ -1,31 +1,16 @@
|
|
|
1
|
-
<template
|
|
1
|
+
<template>
|
|
2
2
|
<Page>
|
|
3
3
|
<ActionBar>
|
|
4
|
-
<Label text="Browse"
|
|
4
|
+
<Label text="Browse"/>
|
|
5
5
|
</ActionBar>
|
|
6
6
|
|
|
7
|
-
<GridLayout
|
|
8
|
-
<Label class="
|
|
9
|
-
<Label class="
|
|
7
|
+
<GridLayout>
|
|
8
|
+
<Label class="far text-7xl text-gray-400 text-center" style="vertical-align: top; margin-top: 20%" text.decode=""/>
|
|
9
|
+
<Label class="text-xl text-gray-400 text-center align-middle" text="Browse page content goes here"/>
|
|
10
10
|
</GridLayout>
|
|
11
11
|
</Page>
|
|
12
12
|
</template>
|
|
13
13
|
|
|
14
14
|
<script>
|
|
15
|
-
export default {
|
|
16
|
-
data() {
|
|
17
|
-
return {
|
|
18
|
-
message: "<!-- Browse page content goes here -->"
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
}
|
|
15
|
+
export default {}
|
|
22
16
|
</script>
|
|
23
|
-
|
|
24
|
-
<style lang="scss" scoped>
|
|
25
|
-
// Start custom common variables
|
|
26
|
-
@import "@nativescript/theme/scss/variables/blue";
|
|
27
|
-
// End custom common variables
|
|
28
|
-
|
|
29
|
-
// Custom styles
|
|
30
|
-
|
|
31
|
-
</style>
|
|
@@ -2,26 +2,17 @@
|
|
|
2
2
|
<Page>
|
|
3
3
|
<ActionBar>
|
|
4
4
|
<NavigationButton @tap="$navigateBack()" android.systemIcon="ic_menu_back"/>
|
|
5
|
-
<Label :text="item.name"
|
|
5
|
+
<Label :text="item.name"/>
|
|
6
6
|
</ActionBar>
|
|
7
7
|
|
|
8
8
|
<GridLayout>
|
|
9
|
-
<Label class="m-
|
|
9
|
+
<Label class="m-2 text-lg" :text="item.description" verticalAlignment="top"/>
|
|
10
10
|
</GridLayout>
|
|
11
11
|
</Page>
|
|
12
12
|
</template>
|
|
13
13
|
|
|
14
14
|
<script>
|
|
15
15
|
export default {
|
|
16
|
-
props: [
|
|
17
|
-
}
|
|
16
|
+
props: ['item']
|
|
17
|
+
}
|
|
18
18
|
</script>
|
|
19
|
-
|
|
20
|
-
<style scoped lang="scss">
|
|
21
|
-
// Start custom common variables
|
|
22
|
-
@import "@nativescript/theme/scss/variables/blue";
|
|
23
|
-
// End custom common variables
|
|
24
|
-
|
|
25
|
-
// Custom styles
|
|
26
|
-
|
|
27
|
-
</style>
|
package/app/components/Items.vue
CHANGED
|
@@ -1,115 +1,59 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<Page>
|
|
3
3
|
<ActionBar>
|
|
4
|
-
<Label text="Home"
|
|
4
|
+
<Label text="Home"/>
|
|
5
5
|
</ActionBar>
|
|
6
6
|
|
|
7
|
-
<ListView
|
|
8
|
-
<
|
|
7
|
+
<ListView :items="items" @itemTap="onItemTap">
|
|
8
|
+
<template #default="{ item }">
|
|
9
9
|
<StackLayout orientation="horizontal">
|
|
10
|
-
<Label :text="item.name" textWrap="true"
|
|
10
|
+
<Label :text="item.name" textWrap="true"/>
|
|
11
11
|
</StackLayout>
|
|
12
|
-
</
|
|
12
|
+
</template>
|
|
13
13
|
</ListView>
|
|
14
14
|
</Page>
|
|
15
15
|
</template>
|
|
16
16
|
|
|
17
17
|
<script>
|
|
18
|
-
import
|
|
18
|
+
import { $navigateTo } from 'nativescript-vue'
|
|
19
|
+
import ItemDetails from './ItemDetails.vue'
|
|
19
20
|
|
|
20
21
|
export default {
|
|
21
22
|
data() {
|
|
22
23
|
return {
|
|
23
24
|
items: [
|
|
24
|
-
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
{
|
|
41
|
-
name: "Item 5",
|
|
42
|
-
description: "Description for Item 5"
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
name: "Item 6",
|
|
46
|
-
description: "Description for Item 6"
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
name: "Item 7",
|
|
50
|
-
description: "Description for Item 7"
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
name: "Item 8",
|
|
54
|
-
description: "Description for Item 8"
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
name: "Item 9",
|
|
58
|
-
description: "Description for Item 9"
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
name: "Item 10",
|
|
62
|
-
description: "Description for Item 10"
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
name: "Item 11",
|
|
66
|
-
description: "Description for Item 11"
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
name: "Item 12",
|
|
70
|
-
description: "Description for Item 12"
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
name: "Item 13",
|
|
74
|
-
description: "Description for Item 13"
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
name: "Item 14",
|
|
78
|
-
description: "Description for Item 14"
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
name: "Item 15",
|
|
82
|
-
description: "Description for Item 15"
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
name: "Item 16",
|
|
86
|
-
description: "Description for Item 16"
|
|
87
|
-
}
|
|
25
|
+
{ name: "Item 1", description: "Description for Item 1" },
|
|
26
|
+
{ name: "Item 2", description: "Description for Item 2" },
|
|
27
|
+
{ name: "Item 3", description: "Description for Item 3" },
|
|
28
|
+
{ name: "Item 4", description: "Description for Item 4" },
|
|
29
|
+
{ name: "Item 5", description: "Description for Item 5" },
|
|
30
|
+
{ name: "Item 6", description: "Description for Item 6" },
|
|
31
|
+
{ name: "Item 7", description: "Description for Item 7" },
|
|
32
|
+
{ name: "Item 8", description: "Description for Item 8" },
|
|
33
|
+
{ name: "Item 9", description: "Description for Item 9" },
|
|
34
|
+
{ name: "Item 10", description: "Description for Item 10" },
|
|
35
|
+
{ name: "Item 11", description: "Description for Item 11" },
|
|
36
|
+
{ name: "Item 12", description: "Description for Item 12" },
|
|
37
|
+
{ name: "Item 13", description: "Description for Item 13" },
|
|
38
|
+
{ name: "Item 14", description: "Description for Item 14" },
|
|
39
|
+
{ name: "Item 15", description: "Description for Item 15" },
|
|
40
|
+
{ name: "Item 16", description: "Description for Item 16" }
|
|
88
41
|
]
|
|
89
|
-
}
|
|
42
|
+
}
|
|
90
43
|
},
|
|
91
44
|
methods: {
|
|
92
45
|
onItemTap(args) {
|
|
93
|
-
|
|
46
|
+
$navigateTo(ItemDetails, {
|
|
94
47
|
frame: 'items',
|
|
95
|
-
props: {item: args.item},
|
|
48
|
+
props: { item: args.item },
|
|
96
49
|
animated: true,
|
|
97
50
|
transition: {
|
|
98
51
|
name: "slide",
|
|
99
52
|
duration: 200,
|
|
100
53
|
curve: "ease"
|
|
101
54
|
}
|
|
102
|
-
})
|
|
55
|
+
})
|
|
103
56
|
}
|
|
104
57
|
}
|
|
105
|
-
}
|
|
58
|
+
}
|
|
106
59
|
</script>
|
|
107
|
-
|
|
108
|
-
<style scoped lang="scss">
|
|
109
|
-
// Start custom common variables
|
|
110
|
-
@import "@nativescript/theme/scss/variables/blue";
|
|
111
|
-
// End custom common variables
|
|
112
|
-
|
|
113
|
-
// Custom styles
|
|
114
|
-
|
|
115
|
-
</style>
|
|
@@ -1,31 +1,16 @@
|
|
|
1
|
-
<template
|
|
1
|
+
<template>
|
|
2
2
|
<Page>
|
|
3
3
|
<ActionBar>
|
|
4
|
-
<Label text="Search"
|
|
4
|
+
<Label text="Search"/>
|
|
5
5
|
</ActionBar>
|
|
6
6
|
|
|
7
|
-
<GridLayout
|
|
8
|
-
<Label class="
|
|
9
|
-
<Label class="
|
|
7
|
+
<GridLayout>
|
|
8
|
+
<Label class="fas text-7xl text-gray-400 text-center" style="vertical-align: top; margin-top: 20%" text.decode=""/>
|
|
9
|
+
<Label class="text-xl text-gray-400 text-center align-middle" text="Search page content goes here"/>
|
|
10
10
|
</GridLayout>
|
|
11
11
|
</Page>
|
|
12
12
|
</template>
|
|
13
13
|
|
|
14
14
|
<script>
|
|
15
|
-
export default {
|
|
16
|
-
data() {
|
|
17
|
-
return {
|
|
18
|
-
message: "<!-- Search page content goes here -->"
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
}
|
|
15
|
+
export default {}
|
|
22
16
|
</script>
|
|
23
|
-
|
|
24
|
-
<style lang="scss" scoped>
|
|
25
|
-
// Start custom common variables
|
|
26
|
-
@import "@nativescript/theme/scss/variables/blue";
|
|
27
|
-
// End custom common variables
|
|
28
|
-
|
|
29
|
-
// Custom styles
|
|
30
|
-
|
|
31
|
-
</style>
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@nativescript/template-tab-navigation-vue",
|
|
3
3
|
"main": "app/app.js",
|
|
4
4
|
"displayName": "Tabs",
|
|
5
|
-
"version": "9.0.
|
|
5
|
+
"version": "9.0.2",
|
|
6
6
|
"description": "Tabbed interface template using Vue",
|
|
7
7
|
"author": "NativeScript Team <oss@nativescript.org>",
|
|
8
8
|
"license": "Apache-2.0",
|
|
@@ -41,11 +41,11 @@
|
|
|
41
41
|
],
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@nativescript/core": "~9.0.0",
|
|
44
|
-
"
|
|
45
|
-
"nativescript-vue": "~2.9.3"
|
|
44
|
+
"nativescript-vue": "^3.0.0"
|
|
46
45
|
},
|
|
47
46
|
"devDependencies": {
|
|
48
|
-
"@nativescript/
|
|
49
|
-
"nativescript
|
|
47
|
+
"@nativescript/tailwind": "^4.0.0",
|
|
48
|
+
"@nativescript/webpack": "~5.0.31",
|
|
49
|
+
"tailwindcss": "^4.0.0"
|
|
50
50
|
}
|
|
51
51
|
}
|
package/app/_app-common.scss
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
@import '@nativescript/theme/core';
|
|
2
|
-
@import '@nativescript/theme/default';
|
|
3
|
-
|
|
4
|
-
// Place any CSS rules you want to apply on both iOS and Android here.
|
|
5
|
-
// This is where the vast majority of your CSS code goes.
|
|
6
|
-
|
|
7
|
-
// Font icon class
|
|
8
|
-
.fab {
|
|
9
|
-
font-family: 'Font Awesome 5 Brands', 'fa-brands-400';
|
|
10
|
-
font-weight: 400;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.fas {
|
|
14
|
-
font-family: 'Font Awesome 5 Free', 'fa-solid-900';
|
|
15
|
-
font-weight: 900;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
.far {
|
|
19
|
-
font-family: 'Font Awesome 5 Free', 'fa-regular-400';
|
|
20
|
-
font-weight: 400;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
// Custom tabstrip item class
|
|
24
|
-
.navigation__item {
|
|
25
|
-
&:active,
|
|
26
|
-
&:active Label {
|
|
27
|
-
@include colorize($color: complementary);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// Common page class
|
|
32
|
-
.page__content {
|
|
33
|
-
&-icon,
|
|
34
|
-
&-placeholder {
|
|
35
|
-
color: const(grey);
|
|
36
|
-
font-size: 20;
|
|
37
|
-
vertical-align: center;
|
|
38
|
-
horizontal-align: center;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
&-icon {
|
|
42
|
-
font-size: 72;
|
|
43
|
-
vertical-align: top;
|
|
44
|
-
margin-top: 20%;
|
|
45
|
-
}
|
|
46
|
-
}
|
package/app/app.android.scss
DELETED
package/app/app.ios.scss
DELETED