nativescript-web-adapter 0.1.1 → 0.1.3
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/README.md +220 -168
- package/core/components/AbsoluteLayout.vue +11 -0
- package/core/components/ActionBar.vue +11 -0
- package/core/components/ActionItem.vue +11 -0
- package/core/components/ActivityIndicator.vue +15 -0
- package/core/components/Button.vue +41 -0
- package/core/components/DatePicker.vue +27 -0
- package/core/components/DockLayout.vue +23 -0
- package/core/components/FlexboxLayout.vue +11 -0
- package/core/components/Frame.vue +11 -0
- package/core/components/GridLayout.vue +85 -0
- package/core/components/HtmlView.vue +13 -0
- package/core/components/Image.vue +12 -0
- package/core/components/ImageCacheIt.vue +12 -0
- package/core/components/Label.vue +15 -0
- package/core/components/ListPicker.vue +21 -0
- package/core/components/ListView.vue +12 -0
- package/core/components/NavigationButton.vue +28 -0
- package/core/components/Page.vue +18 -0
- package/core/components/Placeholder.vue +11 -0
- package/core/components/Progress.vue +12 -0
- package/core/components/RootLayout.vue +11 -0
- package/core/components/ScrollView.vue +11 -0
- package/core/components/SearchBar.vue +22 -0
- package/core/components/SegmentedBar.vue +50 -0
- package/core/components/SegmentedBarItem.vue +21 -0
- package/core/components/Slider.vue +18 -0
- package/core/components/StackLayout.vue +11 -0
- package/core/components/Switch.vue +26 -0
- package/core/components/TabView.vue +48 -0
- package/core/components/TabViewItem.vue +27 -0
- package/core/components/TextField.vue +15 -0
- package/core/components/TextView.vue +18 -0
- package/core/components/TimePicker.vue +21 -0
- package/core/components/WebView.vue +13 -0
- package/core/components/WrapLayout.vue +11 -0
- package/core/components/index.js +3 -0
- package/core/components/index.ts +35 -0
- package/core/composables/dialogs.ts +31 -0
- package/core/composables/index.js +3 -0
- package/core/composables/index.ts +4 -0
- package/core/composables/useActionBar.js +7 -0
- package/core/composables/useActionBar.ts +19 -0
- package/core/composables/useFrame.js +8 -0
- package/core/composables/useFrame.ts +25 -0
- package/core/composables/usePage.js +8 -0
- package/core/composables/usePage.ts +25 -0
- package/core/env.d.ts +7 -0
- package/core/index.js +4 -0
- package/core/index.ts +85 -0
- package/core/types.ts +12 -0
- package/dist/nativescript-web-adapter.es.js +83 -0
- package/dist/nativescript-web-adapter.umd.js +1 -0
- package/dist/style.css +1 -0
- package/package.json +34 -46
- package/tools/cli.cjs +45 -0
- package/tools/create-web-platform.cjs +76 -0
- package/tools/create-web-platform.js +196 -0
- package/tools/modules/appPatch.cjs +27 -0
- package/tools/modules/copy.cjs +84 -0
- package/tools/modules/router.cjs +46 -0
- package/tools/modules/templates.cjs +130 -0
- package/tools/modules/transform.cjs +93 -0
- package/dist/core.cjs +0 -3
- package/dist/core.cjs.map +0 -1
- package/dist/core.js +0 -2
- package/dist/core.js.map +0 -1
- package/dist/index.cjs +0 -240
- package/dist/index.cjs.map +0 -1
- package/dist/index.js +0 -229
- package/dist/index.js.map +0 -1
- package/dist/types/core/index.d.ts +0 -8
- package/dist/types/index.d.ts +0 -1
- package/dist/types/vue/components/ActionBar.d.ts +0 -5
- package/dist/types/vue/components/Button.d.ts +0 -26
- package/dist/types/vue/components/FlexboxLayout.d.ts +0 -35
- package/dist/types/vue/components/Frame.d.ts +0 -3
- package/dist/types/vue/components/GridLayout.d.ts +0 -27
- package/dist/types/vue/components/ImageCacheIt.d.ts +0 -23
- package/dist/types/vue/components/Label.d.ts +0 -26
- package/dist/types/vue/components/Page.d.ts +0 -5
- package/dist/types/vue/components/StackLayout.d.ts +0 -5
- package/dist/types/vue/index.d.ts +0 -12
- package/dist/types/vue.d.ts +0 -169
- package/dist/vue.cjs +0 -240
- package/dist/vue.cjs.map +0 -1
- package/dist/vue.js +0 -229
- package/dist/vue.js.map +0 -1
package/dist/types/vue.d.ts
DELETED
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
import * as vue from 'vue';
|
|
2
|
-
import { VNode, Plugin } from 'vue';
|
|
3
|
-
|
|
4
|
-
declare const Label: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
5
|
-
text: {
|
|
6
|
-
type: StringConstructor;
|
|
7
|
-
default: string;
|
|
8
|
-
};
|
|
9
|
-
horizontalAlignment: {
|
|
10
|
-
type: StringConstructor;
|
|
11
|
-
default: any;
|
|
12
|
-
};
|
|
13
|
-
}>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
14
|
-
[key: string]: any;
|
|
15
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
|
|
16
|
-
text: {
|
|
17
|
-
type: StringConstructor;
|
|
18
|
-
default: string;
|
|
19
|
-
};
|
|
20
|
-
horizontalAlignment: {
|
|
21
|
-
type: StringConstructor;
|
|
22
|
-
default: any;
|
|
23
|
-
};
|
|
24
|
-
}>> & Readonly<{
|
|
25
|
-
onTap?: (...args: any[]) => any;
|
|
26
|
-
}>, {
|
|
27
|
-
text: string;
|
|
28
|
-
horizontalAlignment: string;
|
|
29
|
-
}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
30
|
-
|
|
31
|
-
declare const Button: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
32
|
-
text: {
|
|
33
|
-
type: StringConstructor;
|
|
34
|
-
default: string;
|
|
35
|
-
};
|
|
36
|
-
horizontalAlignment: {
|
|
37
|
-
type: StringConstructor;
|
|
38
|
-
default: any;
|
|
39
|
-
};
|
|
40
|
-
}>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
41
|
-
[key: string]: any;
|
|
42
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
|
|
43
|
-
text: {
|
|
44
|
-
type: StringConstructor;
|
|
45
|
-
default: string;
|
|
46
|
-
};
|
|
47
|
-
horizontalAlignment: {
|
|
48
|
-
type: StringConstructor;
|
|
49
|
-
default: any;
|
|
50
|
-
};
|
|
51
|
-
}>> & Readonly<{
|
|
52
|
-
onTap?: (...args: any[]) => any;
|
|
53
|
-
}>, {
|
|
54
|
-
text: string;
|
|
55
|
-
horizontalAlignment: string;
|
|
56
|
-
}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
57
|
-
|
|
58
|
-
declare const StackLayout: vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
59
|
-
[key: string]: any;
|
|
60
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<{}> & Readonly<{
|
|
61
|
-
onTap?: (...args: any[]) => any;
|
|
62
|
-
}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
63
|
-
|
|
64
|
-
declare const FlexboxLayout: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
65
|
-
flexDirection: {
|
|
66
|
-
type: StringConstructor;
|
|
67
|
-
default: string;
|
|
68
|
-
};
|
|
69
|
-
justifyContent: {
|
|
70
|
-
type: StringConstructor;
|
|
71
|
-
default: string;
|
|
72
|
-
};
|
|
73
|
-
alignItems: {
|
|
74
|
-
type: StringConstructor;
|
|
75
|
-
default: string;
|
|
76
|
-
};
|
|
77
|
-
}>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
78
|
-
[key: string]: any;
|
|
79
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
|
|
80
|
-
flexDirection: {
|
|
81
|
-
type: StringConstructor;
|
|
82
|
-
default: string;
|
|
83
|
-
};
|
|
84
|
-
justifyContent: {
|
|
85
|
-
type: StringConstructor;
|
|
86
|
-
default: string;
|
|
87
|
-
};
|
|
88
|
-
alignItems: {
|
|
89
|
-
type: StringConstructor;
|
|
90
|
-
default: string;
|
|
91
|
-
};
|
|
92
|
-
}>> & Readonly<{
|
|
93
|
-
onTap?: (...args: any[]) => any;
|
|
94
|
-
}>, {
|
|
95
|
-
flexDirection: string;
|
|
96
|
-
justifyContent: string;
|
|
97
|
-
alignItems: string;
|
|
98
|
-
}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
99
|
-
|
|
100
|
-
declare const GridLayout: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
101
|
-
rows: {
|
|
102
|
-
type: StringConstructor;
|
|
103
|
-
default: any;
|
|
104
|
-
};
|
|
105
|
-
columns: {
|
|
106
|
-
type: StringConstructor;
|
|
107
|
-
default: any;
|
|
108
|
-
};
|
|
109
|
-
}>, () => VNode<vue.RendererNode, vue.RendererElement, {
|
|
110
|
-
[key: string]: any;
|
|
111
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
|
|
112
|
-
rows: {
|
|
113
|
-
type: StringConstructor;
|
|
114
|
-
default: any;
|
|
115
|
-
};
|
|
116
|
-
columns: {
|
|
117
|
-
type: StringConstructor;
|
|
118
|
-
default: any;
|
|
119
|
-
};
|
|
120
|
-
}>> & Readonly<{
|
|
121
|
-
onTap?: (...args: any[]) => any;
|
|
122
|
-
}>, {
|
|
123
|
-
rows: string;
|
|
124
|
-
columns: string;
|
|
125
|
-
}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
126
|
-
|
|
127
|
-
declare const Page: vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
128
|
-
[key: string]: any;
|
|
129
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<{}> & Readonly<{
|
|
130
|
-
onTap?: (...args: any[]) => any;
|
|
131
|
-
}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
132
|
-
|
|
133
|
-
declare const Frame: vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
134
|
-
[key: string]: any;
|
|
135
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
136
|
-
|
|
137
|
-
declare const ActionBar: vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
138
|
-
[key: string]: any;
|
|
139
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "tap"[], "tap", vue.PublicProps, Readonly<{}> & Readonly<{
|
|
140
|
-
onTap?: (...args: any[]) => any;
|
|
141
|
-
}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
142
|
-
|
|
143
|
-
declare const ImageCacheIt: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
144
|
-
src: {
|
|
145
|
-
type: StringConstructor;
|
|
146
|
-
required: true;
|
|
147
|
-
};
|
|
148
|
-
stretch: {
|
|
149
|
-
type: StringConstructor;
|
|
150
|
-
default: string;
|
|
151
|
-
};
|
|
152
|
-
}>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
153
|
-
[key: string]: any;
|
|
154
|
-
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
|
|
155
|
-
src: {
|
|
156
|
-
type: StringConstructor;
|
|
157
|
-
required: true;
|
|
158
|
-
};
|
|
159
|
-
stretch: {
|
|
160
|
-
type: StringConstructor;
|
|
161
|
-
default: string;
|
|
162
|
-
};
|
|
163
|
-
}>> & Readonly<{}>, {
|
|
164
|
-
stretch: string;
|
|
165
|
-
}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
166
|
-
|
|
167
|
-
declare const NativeScriptWebPlugin: Plugin;
|
|
168
|
-
|
|
169
|
-
export { ActionBar, Button, FlexboxLayout, Frame, GridLayout, ImageCacheIt, Label, NativeScriptWebPlugin, Page, StackLayout };
|
package/dist/vue.cjs
DELETED
|
@@ -1,240 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var vue = require('vue');
|
|
4
|
-
|
|
5
|
-
const Label = vue.defineComponent({
|
|
6
|
-
name: 'NSLabel',
|
|
7
|
-
props: {
|
|
8
|
-
text: { type: String, default: '' },
|
|
9
|
-
horizontalAlignment: { type: String, default: undefined }
|
|
10
|
-
},
|
|
11
|
-
emits: ['tap'],
|
|
12
|
-
setup(props, { slots, attrs, emit }) {
|
|
13
|
-
var _a;
|
|
14
|
-
const style = {};
|
|
15
|
-
if (props.horizontalAlignment) {
|
|
16
|
-
const map = { center: 'center', left: 'left', right: 'right' };
|
|
17
|
-
style.textAlign = (_a = map[String(props.horizontalAlignment).toLowerCase()]) !== null && _a !== void 0 ? _a : undefined;
|
|
18
|
-
}
|
|
19
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
20
|
-
return () => vue.h('span', { style, onClick, ...attrs }, slots.default ? slots.default() : props.text);
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
const Button = vue.defineComponent({
|
|
25
|
-
name: 'NSButton',
|
|
26
|
-
props: {
|
|
27
|
-
text: { type: String, default: '' },
|
|
28
|
-
horizontalAlignment: { type: String, default: undefined }
|
|
29
|
-
},
|
|
30
|
-
emits: ['tap'],
|
|
31
|
-
setup(props, { emit, slots, attrs }) {
|
|
32
|
-
var _a;
|
|
33
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
34
|
-
const style = {};
|
|
35
|
-
if (props.horizontalAlignment) {
|
|
36
|
-
const map = {
|
|
37
|
-
center: 'center',
|
|
38
|
-
left: 'start',
|
|
39
|
-
right: 'end',
|
|
40
|
-
stretch: 'stretch'
|
|
41
|
-
};
|
|
42
|
-
style.justifySelf = (_a = map[String(props.horizontalAlignment).toLowerCase()]) !== null && _a !== void 0 ? _a : undefined;
|
|
43
|
-
}
|
|
44
|
-
return () => vue.h('button', { onClick, style, ...attrs }, slots.default ? slots.default() : props.text);
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
const StackLayout = vue.defineComponent({
|
|
49
|
-
name: 'NSStackLayout',
|
|
50
|
-
emits: ['tap'],
|
|
51
|
-
setup(_, { slots, attrs, emit }) {
|
|
52
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
53
|
-
return () => { var _a; return vue.h('div', { style: { display: 'flex', flexDirection: 'column' }, onClick, ...attrs }, (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)); };
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
const FlexboxLayout = vue.defineComponent({
|
|
58
|
-
name: 'NSFlexboxLayout',
|
|
59
|
-
props: {
|
|
60
|
-
flexDirection: { type: String, default: 'row' },
|
|
61
|
-
justifyContent: { type: String, default: 'flex-start' },
|
|
62
|
-
alignItems: { type: String, default: 'stretch' }
|
|
63
|
-
},
|
|
64
|
-
emits: ['tap'],
|
|
65
|
-
setup(props, { slots, attrs, emit }) {
|
|
66
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
67
|
-
return () => { var _a; return vue.h('div', { style: { display: 'flex', flexDirection: props.flexDirection, justifyContent: props.justifyContent, alignItems: props.alignItems }, onClick, ...attrs }, (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)); };
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
function parseTracks(tracks) {
|
|
72
|
-
if (!tracks)
|
|
73
|
-
return undefined;
|
|
74
|
-
return tracks.split(',').map(s => s.trim()).map(t => {
|
|
75
|
-
if (t === '*' || t === 'auto')
|
|
76
|
-
return t === '*' ? '1fr' : 'auto';
|
|
77
|
-
if (/^\d+$/.test(t))
|
|
78
|
-
return `${t}px`;
|
|
79
|
-
return t;
|
|
80
|
-
}).join(' ');
|
|
81
|
-
}
|
|
82
|
-
const GridLayout = vue.defineComponent({
|
|
83
|
-
name: 'NSGridLayout',
|
|
84
|
-
props: {
|
|
85
|
-
rows: { type: String, default: undefined },
|
|
86
|
-
columns: { type: String, default: undefined }
|
|
87
|
-
},
|
|
88
|
-
emits: ['tap'],
|
|
89
|
-
setup(props, { slots, attrs, emit }) {
|
|
90
|
-
var _a, _b;
|
|
91
|
-
const containerStyle = {
|
|
92
|
-
display: 'grid',
|
|
93
|
-
// NS 默认一列:确保子项按行堆叠,而不是同一行多列并排
|
|
94
|
-
gridTemplateColumns: (_a = parseTracks(props.columns)) !== null && _a !== void 0 ? _a : '1fr',
|
|
95
|
-
// 行可选;若未指定,默认自适应内容
|
|
96
|
-
gridTemplateRows: (_b = parseTracks(props.rows)) !== null && _b !== void 0 ? _b : undefined,
|
|
97
|
-
// 以“按行”自动布局,默认逐行堆叠
|
|
98
|
-
gridAutoFlow: 'row',
|
|
99
|
-
width: '100%',
|
|
100
|
-
height: '100%'
|
|
101
|
-
};
|
|
102
|
-
const mapChild = (child) => {
|
|
103
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
104
|
-
if (!vue.isVNode(child))
|
|
105
|
-
return child;
|
|
106
|
-
const cprops = { ...(child.props || {}) };
|
|
107
|
-
const style = { ...(cprops.style || {}) };
|
|
108
|
-
// Row/Column placement: NativeScript uses 0-based indices; CSS Grid is 1-based
|
|
109
|
-
const row = (_a = cprops.row) !== null && _a !== void 0 ? _a : cprops['row'];
|
|
110
|
-
const col = (_c = (_b = cprops.col) !== null && _b !== void 0 ? _b : cprops['col']) !== null && _c !== void 0 ? _c : cprops.column;
|
|
111
|
-
if (row != null) {
|
|
112
|
-
const r = Number(row);
|
|
113
|
-
if (!isNaN(r))
|
|
114
|
-
style.gridRowStart = r + 1;
|
|
115
|
-
}
|
|
116
|
-
if (col != null) {
|
|
117
|
-
const c = Number(col);
|
|
118
|
-
if (!isNaN(c))
|
|
119
|
-
style.gridColumnStart = c + 1;
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
// 未声明列时,强制放在第 1 列,避免隐式多列导致并排
|
|
123
|
-
style.gridColumnStart = 1;
|
|
124
|
-
}
|
|
125
|
-
// Horizontal alignment mapping
|
|
126
|
-
const ha = (_d = cprops.horizontalAlignment) !== null && _d !== void 0 ? _d : cprops['horizontalAlignment'];
|
|
127
|
-
if (ha) {
|
|
128
|
-
const map = {
|
|
129
|
-
center: 'center',
|
|
130
|
-
left: 'start',
|
|
131
|
-
right: 'end',
|
|
132
|
-
stretch: 'stretch'
|
|
133
|
-
};
|
|
134
|
-
style.justifySelf = (_e = map[String(ha).toLowerCase()]) !== null && _e !== void 0 ? _e : style.justifySelf;
|
|
135
|
-
}
|
|
136
|
-
// Vertical alignment mapping
|
|
137
|
-
const va = (_f = cprops.verticalAlignment) !== null && _f !== void 0 ? _f : cprops['verticalAlignment'];
|
|
138
|
-
if (va) {
|
|
139
|
-
const map = {
|
|
140
|
-
center: 'center',
|
|
141
|
-
top: 'start',
|
|
142
|
-
bottom: 'end',
|
|
143
|
-
stretch: 'stretch'
|
|
144
|
-
};
|
|
145
|
-
style.alignSelf = (_g = map[String(va).toLowerCase()]) !== null && _g !== void 0 ? _g : style.alignSelf;
|
|
146
|
-
}
|
|
147
|
-
// Row/Column span mapping
|
|
148
|
-
const rowSpan = (_h = cprops.rowSpan) !== null && _h !== void 0 ? _h : cprops['rowSpan'];
|
|
149
|
-
if (rowSpan != null) {
|
|
150
|
-
const rs = Number(rowSpan);
|
|
151
|
-
if (!isNaN(rs) && rs > 1)
|
|
152
|
-
style.gridRowEnd = `span ${rs}`;
|
|
153
|
-
}
|
|
154
|
-
const colSpan = (_j = cprops.colSpan) !== null && _j !== void 0 ? _j : cprops['colSpan'];
|
|
155
|
-
if (colSpan != null) {
|
|
156
|
-
const cs = Number(colSpan);
|
|
157
|
-
if (!isNaN(cs) && cs > 1)
|
|
158
|
-
style.gridColumnEnd = `span ${cs}`;
|
|
159
|
-
}
|
|
160
|
-
cprops.style = style;
|
|
161
|
-
return vue.h(child.type, cprops, child.children);
|
|
162
|
-
};
|
|
163
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
164
|
-
return () => {
|
|
165
|
-
var _a, _b;
|
|
166
|
-
const children = (_b = (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)) !== null && _b !== void 0 ? _b : [];
|
|
167
|
-
const mapped = children.map(mapChild);
|
|
168
|
-
return vue.h('div', { style: containerStyle, onClick, ...attrs }, mapped);
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
|
|
173
|
-
const Page = vue.defineComponent({
|
|
174
|
-
name: 'NSPage',
|
|
175
|
-
emits: ['tap'],
|
|
176
|
-
setup(_, { slots, attrs, emit }) {
|
|
177
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
178
|
-
return () => { var _a; return vue.h('main', { onClick, ...attrs }, (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)); };
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
|
|
182
|
-
const Frame = vue.defineComponent({
|
|
183
|
-
name: 'NSFrame',
|
|
184
|
-
setup(_, { slots, attrs }) {
|
|
185
|
-
return () => { var _a; return vue.h('div', { ...attrs }, (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)); };
|
|
186
|
-
}
|
|
187
|
-
});
|
|
188
|
-
|
|
189
|
-
const ActionBar = vue.defineComponent({
|
|
190
|
-
name: 'NSActionBar',
|
|
191
|
-
emits: ['tap'],
|
|
192
|
-
setup(_, { slots, attrs, emit }) {
|
|
193
|
-
const onClick = (e) => emit('tap', { eventName: 'tap', object: e.currentTarget });
|
|
194
|
-
return () => { var _a; return vue.h('header', { onClick, ...attrs }, (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)); };
|
|
195
|
-
}
|
|
196
|
-
});
|
|
197
|
-
|
|
198
|
-
const ImageCacheIt = vue.defineComponent({
|
|
199
|
-
name: 'ImageCacheIt',
|
|
200
|
-
props: {
|
|
201
|
-
src: { type: String, required: true },
|
|
202
|
-
stretch: { type: String, default: 'aspectFill' }
|
|
203
|
-
},
|
|
204
|
-
setup(props, { attrs }) {
|
|
205
|
-
const style = { width: '100%', display: 'block', objectPosition: 'center' };
|
|
206
|
-
if (props.stretch === 'aspectFill') {
|
|
207
|
-
style.objectFit = 'cover';
|
|
208
|
-
}
|
|
209
|
-
else if (props.stretch === 'aspectFit') {
|
|
210
|
-
style.objectFit = 'contain';
|
|
211
|
-
}
|
|
212
|
-
return () => vue.h('img', { src: props.src, style, ...attrs });
|
|
213
|
-
}
|
|
214
|
-
});
|
|
215
|
-
|
|
216
|
-
const NativeScriptWebPlugin = {
|
|
217
|
-
install(app) {
|
|
218
|
-
app.component('Label', Label);
|
|
219
|
-
app.component('Button', Button);
|
|
220
|
-
app.component('StackLayout', StackLayout);
|
|
221
|
-
app.component('FlexboxLayout', FlexboxLayout);
|
|
222
|
-
app.component('GridLayout', GridLayout);
|
|
223
|
-
app.component('Page', Page);
|
|
224
|
-
app.component('Frame', Frame);
|
|
225
|
-
app.component('ActionBar', ActionBar);
|
|
226
|
-
app.component('ImageCacheIt', ImageCacheIt);
|
|
227
|
-
}
|
|
228
|
-
};
|
|
229
|
-
|
|
230
|
-
exports.ActionBar = ActionBar;
|
|
231
|
-
exports.Button = Button;
|
|
232
|
-
exports.FlexboxLayout = FlexboxLayout;
|
|
233
|
-
exports.Frame = Frame;
|
|
234
|
-
exports.GridLayout = GridLayout;
|
|
235
|
-
exports.ImageCacheIt = ImageCacheIt;
|
|
236
|
-
exports.Label = Label;
|
|
237
|
-
exports.NativeScriptWebPlugin = NativeScriptWebPlugin;
|
|
238
|
-
exports.Page = Page;
|
|
239
|
-
exports.StackLayout = StackLayout;
|
|
240
|
-
//# sourceMappingURL=vue.cjs.map
|
package/dist/vue.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vue.cjs","sources":["../../src/vue/components/Label.ts","../../src/vue/components/Button.ts","../../src/vue/components/StackLayout.ts","../../src/vue/components/FlexboxLayout.ts","../../src/vue/components/GridLayout.ts","../../src/vue/components/Page.ts","../../src/vue/components/Frame.ts","../../src/vue/components/ActionBar.ts","../../src/vue/components/ImageCacheIt.ts","../../src/vue/index.ts"],"sourcesContent":["import { defineComponent, h } from 'vue';\n\nexport const Label = defineComponent({\n name: 'NSLabel',\n props: {\n text: { type: String, default: '' },\n horizontalAlignment: { type: String, default: undefined }\n },\n emits: ['tap'],\n setup(props, { slots, attrs, emit }) {\n const style: Record<string, any> = {};\n if (props.horizontalAlignment) {\n const map: Record<string, string> = { center: 'center', left: 'left', right: 'right' };\n style.textAlign = map[String(props.horizontalAlignment).toLowerCase()] ?? undefined;\n }\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n return () => h('span', { style, onClick, ...attrs }, slots.default ? slots.default() : props.text);\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const Button = defineComponent({\n name: 'NSButton',\n props: {\n text: { type: String, default: '' },\n horizontalAlignment: { type: String, default: undefined }\n },\n emits: ['tap'],\n setup(props, { emit, slots, attrs }) {\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n const style: Record<string, any> = {};\n if (props.horizontalAlignment) {\n const map: Record<string, string> = {\n center: 'center',\n left: 'start',\n right: 'end',\n stretch: 'stretch'\n };\n style.justifySelf = map[String(props.horizontalAlignment).toLowerCase()] ?? undefined;\n }\n return () => h('button', { onClick, style, ...attrs }, slots.default ? slots.default() : props.text);\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const StackLayout = defineComponent({\n name: 'NSStackLayout',\n emits: ['tap'],\n setup(_, { slots, attrs, emit }) {\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n return () => h('div', { style: { display: 'flex', flexDirection: 'column' }, onClick, ...attrs }, slots.default?.());\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const FlexboxLayout = defineComponent({\n name: 'NSFlexboxLayout',\n props: {\n flexDirection: { type: String, default: 'row' },\n justifyContent: { type: String, default: 'flex-start' },\n alignItems: { type: String, default: 'stretch' }\n },\n emits: ['tap'],\n setup(props, { slots, attrs, emit }) {\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n return () => h('div', { style: { display: 'flex', flexDirection: props.flexDirection, justifyContent: props.justifyContent, alignItems: props.alignItems }, onClick, ...attrs }, slots.default?.());\n }\n});","import { defineComponent, h, VNode, isVNode } from 'vue';\n\nfunction parseTracks(tracks?: string) {\n if (!tracks) return undefined;\n return tracks.split(',').map(s => s.trim()).map(t => {\n if (t === '*' || t === 'auto') return t === '*' ? '1fr' : 'auto';\n if (/^\\d+$/.test(t)) return `${t}px`;\n return t;\n }).join(' ');\n}\n\nexport const GridLayout = defineComponent({\n name: 'NSGridLayout',\n props: {\n rows: { type: String, default: undefined },\n columns: { type: String, default: undefined }\n },\n emits: ['tap'],\n setup(props, { slots, attrs, emit }) {\n const containerStyle: Record<string, any> = {\n display: 'grid',\n // NS 默认一列:确保子项按行堆叠,而不是同一行多列并排\n gridTemplateColumns: parseTracks(props.columns) ?? '1fr',\n // 行可选;若未指定,默认自适应内容\n gridTemplateRows: parseTracks(props.rows) ?? undefined,\n // 以“按行”自动布局,默认逐行堆叠\n gridAutoFlow: 'row',\n width: '100%',\n height: '100%'\n };\n const mapChild = (child: VNode): VNode => {\n if (!isVNode(child)) return child as any;\n const cprops: any = { ...(child.props || {}) };\n const style: Record<string, any> = { ...(cprops.style || {}) };\n\n // Row/Column placement: NativeScript uses 0-based indices; CSS Grid is 1-based\n const row = cprops.row ?? cprops['row'];\n const col = cprops.col ?? cprops['col'] ?? cprops.column;\n if (row != null) {\n const r = Number(row);\n if (!isNaN(r)) style.gridRowStart = r + 1;\n }\n if (col != null) {\n const c = Number(col);\n if (!isNaN(c)) style.gridColumnStart = c + 1;\n } else {\n // 未声明列时,强制放在第 1 列,避免隐式多列导致并排\n style.gridColumnStart = 1;\n }\n\n // Horizontal alignment mapping\n const ha = cprops.horizontalAlignment ?? cprops['horizontalAlignment'];\n if (ha) {\n const map: Record<string, string> = {\n center: 'center',\n left: 'start',\n right: 'end',\n stretch: 'stretch'\n };\n style.justifySelf = map[String(ha).toLowerCase()] ?? style.justifySelf;\n }\n\n // Vertical alignment mapping\n const va = cprops.verticalAlignment ?? cprops['verticalAlignment'];\n if (va) {\n const map: Record<string, string> = {\n center: 'center',\n top: 'start',\n bottom: 'end',\n stretch: 'stretch'\n };\n style.alignSelf = map[String(va).toLowerCase()] ?? style.alignSelf;\n }\n\n // Row/Column span mapping\n const rowSpan = cprops.rowSpan ?? cprops['rowSpan'];\n if (rowSpan != null) {\n const rs = Number(rowSpan);\n if (!isNaN(rs) && rs > 1) style.gridRowEnd = `span ${rs}`;\n }\n const colSpan = cprops.colSpan ?? cprops['colSpan'];\n if (colSpan != null) {\n const cs = Number(colSpan);\n if (!isNaN(cs) && cs > 1) style.gridColumnEnd = `span ${cs}`;\n }\n\n cprops.style = style;\n return h(child.type as any, cprops, child.children as any);\n };\n\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n return () => {\n const children = slots.default?.() ?? [];\n const mapped = children.map(mapChild);\n return h('div', { style: containerStyle, onClick, ...attrs }, mapped);\n };\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const Page = defineComponent({\n name: 'NSPage',\n emits: ['tap'],\n setup(_, { slots, attrs, emit }) {\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n return () => h('main', { onClick, ...attrs }, slots.default?.());\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const Frame = defineComponent({\n name: 'NSFrame',\n setup(_, { slots, attrs }) {\n return () => h('div', { ...attrs }, slots.default?.());\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const ActionBar = defineComponent({\n name: 'NSActionBar',\n emits: ['tap'],\n setup(_, { slots, attrs, emit }) {\n const onClick = (e: MouseEvent) => emit('tap', { eventName: 'tap', object: e.currentTarget });\n return () => h('header', { onClick, ...attrs }, slots.default?.());\n }\n});","import { defineComponent, h } from 'vue';\n\nexport const ImageCacheIt = defineComponent({\n name: 'ImageCacheIt',\n props: {\n src: { type: String, required: true },\n stretch: { type: String, default: 'aspectFill' }\n },\n setup(props, { attrs }) {\n const style: Record<string, any> = { width: '100%', display: 'block', objectPosition: 'center' };\n if (props.stretch === 'aspectFill') {\n style.objectFit = 'cover';\n } else if (props.stretch === 'aspectFit') {\n style.objectFit = 'contain';\n }\n return () => h('img', { src: props.src, style, ...attrs });\n }\n});","import type { App, Plugin } from 'vue';\nimport { Label } from './components/Label';\nimport { Button } from './components/Button';\nimport { StackLayout } from './components/StackLayout';\nimport { FlexboxLayout } from './components/FlexboxLayout';\nimport { GridLayout } from './components/GridLayout';\nimport { Page } from './components/Page';\nimport { Frame } from './components/Frame';\nimport { ActionBar } from './components/ActionBar';\nimport { ImageCacheIt } from './components/ImageCacheIt';\n\nexport const NativeScriptWebPlugin: Plugin = {\n install(app: App) {\n app.component('Label', Label);\n app.component('Button', Button);\n app.component('StackLayout', StackLayout);\n app.component('FlexboxLayout', FlexboxLayout);\n app.component('GridLayout', GridLayout);\n app.component('Page', Page);\n app.component('Frame', Frame);\n app.component('ActionBar', ActionBar);\n app.component('ImageCacheIt', ImageCacheIt);\n }\n};\n\nexport { Label, Button, StackLayout, FlexboxLayout, GridLayout, Page, Frame, ActionBar, ImageCacheIt };"],"names":["defineComponent","h","isVNode"],"mappings":"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"}
|