@gisce/ooui 0.15.0 → 0.16.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/dist/Notebook.d.ts +7 -0
- package/dist/Notebook.js +22 -0
- package/dist/Notebook.js.map +1 -1
- package/package.json +1 -1
- package/src/Notebook.ts +19 -0
- package/src/spec/Form.spec.ts +5 -0
- package/src/spec/Notebook.spec.ts +25 -0
package/dist/Notebook.d.ts
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
import ContainerWidget from "./ContainerWidget";
|
|
2
|
+
import Page from "./Page";
|
|
3
|
+
export declare type TabPosition = "top" | "bottom" | "left" | "right";
|
|
2
4
|
declare class Notebook extends ContainerWidget {
|
|
3
5
|
static _defaultColspan: number;
|
|
4
6
|
static get defaultColspan(): number;
|
|
5
7
|
static set defaultColspan(value: number);
|
|
8
|
+
_tabPosition: TabPosition;
|
|
9
|
+
get tabPosition(): TabPosition;
|
|
10
|
+
set tabPosition(value: TabPosition);
|
|
11
|
+
_pages: Page[];
|
|
12
|
+
get pages(): Page[];
|
|
6
13
|
constructor(props: any);
|
|
7
14
|
}
|
|
8
15
|
export default Notebook;
|
package/dist/Notebook.js
CHANGED
|
@@ -16,11 +16,16 @@ var Notebook = /** @class */ (function (_super) {
|
|
|
16
16
|
__extends(Notebook, _super);
|
|
17
17
|
function Notebook(props) {
|
|
18
18
|
var _this = _super.call(this, props) || this;
|
|
19
|
+
_this._tabPosition = "top";
|
|
20
|
+
_this._pages = [];
|
|
19
21
|
_this.colspan = Notebook._defaultColspan;
|
|
20
22
|
if (props) {
|
|
21
23
|
if (props.colspan) {
|
|
22
24
|
_this.colspan = props.colspan;
|
|
23
25
|
}
|
|
26
|
+
if (props.tabpos) {
|
|
27
|
+
_this._tabPosition = props.tabpos;
|
|
28
|
+
}
|
|
24
29
|
}
|
|
25
30
|
return _this;
|
|
26
31
|
}
|
|
@@ -34,6 +39,23 @@ var Notebook = /** @class */ (function (_super) {
|
|
|
34
39
|
enumerable: false,
|
|
35
40
|
configurable: true
|
|
36
41
|
});
|
|
42
|
+
Object.defineProperty(Notebook.prototype, "tabPosition", {
|
|
43
|
+
get: function () {
|
|
44
|
+
return this._tabPosition;
|
|
45
|
+
},
|
|
46
|
+
set: function (value) {
|
|
47
|
+
this._tabPosition = value;
|
|
48
|
+
},
|
|
49
|
+
enumerable: false,
|
|
50
|
+
configurable: true
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(Notebook.prototype, "pages", {
|
|
53
|
+
get: function () {
|
|
54
|
+
return this._container.rows.map(function (r) { return r[0]; });
|
|
55
|
+
},
|
|
56
|
+
enumerable: false,
|
|
57
|
+
configurable: true
|
|
58
|
+
});
|
|
37
59
|
Notebook._defaultColspan = 3;
|
|
38
60
|
return Notebook;
|
|
39
61
|
}(ContainerWidget));
|
package/dist/Notebook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notebook.js","sourceRoot":"","sources":["../src/Notebook.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Notebook.js","sourceRoot":"","sources":["../src/Notebook.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAKhD;IAAuB,4BAAe;IAsBpC,kBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SAWb;QAzBD,kBAAY,GAAgB,KAAK,CAAC;QAQlC,YAAM,GAAW,EAAE,CAAC;QAOlB,KAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,eAAe,CAAC;QAExC,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;aAC9B;YACD,IAAI,KAAK,CAAC,MAAM,EAAE;gBAChB,KAAI,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;aAClC;SACF;;IACH,CAAC;IAhCD,sBAAW,0BAAc;aAAzB;YACE,OAAO,QAAQ,CAAC,eAAe,CAAC;QAClC,CAAC;aACD,UAA0B,KAAa;YACrC,QAAQ,CAAC,eAAe,GAAG,KAAK,CAAC;QACnC,CAAC;;;OAHA;IAMD,sBAAI,iCAAW;aAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;aACD,UAAgB,KAAkB;YAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;;;OAHA;IAMD,sBAAI,2BAAK;aAAT;YACE,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,CAAC,EAAJ,CAAI,CAAW,CAAC;QACvD,CAAC;;;OAAA;IAnBM,wBAAe,GAAW,CAAC,CAAC;IAkCrC,eAAC;CAAA,AAnCD,CAAuB,eAAe,GAmCrC;AAED,eAAe,QAAQ,CAAC"}
|
package/package.json
CHANGED
package/src/Notebook.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import ContainerWidget from "./ContainerWidget";
|
|
2
|
+
import Page from "./Page";
|
|
3
|
+
|
|
4
|
+
export type TabPosition = "top" | "bottom" | "left" | "right";
|
|
2
5
|
|
|
3
6
|
class Notebook extends ContainerWidget {
|
|
4
7
|
static _defaultColspan: number = 3;
|
|
@@ -9,6 +12,19 @@ class Notebook extends ContainerWidget {
|
|
|
9
12
|
Notebook._defaultColspan = value;
|
|
10
13
|
}
|
|
11
14
|
|
|
15
|
+
_tabPosition: TabPosition = "top";
|
|
16
|
+
get tabPosition(): TabPosition {
|
|
17
|
+
return this._tabPosition;
|
|
18
|
+
}
|
|
19
|
+
set tabPosition(value: TabPosition) {
|
|
20
|
+
this._tabPosition = value;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
_pages: Page[] = [];
|
|
24
|
+
get pages(): Page[] {
|
|
25
|
+
return this._container.rows.map(r => r[0]) as Page[];
|
|
26
|
+
}
|
|
27
|
+
|
|
12
28
|
constructor(props: any) {
|
|
13
29
|
super(props);
|
|
14
30
|
this.colspan = Notebook._defaultColspan;
|
|
@@ -17,6 +33,9 @@ class Notebook extends ContainerWidget {
|
|
|
17
33
|
if (props.colspan) {
|
|
18
34
|
this.colspan = props.colspan;
|
|
19
35
|
}
|
|
36
|
+
if (props.tabpos) {
|
|
37
|
+
this._tabPosition = props.tabpos;
|
|
38
|
+
}
|
|
20
39
|
}
|
|
21
40
|
}
|
|
22
41
|
}
|
package/src/spec/Form.spec.ts
CHANGED
|
@@ -250,6 +250,10 @@ describe("A Form", () => {
|
|
|
250
250
|
<page string="Page1" col="8">
|
|
251
251
|
<field colspan="16" name="char1" />
|
|
252
252
|
</page>
|
|
253
|
+
<page string="Page2">
|
|
254
|
+
</page>
|
|
255
|
+
<page string="Page3">
|
|
256
|
+
</page>
|
|
253
257
|
</notebook>
|
|
254
258
|
</form>`;
|
|
255
259
|
const form = new Form(fields);
|
|
@@ -259,6 +263,7 @@ describe("A Form", () => {
|
|
|
259
263
|
expect(notebook).toBeInstanceOf(Notebook);
|
|
260
264
|
const page = notebook.container.rows[0][0] as Page;
|
|
261
265
|
expect(page).toBeInstanceOf(Page);
|
|
266
|
+
expect(notebook.pages).toHaveLength(3);
|
|
262
267
|
const labelField = page.container.rows[0][0];
|
|
263
268
|
expect(labelField).toBeInstanceOf(Label);
|
|
264
269
|
const charField = page.container.rows[0][1];
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import WidgetFactory from "../WidgetFactory";
|
|
2
|
+
|
|
3
|
+
describe("A Notebook", () => {
|
|
4
|
+
it("should have tabs position default to top", () => {
|
|
5
|
+
const widgetFactory = new WidgetFactory();
|
|
6
|
+
const props = {
|
|
7
|
+
string: "Page 1",
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const widget = widgetFactory.createWidget("notebook", props);
|
|
11
|
+
expect(widget.tabPosition).toBe("top")
|
|
12
|
+
});
|
|
13
|
+
it("should allow position to bottom, left, right", () => {
|
|
14
|
+
const widgetFactory = new WidgetFactory();
|
|
15
|
+
["bottom", "left", "rigth"].map(pos => {
|
|
16
|
+
const props = {
|
|
17
|
+
string: "Page 1",
|
|
18
|
+
tabpos: pos
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const widget = widgetFactory.createWidget("notebook", props);
|
|
22
|
+
expect(widget.tabPosition).toBe(pos)
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
});
|