jsbox-cview 1.3.4 → 1.4.0
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/components/alert/input-alert.ts +12 -6
- package/components/alert/login-alert.ts +11 -7
- package/components/alert/plain-alert.ts +9 -6
- package/components/alert/uialert.ts +3 -4
- package/components/base.ts +3 -4
- package/components/custom-navigation-bar.ts +52 -53
- package/components/dialogs/dialog-sheet.ts +10 -15
- package/components/dialogs/form-dialog.ts +5 -7
- package/components/dialogs/list-dialog.ts +9 -6
- package/components/dialogs/text-dialog.ts +7 -6
- package/components/dynamic-itemsize-matrix.ts +25 -26
- package/components/dynamic-preference-listview.ts +29 -31
- package/components/dynamic-rowheight-list.ts +10 -11
- package/components/enhanced-imageview.ts +4 -4
- package/components/flowlayout.ts +233 -0
- package/components/image-pager.ts +16 -10
- package/components/page-control.ts +16 -13
- package/components/pageviewer-titlebar.ts +15 -16
- package/components/pageviewer.ts +16 -15
- package/components/rotating-view.ts +27 -22
- package/components/searchbar.ts +30 -25
- package/components/sheet.ts +16 -17
- package/components/single-views.ts +107 -105
- package/components/spinners/loading-dual-ring.ts +15 -8
- package/components/spinners/loading-wedges.ts +8 -4
- package/components/spinners/spinner-androidstyle.ts +15 -16
- package/components/static-preference-listview.ts +94 -95
- package/components/symbol-button.ts +15 -23
- package/components/tabbar.ts +24 -25
- package/controller/base-controller.ts +57 -58
- package/controller/controller-router.ts +2 -3
- package/controller/pageviewer-controller.ts +16 -15
- package/controller/presented-page-controller.ts +14 -13
- package/controller/splitview-controller.ts +22 -13
- package/controller/tabbar-controller.ts +15 -15
- package/dist/components/alert/input-alert.js +12 -5
- package/dist/components/alert/login-alert.js +10 -5
- package/dist/components/alert/plain-alert.js +9 -5
- package/dist/components/alert/uialert.js +3 -3
- package/dist/components/base.js +4 -4
- package/dist/components/custom-navigation-bar.js +30 -30
- package/dist/components/dialogs/dialog-sheet.js +9 -12
- package/dist/components/dialogs/form-dialog.js +5 -5
- package/dist/components/dialogs/list-dialog.js +9 -5
- package/dist/components/dialogs/text-dialog.js +7 -5
- package/dist/components/dynamic-itemsize-matrix.js +15 -15
- package/dist/components/dynamic-preference-listview.js +4 -4
- package/dist/components/dynamic-rowheight-list.js +3 -3
- package/dist/components/enhanced-imageview.js +3 -3
- package/dist/components/flowlayout.js +184 -0
- package/dist/components/image-pager.js +14 -9
- package/dist/components/page-control.js +21 -18
- package/dist/components/pageviewer-titlebar.js +15 -15
- package/dist/components/pageviewer.js +16 -14
- package/dist/components/rotating-view.js +24 -19
- package/dist/components/searchbar.js +29 -24
- package/dist/components/sheet.js +13 -14
- package/dist/components/single-views.js +5 -5
- package/dist/components/spinners/loading-dual-ring.js +12 -5
- package/dist/components/spinners/loading-wedges.js +7 -3
- package/dist/components/spinners/spinner-androidstyle.js +13 -15
- package/dist/components/static-preference-listview.js +94 -94
- package/dist/components/symbol-button.js +10 -18
- package/dist/components/tabbar.js +24 -24
- package/dist/controller/base-controller.js +36 -36
- package/dist/controller/controller-router.js +2 -2
- package/dist/controller/pageviewer-controller.js +10 -8
- package/dist/controller/presented-page-controller.js +8 -6
- package/dist/controller/splitview-controller.js +19 -12
- package/dist/controller/tabbar-controller.js +3 -3
- package/dist/index.js +1 -2
- package/dist/test/flowlayout.js +74 -0
- package/index.ts +1 -2
- package/package.json +1 -1
- package/test/flowlayout.ts +77 -0
- package/components/artificial-flowlayout.ts +0 -321
- package/components/spinners/loading-double-rings.ts +0 -121
- package/dist/components/artificial-flowlayout.js +0 -258
- package/dist/components/spinners/loading-double-rings.js +0 -104
|
@@ -1,4 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseController = exports.ControllerRootView = void 0;
|
|
4
|
+
const base_1 = require("../components/base");
|
|
5
|
+
const single_views_1 = require("../components/single-views");
|
|
6
|
+
const cvid_1 = require("../utils/cvid");
|
|
7
|
+
const controller_router_1 = require("./controller-router");
|
|
8
|
+
/**
|
|
9
|
+
* status
|
|
10
|
+
* - created = 0 被创建,未被加载
|
|
11
|
+
* - loaded = 1 被加载,显示状态未知
|
|
12
|
+
* - appeared= 2 处于可显示状态
|
|
13
|
+
* - disappeared = 3 处于不显示状态
|
|
14
|
+
* - removed = 4 根视图被移除
|
|
15
|
+
* 其中只有 2 和 3 可以相互转化,其他不可以
|
|
16
|
+
*/
|
|
17
|
+
const controllerStatus = {
|
|
18
|
+
created: 0,
|
|
19
|
+
loaded: 1,
|
|
20
|
+
appeared: 2,
|
|
21
|
+
disappeared: 3,
|
|
22
|
+
removed: 4
|
|
23
|
+
};
|
|
24
|
+
class ControllerRootView extends single_views_1.ContentView {
|
|
25
|
+
constructor({ props, layout, events }) {
|
|
26
|
+
super({ props, layout, events });
|
|
27
|
+
}
|
|
28
|
+
set views(views) {
|
|
29
|
+
const _views = views.map(v => {
|
|
30
|
+
if (v instanceof base_1.Base)
|
|
31
|
+
return v.definition;
|
|
32
|
+
return v;
|
|
33
|
+
});
|
|
34
|
+
this._views = _views;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.ControllerRootView = ControllerRootView;
|
|
2
38
|
/**
|
|
3
39
|
* # CView Base Controller
|
|
4
40
|
*
|
|
@@ -58,42 +94,6 @@
|
|
|
58
94
|
*
|
|
59
95
|
* - rootView 可以直接通过 rootView.views 设置其_views 属性,其中元素可以为 view 定义也可以为 cview
|
|
60
96
|
*/
|
|
61
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
62
|
-
exports.BaseController = exports.ControllerRootView = void 0;
|
|
63
|
-
const base_1 = require("../components/base");
|
|
64
|
-
const single_views_1 = require("../components/single-views");
|
|
65
|
-
const cvid_1 = require("../utils/cvid");
|
|
66
|
-
const controller_router_1 = require("./controller-router");
|
|
67
|
-
/**
|
|
68
|
-
* status
|
|
69
|
-
* - created = 0 被创建,未被加载
|
|
70
|
-
* - loaded = 1 被加载,显示状态未知
|
|
71
|
-
* - appeared= 2 处于可显示状态
|
|
72
|
-
* - disappeared = 3 处于不显示状态
|
|
73
|
-
* - removed = 4 根视图被移除
|
|
74
|
-
* 其中只有 2 和 3 可以相互转化,其他不可以
|
|
75
|
-
*/
|
|
76
|
-
const controllerStatus = {
|
|
77
|
-
created: 0,
|
|
78
|
-
loaded: 1,
|
|
79
|
-
appeared: 2,
|
|
80
|
-
disappeared: 3,
|
|
81
|
-
removed: 4
|
|
82
|
-
};
|
|
83
|
-
class ControllerRootView extends single_views_1.ContentView {
|
|
84
|
-
constructor({ props, layout, events }) {
|
|
85
|
-
super({ props, layout, events });
|
|
86
|
-
}
|
|
87
|
-
set views(views) {
|
|
88
|
-
const _views = views.map(v => {
|
|
89
|
-
if (v instanceof base_1.Base)
|
|
90
|
-
return v.definition;
|
|
91
|
-
return v;
|
|
92
|
-
});
|
|
93
|
-
this._views = _views;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
exports.ControllerRootView = ControllerRootView;
|
|
97
97
|
class BaseController {
|
|
98
98
|
constructor({ props, layout = $layout.fill, events = {} } = {}) {
|
|
99
99
|
this._props = props || {};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.router = void 0;
|
|
2
4
|
/**
|
|
3
5
|
* 控制器的路由器,用于管理控制器的集合和操作。
|
|
4
6
|
*
|
|
@@ -13,8 +15,6 @@
|
|
|
13
15
|
* - `get(id: string)`:根据控制器的ID获取控制器。
|
|
14
16
|
*
|
|
15
17
|
*/
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.router = void 0;
|
|
18
18
|
class Router {
|
|
19
19
|
constructor() {
|
|
20
20
|
this._set = new Set();
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PageViewerController = void 0;
|
|
4
|
+
const base_controller_1 = require("./base-controller");
|
|
5
|
+
const pageviewer_1 = require("../components/pageviewer");
|
|
6
|
+
const pageviewer_titlebar_1 = require("../components/pageviewer-titlebar");
|
|
7
|
+
const custom_navigation_bar_1 = require("../components/custom-navigation-bar");
|
|
2
8
|
/**
|
|
3
9
|
* # CView PageViewer Controller
|
|
4
10
|
*
|
|
@@ -9,18 +15,14 @@
|
|
|
9
15
|
* - items: { controller: Controller, title: string }[]
|
|
10
16
|
* - navBarProps: {} 可用于 navBar 的其他属性,不包括 title 和 titleView
|
|
11
17
|
*/
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.PageViewerController = void 0;
|
|
14
|
-
const base_controller_1 = require("./base-controller");
|
|
15
|
-
const pageviewer_1 = require("../components/pageviewer");
|
|
16
|
-
const pageviewer_titlebar_1 = require("../components/pageviewer-titlebar");
|
|
17
|
-
const custom_navigation_bar_1 = require("../components/custom-navigation-bar");
|
|
18
18
|
class PageViewerController extends base_controller_1.BaseController {
|
|
19
19
|
constructor({ props, layout, events = {} }) {
|
|
20
|
-
super({
|
|
20
|
+
super({
|
|
21
|
+
props: {
|
|
21
22
|
id: props.id,
|
|
22
23
|
bgcolor: props.bgcolor
|
|
23
|
-
}, layout, events
|
|
24
|
+
}, layout, events
|
|
25
|
+
});
|
|
24
26
|
this._props = props;
|
|
25
27
|
this.cviews = {};
|
|
26
28
|
this.cviews.pageviewer = new pageviewer_1.PageViewer({
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PresentedPageController = void 0;
|
|
4
|
+
const base_controller_1 = require("./base-controller");
|
|
5
|
+
const sheet_1 = require("../components/sheet");
|
|
2
6
|
/** # CView PresentedPageController
|
|
3
7
|
*
|
|
4
8
|
* ## Props
|
|
@@ -16,15 +20,13 @@
|
|
|
16
20
|
* ## 布局
|
|
17
21
|
* 此控制器的 layout 必定为 `$layout.fill`,无需自行设定
|
|
18
22
|
*/
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.PresentedPageController = void 0;
|
|
21
|
-
const base_controller_1 = require("./base-controller");
|
|
22
|
-
const sheet_1 = require("../components/sheet");
|
|
23
23
|
class PresentedPageController extends base_controller_1.BaseController {
|
|
24
24
|
constructor({ props, layout, events } = {}) {
|
|
25
|
-
super({
|
|
25
|
+
super({
|
|
26
|
+
props: {
|
|
26
27
|
id: props === null || props === void 0 ? void 0 : props.id
|
|
27
|
-
}, layout, events
|
|
28
|
+
}, layout, events
|
|
29
|
+
});
|
|
28
30
|
this._sheet = new sheet_1.Sheet({
|
|
29
31
|
presentMode: (props === null || props === void 0 ? void 0 : props.presentMode) || 1,
|
|
30
32
|
animated: (props === null || props === void 0 ? void 0 : props.animated) || true,
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/** # CView SplitView Controller
|
|
3
|
-
*
|
|
4
|
-
* 实现左右分栏布局的控制器, 本身不提供除了分割线以外的视觉效果
|
|
5
|
-
*
|
|
6
|
-
* 此控制器加载后,会禁用原本的ScreenEdgePanGesture,此控制器应该作为根控制器使用
|
|
7
|
-
*
|
|
8
|
-
* ## Props
|
|
9
|
-
*
|
|
10
|
-
* - 只写 items: { controller: Controller, bgcolor: UIColor }[] 其中第一个放在主视图上, 第二个放在次视图上
|
|
11
|
-
* - 读写 sideBarShown: boolean = false 侧栏是否显示
|
|
12
|
-
*/
|
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
3
|
exports.SplitViewController = void 0;
|
|
15
4
|
const base_controller_1 = require("./base-controller");
|
|
@@ -129,6 +118,17 @@ class MaskView extends base_1.Base {
|
|
|
129
118
|
this.view.hidden = true;
|
|
130
119
|
}
|
|
131
120
|
}
|
|
121
|
+
/** # CView SplitView Controller
|
|
122
|
+
*
|
|
123
|
+
* 实现左右分栏布局的控制器, 本身不提供除了分割线以外的视觉效果
|
|
124
|
+
*
|
|
125
|
+
* 此控制器加载后,会禁用原本的ScreenEdgePanGesture,此控制器应该作为根控制器使用
|
|
126
|
+
*
|
|
127
|
+
* ## Props
|
|
128
|
+
*
|
|
129
|
+
* - 只写 items: { controller: Controller, bgcolor: UIColor }[] 其中第一个放在主视图上, 第二个放在次视图上
|
|
130
|
+
* - 读写 sideBarShown: boolean = false 侧栏是否显示
|
|
131
|
+
*/
|
|
132
132
|
class SplitViewController extends base_controller_1.BaseController {
|
|
133
133
|
constructor({ props, layout, events }) {
|
|
134
134
|
super({
|
|
@@ -138,6 +138,7 @@ class SplitViewController extends base_controller_1.BaseController {
|
|
|
138
138
|
}, layout, events
|
|
139
139
|
});
|
|
140
140
|
this._sideBarShown = false;
|
|
141
|
+
this._canShowSidebar = true;
|
|
141
142
|
this.cviews = {};
|
|
142
143
|
this.cviews.secondaryView = new SecondaryView({
|
|
143
144
|
props: {
|
|
@@ -172,7 +173,7 @@ class SplitViewController extends base_controller_1.BaseController {
|
|
|
172
173
|
]
|
|
173
174
|
});
|
|
174
175
|
this._screenEdgePanGestureObject = this._defineGestureObject(() => {
|
|
175
|
-
if (!this.sideBarShown)
|
|
176
|
+
if (!this.sideBarShown && this._canShowSidebar)
|
|
176
177
|
this.sideBarShown = true;
|
|
177
178
|
});
|
|
178
179
|
this.rootView.views = [this.cviews.secondaryView, this.cviews.primaryView];
|
|
@@ -248,5 +249,11 @@ class SplitViewController extends base_controller_1.BaseController {
|
|
|
248
249
|
}
|
|
249
250
|
this._sideBarShown = bool;
|
|
250
251
|
}
|
|
252
|
+
get canShowSidebar() {
|
|
253
|
+
return this._canShowSidebar;
|
|
254
|
+
}
|
|
255
|
+
set canShowSidebar(bool) {
|
|
256
|
+
this._canShowSidebar = bool;
|
|
257
|
+
}
|
|
251
258
|
}
|
|
252
259
|
exports.SplitViewController = SplitViewController;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TabBarController = void 0;
|
|
4
|
+
const base_controller_1 = require("./base-controller");
|
|
5
|
+
const single_views_1 = require("../components/single-views");
|
|
6
|
+
const tabbar_1 = require("../components/tabbar");
|
|
4
7
|
/**
|
|
5
8
|
* # CView TabBar Controller
|
|
6
9
|
*
|
|
@@ -16,9 +19,6 @@ exports.TabBarController = void 0;
|
|
|
16
19
|
* controller: Controller}[]
|
|
17
20
|
* - index: number = 0
|
|
18
21
|
*/
|
|
19
|
-
const base_controller_1 = require("./base-controller");
|
|
20
|
-
const single_views_1 = require("../components/single-views");
|
|
21
|
-
const tabbar_1 = require("../components/tabbar");
|
|
22
22
|
class TabBarController extends base_controller_1.BaseController {
|
|
23
23
|
constructor({ props, layout, events = {} }) {
|
|
24
24
|
super({
|
package/dist/index.js
CHANGED
|
@@ -14,13 +14,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./components/artificial-flowlayout"), exports);
|
|
18
17
|
__exportStar(require("./components/base"), exports);
|
|
19
18
|
__exportStar(require("./components/custom-navigation-bar"), exports);
|
|
20
19
|
__exportStar(require("./components/dynamic-itemsize-matrix"), exports);
|
|
21
20
|
__exportStar(require("./components/dynamic-preference-listview"), exports);
|
|
22
21
|
__exportStar(require("./components/dynamic-rowheight-list"), exports);
|
|
23
22
|
__exportStar(require("./components/enhanced-imageview"), exports);
|
|
23
|
+
__exportStar(require("./components/flowlayout"), exports);
|
|
24
24
|
__exportStar(require("./components/image-pager"), exports);
|
|
25
25
|
__exportStar(require("./components/page-control"), exports);
|
|
26
26
|
__exportStar(require("./components/pageviewer-titlebar"), exports);
|
|
@@ -52,7 +52,6 @@ __exportStar(require("./components/dialogs/dialog-sheet"), exports);
|
|
|
52
52
|
__exportStar(require("./components/dialogs/form-dialog"), exports);
|
|
53
53
|
__exportStar(require("./components/dialogs/list-dialog"), exports);
|
|
54
54
|
__exportStar(require("./components/dialogs/text-dialog"), exports);
|
|
55
|
-
__exportStar(require("./components/spinners/loading-double-rings"), exports);
|
|
56
55
|
__exportStar(require("./components/spinners/loading-dual-ring"), exports);
|
|
57
56
|
__exportStar(require("./components/spinners/loading-wedges"), exports);
|
|
58
57
|
__exportStar(require("./components/spinners/spinner-androidstyle"), exports);
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const flowlayout_1 = require("../components/flowlayout");
|
|
4
|
+
const single_views_1 = require("../components/single-views");
|
|
5
|
+
class FlowlayoutItem extends single_views_1.Label {
|
|
6
|
+
constructor(text) {
|
|
7
|
+
super({
|
|
8
|
+
props: {
|
|
9
|
+
text: text,
|
|
10
|
+
borderWidth: 1,
|
|
11
|
+
},
|
|
12
|
+
layout: $layout.fill
|
|
13
|
+
});
|
|
14
|
+
this._text = text;
|
|
15
|
+
}
|
|
16
|
+
itemWidth() {
|
|
17
|
+
return this._text.length * 10;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
const flowlayout = new flowlayout_1.Flowlayout({
|
|
21
|
+
props: {
|
|
22
|
+
items: [new FlowlayoutItem('Hello'), new FlowlayoutItem('World'), new FlowlayoutItem('Flowlayout')],
|
|
23
|
+
spacing: 10,
|
|
24
|
+
itemHeight: 30,
|
|
25
|
+
fixedRows: 2,
|
|
26
|
+
fixedHeight: true,
|
|
27
|
+
menu: {
|
|
28
|
+
items: [{
|
|
29
|
+
symbol: "plus",
|
|
30
|
+
handler: sender => console.log("here")
|
|
31
|
+
}]
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
layout: (make, view) => {
|
|
35
|
+
make.left.right.inset(10);
|
|
36
|
+
make.top.inset(100);
|
|
37
|
+
make.height.equalTo(70);
|
|
38
|
+
},
|
|
39
|
+
events: {
|
|
40
|
+
didSelect: (sender, index, item) => {
|
|
41
|
+
$ui.alert(item.view.text);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
$ui.render({
|
|
46
|
+
props: {
|
|
47
|
+
navButtons: [
|
|
48
|
+
{
|
|
49
|
+
symbol: "plus",
|
|
50
|
+
handler: () => {
|
|
51
|
+
flowlayout.items = [
|
|
52
|
+
new FlowlayoutItem('Hello'),
|
|
53
|
+
new FlowlayoutItem('World'),
|
|
54
|
+
new FlowlayoutItem('Flowlayout'),
|
|
55
|
+
new FlowlayoutItem('New Item'),
|
|
56
|
+
new FlowlayoutItem('Hello'),
|
|
57
|
+
new FlowlayoutItem('World'),
|
|
58
|
+
new FlowlayoutItem('FlowlayoutFlowlayoutFlowlayout'),
|
|
59
|
+
new FlowlayoutItem('New Item'),
|
|
60
|
+
new FlowlayoutItem('Hello'),
|
|
61
|
+
new FlowlayoutItem('World'),
|
|
62
|
+
new FlowlayoutItem('FlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayout'),
|
|
63
|
+
new FlowlayoutItem('New Item'),
|
|
64
|
+
new FlowlayoutItem('Hello'),
|
|
65
|
+
new FlowlayoutItem('World'),
|
|
66
|
+
new FlowlayoutItem('FlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayout'),
|
|
67
|
+
new FlowlayoutItem('New Item'),
|
|
68
|
+
];
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
},
|
|
73
|
+
views: [flowlayout.definition]
|
|
74
|
+
});
|
package/index.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export * from './components/artificial-flowlayout';
|
|
2
1
|
export * from './components/base';
|
|
3
2
|
export * from './components/custom-navigation-bar';
|
|
4
3
|
export * from './components/dynamic-itemsize-matrix';
|
|
5
4
|
export * from './components/dynamic-preference-listview';
|
|
6
5
|
export * from './components/dynamic-rowheight-list';
|
|
7
6
|
export * from './components/enhanced-imageview';
|
|
7
|
+
export * from './components/flowlayout';
|
|
8
8
|
export * from './components/image-pager';
|
|
9
9
|
export * from './components/page-control';
|
|
10
10
|
export * from './components/pageviewer-titlebar';
|
|
@@ -36,7 +36,6 @@ export * from './components/dialogs/dialog-sheet';
|
|
|
36
36
|
export * from './components/dialogs/form-dialog';
|
|
37
37
|
export * from './components/dialogs/list-dialog';
|
|
38
38
|
export * from './components/dialogs/text-dialog';
|
|
39
|
-
export * from './components/spinners/loading-double-rings';
|
|
40
39
|
export * from './components/spinners/loading-dual-ring';
|
|
41
40
|
export * from './components/spinners/loading-wedges';
|
|
42
41
|
export * from './components/spinners/spinner-androidstyle';
|
package/package.json
CHANGED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { Flowlayout } from '../components/flowlayout';
|
|
2
|
+
import { Label } from '../components/single-views';
|
|
3
|
+
|
|
4
|
+
class FlowlayoutItem extends Label {
|
|
5
|
+
private _text: string;
|
|
6
|
+
constructor(text: string) {
|
|
7
|
+
super({
|
|
8
|
+
props: {
|
|
9
|
+
text: text,
|
|
10
|
+
borderWidth: 1,
|
|
11
|
+
},
|
|
12
|
+
layout: $layout.fill
|
|
13
|
+
});
|
|
14
|
+
this._text = text;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
itemWidth() {
|
|
18
|
+
return this._text.length * 10;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const flowlayout = new Flowlayout({
|
|
23
|
+
props: {
|
|
24
|
+
items: [new FlowlayoutItem('Hello'), new FlowlayoutItem('World'), new FlowlayoutItem('Flowlayout')],
|
|
25
|
+
spacing: 10,
|
|
26
|
+
itemHeight: 30,
|
|
27
|
+
fixedRows: 2,
|
|
28
|
+
fixedHeight: true,
|
|
29
|
+
menu: {
|
|
30
|
+
items: [{
|
|
31
|
+
symbol: "plus",
|
|
32
|
+
handler: sender => console.log("here")
|
|
33
|
+
}]
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
layout: (make, view) => {
|
|
37
|
+
make.left.right.inset(10);
|
|
38
|
+
make.top.inset(100);
|
|
39
|
+
make.height.equalTo(70);
|
|
40
|
+
},
|
|
41
|
+
events: {
|
|
42
|
+
didSelect: (sender, index, item) =>{
|
|
43
|
+
$ui.alert(item.view.text);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
$ui.render({
|
|
49
|
+
props: {
|
|
50
|
+
navButtons:[
|
|
51
|
+
{
|
|
52
|
+
symbol: "plus",
|
|
53
|
+
handler: () => {
|
|
54
|
+
flowlayout.items = [
|
|
55
|
+
new FlowlayoutItem('Hello'),
|
|
56
|
+
new FlowlayoutItem('World'),
|
|
57
|
+
new FlowlayoutItem('Flowlayout'),
|
|
58
|
+
new FlowlayoutItem('New Item'),
|
|
59
|
+
new FlowlayoutItem('Hello'),
|
|
60
|
+
new FlowlayoutItem('World'),
|
|
61
|
+
new FlowlayoutItem('FlowlayoutFlowlayoutFlowlayout'),
|
|
62
|
+
new FlowlayoutItem('New Item'),
|
|
63
|
+
new FlowlayoutItem('Hello'),
|
|
64
|
+
new FlowlayoutItem('World'),
|
|
65
|
+
new FlowlayoutItem('FlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayout'),
|
|
66
|
+
new FlowlayoutItem('New Item'),
|
|
67
|
+
new FlowlayoutItem('Hello'),
|
|
68
|
+
new FlowlayoutItem('World'),
|
|
69
|
+
new FlowlayoutItem('FlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayoutFlowlayout'),
|
|
70
|
+
new FlowlayoutItem('New Item'),
|
|
71
|
+
];
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
],
|
|
75
|
+
},
|
|
76
|
+
views: [flowlayout.definition]
|
|
77
|
+
});
|