jpf-mobx 1.0.21 → 1.0.22
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/controls/custom/LabeledControl/LabeledControl.js +6 -6
- package/dist/controls/custom/LabeledControl/LabeledControl.js.map +1 -1
- package/dist/controls/html/Div/Div.d.ts +5 -5
- package/dist/controls/html/Div/Div.js +8 -8
- package/dist/controls/html/Div/Div.js.map +1 -1
- package/dist/controls/html/Image/Image.d.ts +5 -5
- package/dist/controls/html/Image/Image.js +4 -4
- package/dist/controls/html/Image/Image.js.map +1 -1
- package/dist/controls/html/Span/Span.d.ts +5 -5
- package/dist/controls/html/Span/Span.js +3 -3
- package/dist/controls/html/Span/Span.js.map +1 -1
- package/dist/controls/kendo/Grid/Grid.js +5 -3
- package/dist/controls/kendo/Grid/Grid.js.map +1 -1
- package/dist/framework/element.d.ts +3 -3
- package/dist/framework/element.js +16 -13
- package/dist/framework/element.js.map +1 -1
- package/dist/framework/properties.d.ts +1 -1
- package/dist/framework/properties.js +17 -6
- package/dist/framework/properties.js.map +1 -1
- package/package.json +1 -1
- package/src/controls/custom/LabeledControl/LabeledControl.ts +7 -5
- package/src/controls/html/Div/Div.ts +12 -11
- package/src/controls/html/Image/Image.ts +9 -8
- package/src/controls/html/Span/Span.ts +8 -7
- package/src/controls/kendo/Grid/Grid.ts +7 -8
- package/src/framework/element.ts +21 -20
- package/src/framework/properties.ts +20 -8
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { Properties, extendProperties } from "../../../framework/properties";
|
|
2
2
|
import { Element, registerElement } from "../../../framework/element";
|
|
3
|
-
import {
|
|
3
|
+
import { DivElement } from "../../html/Div/Div";
|
|
4
4
|
export class LabeledControlElement extends Element {
|
|
5
5
|
constructor(properties) {
|
|
6
6
|
super({
|
|
7
7
|
tagName: "div",
|
|
8
|
-
properties: extendProperties({
|
|
9
|
-
|
|
8
|
+
properties: extendProperties(properties, {
|
|
9
|
+
elementType: "LabeledControl",
|
|
10
10
|
style: {
|
|
11
11
|
display: "flex",
|
|
12
12
|
alignItems: "center"
|
|
13
13
|
},
|
|
14
14
|
classNames: ["o-labled-control"]
|
|
15
|
-
},
|
|
15
|
+
}, true),
|
|
16
16
|
children: [
|
|
17
|
-
new
|
|
17
|
+
new DivElement(extendProperties(properties.labelProperties, {
|
|
18
18
|
viewType: "Label"
|
|
19
|
-
})),
|
|
19
|
+
}, true)),
|
|
20
20
|
properties.element
|
|
21
21
|
]
|
|
22
22
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LabeledControl.js","sourceRoot":"","sources":["../../../../src/controls/custom/LabeledControl/LabeledControl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AACzF,OAAO,EAAE,OAAO,EAAY,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"LabeledControl.js","sourceRoot":"","sources":["../../../../src/controls/custom/LabeledControl/LabeledControl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AACzF,OAAO,EAAE,OAAO,EAAY,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAOhD,MAAM,OAAO,qBAAsB,SAAQ,OAA8B;IACrE,YAAY,UAAiC;QACzC,KAAK,CACD;YACI,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,gBAAgB,CACxB,UAAU,EACV;gBACI,WAAW,EAAE,gBAAgB;gBAC7B,KAAK,EAAE;oBACH,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE,QAAQ;iBACvB;gBACD,UAAU,EAAE,CAAC,kBAAkB,CAAC;aACnC,EACD,IAAI,CACP;YACD,QAAQ,EAAE;gBACN,IAAI,UAAU,CACV,gBAAgB,CACZ,UAAU,CAAC,eAAe,EAC1B;oBACI,QAAQ,EAAE,OAAO;iBACpB,EACD,IAAI,CACP,CACJ;gBACD,UAAU,CAAC,OAAO;aACrB;SACJ,CACJ,CAAC;IACN,CAAC;CACJ;AAED,MAAM,UAAU,kBAAkB,CAAC,UAAiC;IAChE,OAAO,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,OAAO,wBAAyB,SAAQ,UAAU;IACpD,YAAY,UAAiC;QACzC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;IACD,eAAe,CAAa;IAC5B,OAAO,CAAW;CACrB;AAED,eAAe,CACX,wBAAwB,EACxB,qBAAqB,CACxB,CAAA"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { Element, IElement } from "../../../framework/element";
|
|
2
2
|
import { IProperties, Properties } from "../../../framework/properties";
|
|
3
3
|
import { Subscribable } from "../../../framework/observable";
|
|
4
|
-
export interface
|
|
4
|
+
export interface IDivProperties extends IProperties {
|
|
5
5
|
children?: Array<IElement> | Subscribable<Array<IElement>>;
|
|
6
6
|
}
|
|
7
|
-
export declare class
|
|
8
|
-
constructor(properties:
|
|
7
|
+
export declare class DivElement extends Element<IDivProperties> {
|
|
8
|
+
constructor(properties: IDivProperties);
|
|
9
9
|
}
|
|
10
|
-
export declare function
|
|
11
|
-
export declare class
|
|
10
|
+
export declare function divElement(properties: IDivProperties): DivElement;
|
|
11
|
+
export declare class DivProperties extends Properties implements IDivProperties {
|
|
12
12
|
constructor(properties: DivProperties);
|
|
13
13
|
children?: Array<IElement> | Subscribable<Array<IElement>>;
|
|
14
14
|
}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { Element, registerElement } from "../../../framework/element";
|
|
2
2
|
import { extendProperties, Properties } from "../../../framework/properties";
|
|
3
|
-
export class
|
|
3
|
+
export class DivElement extends Element {
|
|
4
4
|
constructor(properties) {
|
|
5
5
|
super({
|
|
6
6
|
tagName: "div",
|
|
7
|
-
properties: extendProperties({
|
|
8
|
-
|
|
9
|
-
},
|
|
7
|
+
properties: extendProperties(properties, {
|
|
8
|
+
elementType: "Div"
|
|
9
|
+
}, true),
|
|
10
10
|
children: properties.children
|
|
11
11
|
});
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
export function
|
|
15
|
-
return new
|
|
14
|
+
export function divElement(properties) {
|
|
15
|
+
return new DivElement(properties);
|
|
16
16
|
}
|
|
17
|
-
export class
|
|
17
|
+
export class DivProperties extends Properties {
|
|
18
18
|
constructor(properties) {
|
|
19
19
|
super();
|
|
20
20
|
this.setProperties(this, properties);
|
|
21
21
|
}
|
|
22
22
|
children;
|
|
23
23
|
}
|
|
24
|
-
registerElement(
|
|
24
|
+
registerElement(DivProperties.prototype.constructor, DivElement);
|
|
25
25
|
//# sourceMappingURL=Div.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Div.js","sourceRoot":"","sources":["../../../../src/controls/html/Div/Div.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,
|
|
1
|
+
{"version":3,"file":"Div.js","sourceRoot":"","sources":["../../../../src/controls/html/Div/Div.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAe,gBAAgB,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAO1F,MAAM,OAAO,UAAW,SAAQ,OAAuB;IACnD,YAAY,UAA0B;QAClC,KAAK,CACD;YACI,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,gBAAgB,CACxB,UAAU,EACV;gBACI,WAAW,EAAE,KAAK;aACrB,EACD,IAAI,CACP;YACD,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAChC,CACJ,CAAC;IACN,CAAC;CACJ;AAED,MAAM,UAAU,UAAU,CAAC,UAA0B;IACjD,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,OAAO,aAAc,SAAQ,UAAU;IACzC,YAAY,UAAyB;QACjC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;IACD,QAAQ,CAAmD;CAC9D;AAED,eAAe,CACX,aAAa,CAAC,SAAS,CAAC,WAAW,EACnC,UAAU,CACb,CAAA"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Element } from "../../../framework/element";
|
|
2
2
|
import { Properties, IProperties } from "../../../framework/properties";
|
|
3
3
|
import { Subscribable } from "../../../framework/observable";
|
|
4
|
-
export interface
|
|
4
|
+
export interface IImageProperties extends IProperties {
|
|
5
5
|
src: string | Subscribable<string>;
|
|
6
6
|
alt: string | Subscribable<string>;
|
|
7
7
|
}
|
|
8
|
-
export declare class ImageElement extends Element<
|
|
9
|
-
constructor(properties:
|
|
8
|
+
export declare class ImageElement extends Element<IImageProperties> {
|
|
9
|
+
constructor(properties: IImageProperties);
|
|
10
10
|
}
|
|
11
|
-
export declare function imageElement(properties:
|
|
12
|
-
export declare class ImageProperties extends Properties implements
|
|
11
|
+
export declare function imageElement(properties: IImageProperties): ImageElement;
|
|
12
|
+
export declare class ImageProperties extends Properties implements IImageProperties {
|
|
13
13
|
constructor(properties: ImageProperties);
|
|
14
14
|
src: string | Subscribable<string>;
|
|
15
15
|
alt: string | Subscribable<string>;
|
|
@@ -4,13 +4,13 @@ export class ImageElement extends Element {
|
|
|
4
4
|
constructor(properties) {
|
|
5
5
|
super({
|
|
6
6
|
tagName: "img",
|
|
7
|
-
properties: extendProperties({
|
|
8
|
-
|
|
7
|
+
properties: extendProperties(properties, {
|
|
8
|
+
elementType: "Image",
|
|
9
9
|
attributes: {
|
|
10
10
|
src: properties.src,
|
|
11
11
|
alt: properties.alt
|
|
12
12
|
}
|
|
13
|
-
},
|
|
13
|
+
}, true)
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
}
|
|
@@ -25,5 +25,5 @@ export class ImageProperties extends Properties {
|
|
|
25
25
|
src;
|
|
26
26
|
alt;
|
|
27
27
|
}
|
|
28
|
-
registerElement(ImageProperties, ImageElement);
|
|
28
|
+
registerElement(ImageProperties.prototype.constructor, ImageElement);
|
|
29
29
|
//# sourceMappingURL=Image.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../../src/controls/html/Image/Image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQ1F,MAAM,OAAO,YAAa,SAAQ,
|
|
1
|
+
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../../src/controls/html/Image/Image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQ1F,MAAM,OAAO,YAAa,SAAQ,OAAyB;IACvD,YAAY,UAA4B;QACpC,KAAK,CACD;YACI,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,gBAAgB,CACxB,UAAU,EACV;gBACI,WAAW,EAAE,OAAO;gBACpB,UAAU,EAAE;oBACR,GAAG,EAAE,UAAU,CAAC,GAAG;oBACnB,GAAG,EAAE,UAAU,CAAC,GAAG;iBACtB;aACJ,EACD,IAAI,CACP;SACJ,CACJ,CAAC;IACN,CAAC;CACJ;AAED,MAAM,UAAU,YAAY,CAAC,UAA4B;IACrD,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,OAAO,eAAgB,SAAQ,UAAU;IAC3C,YAAY,UAA2B;QACnC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;IACD,GAAG,CAAgC;IACnC,GAAG,CAAgC;CACtC;AAED,eAAe,CACX,eAAe,CAAC,SAAS,CAAC,WAAW,EACrC,YAAY,CACf,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Element } from "../../../framework/element";
|
|
2
2
|
import { Properties, IProperties } from "../../../framework/properties";
|
|
3
|
-
export interface
|
|
3
|
+
export interface ISpanProperties extends IProperties {
|
|
4
4
|
}
|
|
5
|
-
export declare class SpanElement extends Element<
|
|
6
|
-
constructor(properties:
|
|
5
|
+
export declare class SpanElement extends Element<ISpanProperties> {
|
|
6
|
+
constructor(properties: ISpanProperties);
|
|
7
7
|
}
|
|
8
|
-
export declare function spanElement(properties:
|
|
9
|
-
export declare class SpanProperties extends Properties implements
|
|
8
|
+
export declare function spanElement(properties: ISpanProperties): SpanElement;
|
|
9
|
+
export declare class SpanProperties extends Properties implements ISpanProperties {
|
|
10
10
|
constructor(properties: SpanProperties);
|
|
11
11
|
}
|
|
@@ -4,9 +4,9 @@ export class SpanElement extends Element {
|
|
|
4
4
|
constructor(properties) {
|
|
5
5
|
super({
|
|
6
6
|
tagName: "span",
|
|
7
|
-
properties: extendProperties({
|
|
7
|
+
properties: extendProperties(properties, {
|
|
8
8
|
elementType: "Span"
|
|
9
|
-
},
|
|
9
|
+
}, true)
|
|
10
10
|
});
|
|
11
11
|
}
|
|
12
12
|
}
|
|
@@ -19,5 +19,5 @@ export class SpanProperties extends Properties {
|
|
|
19
19
|
this.setProperties(this, properties);
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
registerElement(SpanProperties, SpanElement);
|
|
22
|
+
registerElement(SpanProperties.prototype.constructor, SpanElement);
|
|
23
23
|
//# sourceMappingURL=Span.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Span.js","sourceRoot":"","sources":["../../../../src/controls/html/Span/Span.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAM1F,MAAM,OAAO,WAAY,SAAQ,
|
|
1
|
+
{"version":3,"file":"Span.js","sourceRoot":"","sources":["../../../../src/controls/html/Span/Span.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAM1F,MAAM,OAAO,WAAY,SAAQ,OAAwB;IACrD,YAAY,UAA2B;QACnC,KAAK,CACD;YACI,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,gBAAgB,CACxB,UAAU,EACV;gBACI,WAAW,EAAE,MAAM;aACtB,EACD,IAAI,CACP;SACJ,CACJ,CAAC;IACN,CAAC;CACJ;AAED,MAAM,UAAU,WAAW,CAAC,UAA2B;IACnD,OAAO,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,UAAU;IAC1C,YAAY,UAA0B;QAClC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;CACJ;AAED,eAAe,CACX,cAAc,CAAC,SAAS,CAAC,WAAW,EACpC,WAAW,CACd,CAAC"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import * as kendo from "@progress/kendo-ui/js/kendo.grid.js";
|
|
2
2
|
import { Element, registerElement } from "../../../framework/element";
|
|
3
|
-
import { Properties } from "../../../framework/properties";
|
|
3
|
+
import { Properties, extendProperties } from "../../../framework/properties";
|
|
4
4
|
import { unwrap, isSubscribable, reaction } from "../../../framework/observable";
|
|
5
5
|
export class GridElement extends Element {
|
|
6
6
|
constructor(properties) {
|
|
7
7
|
super({
|
|
8
8
|
tagName: "div",
|
|
9
|
-
properties:
|
|
9
|
+
properties: extendProperties({
|
|
10
|
+
elementType: "KendoGrid"
|
|
11
|
+
}, properties)
|
|
10
12
|
});
|
|
11
13
|
}
|
|
12
14
|
grid;
|
|
@@ -212,5 +214,5 @@ export class GridProperties extends Properties {
|
|
|
212
214
|
onGridChange;
|
|
213
215
|
onRowContextMenu;
|
|
214
216
|
}
|
|
215
|
-
registerElement(GridProperties, GridElement);
|
|
217
|
+
registerElement(GridProperties.prototype.constructor, GridElement);
|
|
216
218
|
//# sourceMappingURL=Grid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Grid.js","sourceRoot":"","sources":["../../../../src/controls/kendo/Grid/Grid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"Grid.js","sourceRoot":"","sources":["../../../../src/controls/kendo/Grid/Grid.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,7 +39,7 @@ export interface ElementOptions<TProperties> {
|
|
|
39
39
|
children?: Array<IElement> | Subscribable<Array<IElement>>;
|
|
40
40
|
}
|
|
41
41
|
export declare class Element<TProperties = any> implements IElement {
|
|
42
|
-
constructor(
|
|
42
|
+
constructor(options: ElementOptions<TProperties>);
|
|
43
43
|
private readonly tagName;
|
|
44
44
|
private readonly optionsChildren;
|
|
45
45
|
private children;
|
|
@@ -56,7 +56,7 @@ export declare class Element<TProperties = any> implements IElement {
|
|
|
56
56
|
dispose(): void;
|
|
57
57
|
focus(options?: FocusOptions): void;
|
|
58
58
|
}
|
|
59
|
-
export declare function registerElement(
|
|
60
|
-
export declare function getElement(
|
|
59
|
+
export declare function registerElement(constructor: Function, element: any): void;
|
|
60
|
+
export declare function getElement(properties: Properties): Element;
|
|
61
61
|
export declare function render(viewModel: Properties): HTMLElement;
|
|
62
62
|
export {};
|
|
@@ -30,11 +30,11 @@ const svgTags = {
|
|
|
30
30
|
};
|
|
31
31
|
const svgNamespace = "http://www.w3.org/2000/svg";
|
|
32
32
|
export class Element {
|
|
33
|
-
constructor(
|
|
34
|
-
this.tagName =
|
|
35
|
-
this.properties =
|
|
36
|
-
this.optionsChildren =
|
|
37
|
-
this.children = unwrap(
|
|
33
|
+
constructor(options) {
|
|
34
|
+
this.tagName = options.tagName;
|
|
35
|
+
this.properties = options.properties;
|
|
36
|
+
this.optionsChildren = options.children;
|
|
37
|
+
this.children = unwrap(options.children);
|
|
38
38
|
}
|
|
39
39
|
tagName;
|
|
40
40
|
optionsChildren;
|
|
@@ -112,7 +112,7 @@ export class Element {
|
|
|
112
112
|
throw "The build method of this UiElement has not been defined";
|
|
113
113
|
}
|
|
114
114
|
dispose() {
|
|
115
|
-
|
|
115
|
+
const properties = this.properties;
|
|
116
116
|
console.log("Dispose element " + properties.elementType);
|
|
117
117
|
for (let disposer of this.disposers) {
|
|
118
118
|
disposer();
|
|
@@ -128,14 +128,17 @@ export class Element {
|
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
var elementDictionary = new Map();
|
|
131
|
-
export function registerElement(
|
|
132
|
-
elementDictionary.set(
|
|
131
|
+
export function registerElement(constructor, element) {
|
|
132
|
+
elementDictionary.set(constructor, element);
|
|
133
133
|
}
|
|
134
|
-
export function getElement(
|
|
135
|
-
if (
|
|
136
|
-
const
|
|
137
|
-
if (
|
|
138
|
-
return new
|
|
134
|
+
export function getElement(properties) {
|
|
135
|
+
if (properties && properties.constructor) {
|
|
136
|
+
const element = elementDictionary.get(properties.constructor);
|
|
137
|
+
if (element.prototype) {
|
|
138
|
+
return new element(properties);
|
|
139
|
+
}
|
|
140
|
+
if (typeof element === "function") {
|
|
141
|
+
return element(properties);
|
|
139
142
|
}
|
|
140
143
|
}
|
|
141
144
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../src/framework/element.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,CAAC;AACf,OAAO,EAAgB,MAAM,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAA2B,aAAa,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAqB,MAAM,MAAM,CAAC;AAEnD,MAAM,QAAQ,GAAG;IACb,CAAC,EAAE,IAAI;IACP,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;CACjB,CAAA;AAED,MAAM,OAAO,GAAG;IACZ,CAAC,EAAE,IAAI;IACP,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,IAAI;CACtB,CAAA;AAID,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAclD,MAAM,OAAO,OAAO;IAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../src/framework/element.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,5 +37,5 @@ export declare abstract class Properties implements IProperties {
|
|
|
37
37
|
elementType?: string;
|
|
38
38
|
focused?: boolean | Subscribable<boolean>;
|
|
39
39
|
}
|
|
40
|
-
export declare function extendProperties<
|
|
40
|
+
export declare function extendProperties<TTarget = IProperties, TSource = IProperties>(target: TTarget, source: TSource, overwriteExisting?: boolean): TTarget;
|
|
41
41
|
export declare function applyBindings(properties: IProperties, element: HTMLElement, subscriptions: Array<IReactionDisposer>): void;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { userAgent } from "./userAgent";
|
|
2
2
|
import { mouseEvents, touchEvents, isGlobalEvent } from "./event";
|
|
3
|
-
import { extend } from "jquery";
|
|
4
3
|
import { unwrap, executeHandlerOnObject } from "./observable";
|
|
5
4
|
import { autorun } from "mobx";
|
|
6
5
|
export function handleWebSocketMessage(object, message) {
|
|
@@ -35,8 +34,20 @@ export class Properties {
|
|
|
35
34
|
elementType;
|
|
36
35
|
focused;
|
|
37
36
|
}
|
|
38
|
-
export function extendProperties(target, source) {
|
|
39
|
-
|
|
37
|
+
export function extendProperties(target, source, overwriteExisting = false) {
|
|
38
|
+
if (target && source) {
|
|
39
|
+
Object.keys(source).forEach((key) => {
|
|
40
|
+
if (overwriteExisting) {
|
|
41
|
+
target[key] = source[key];
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
if (!target.hasOwnProperty(key)) {
|
|
45
|
+
target[key] = source[key];
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return target;
|
|
40
51
|
}
|
|
41
52
|
export function applyBindings(properties, element, subscriptions) {
|
|
42
53
|
element.setAttribute("elementtype", properties.elementType || "Element");
|
|
@@ -140,10 +151,10 @@ function applyDisabledToElement(disabled, element) {
|
|
|
140
151
|
element.removeAttribute("disabled");
|
|
141
152
|
}
|
|
142
153
|
}
|
|
143
|
-
function applyEventListenersToElement(
|
|
154
|
+
function applyEventListenersToElement(properties, element) {
|
|
144
155
|
const clickEventListeners = new Array();
|
|
145
156
|
const doubleClickEventListeners = new Array();
|
|
146
|
-
Object.entries(
|
|
157
|
+
Object.entries(properties.eventListeners).forEach((entry) => {
|
|
147
158
|
var eventName = entry[0];
|
|
148
159
|
var eventListener = entry[1];
|
|
149
160
|
if (eventName === "click") {
|
|
@@ -175,7 +186,7 @@ function applyEventListenersToElement(viewModel, element) {
|
|
|
175
186
|
return;
|
|
176
187
|
}
|
|
177
188
|
}
|
|
178
|
-
eventListener.listener.call(
|
|
189
|
+
eventListener.listener.call(properties, event);
|
|
179
190
|
}, eventListener.options, element);
|
|
180
191
|
}
|
|
181
192
|
else if (mouseEvents[eventName] && userAgent.device.supportsMouseEvents) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../src/framework/properties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAmF,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../src/framework/properties.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Properties, IProperties, extendProperties } from "../../../framework/properties"
|
|
2
2
|
import { Element, IElement, registerElement } from "../../../framework/element";
|
|
3
|
-
import {
|
|
3
|
+
import { DivElement } from "../../html/Div/Div";
|
|
4
4
|
|
|
5
5
|
export interface LabeledViewProperties extends IProperties {
|
|
6
6
|
labelProperties: Properties;
|
|
@@ -13,23 +13,25 @@ export class LabeledControlElement extends Element<LabeledViewProperties> {
|
|
|
13
13
|
{
|
|
14
14
|
tagName: "div",
|
|
15
15
|
properties: extendProperties(
|
|
16
|
+
properties,
|
|
16
17
|
{
|
|
17
|
-
|
|
18
|
+
elementType: "LabeledControl",
|
|
18
19
|
style: {
|
|
19
20
|
display: "flex",
|
|
20
21
|
alignItems: "center"
|
|
21
22
|
},
|
|
22
23
|
classNames: ["o-labled-control"]
|
|
23
24
|
},
|
|
24
|
-
|
|
25
|
+
true
|
|
25
26
|
),
|
|
26
27
|
children: [
|
|
27
|
-
new
|
|
28
|
+
new DivElement(
|
|
28
29
|
extendProperties(
|
|
29
30
|
properties.labelProperties,
|
|
30
31
|
{
|
|
31
32
|
viewType: "Label"
|
|
32
|
-
}
|
|
33
|
+
},
|
|
34
|
+
true
|
|
33
35
|
)
|
|
34
36
|
),
|
|
35
37
|
properties.element
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
import { Element, IElement, registerElement } from "../../../framework/element";
|
|
2
|
-
import { IProperties
|
|
2
|
+
import { IProperties, extendProperties, Properties } from "../../../framework/properties";
|
|
3
3
|
import { Subscribable } from "../../../framework/observable";
|
|
4
4
|
|
|
5
|
-
export interface
|
|
5
|
+
export interface IDivProperties extends IProperties {
|
|
6
6
|
children?: Array<IElement> | Subscribable<Array<IElement>>;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
export class
|
|
10
|
-
constructor(properties:
|
|
9
|
+
export class DivElement extends Element<IDivProperties> {
|
|
10
|
+
constructor(properties: IDivProperties) {
|
|
11
11
|
super(
|
|
12
12
|
{
|
|
13
13
|
tagName: "div",
|
|
14
14
|
properties: extendProperties(
|
|
15
|
+
properties,
|
|
15
16
|
{
|
|
16
|
-
|
|
17
|
+
elementType: "Div"
|
|
17
18
|
},
|
|
18
|
-
|
|
19
|
+
true
|
|
19
20
|
),
|
|
20
21
|
children: properties.children
|
|
21
22
|
},
|
|
@@ -23,11 +24,11 @@ export class DivView extends Element<DivProperties> {
|
|
|
23
24
|
}
|
|
24
25
|
}
|
|
25
26
|
|
|
26
|
-
export function
|
|
27
|
-
return new
|
|
27
|
+
export function divElement(properties: IDivProperties): DivElement {
|
|
28
|
+
return new DivElement(properties);
|
|
28
29
|
}
|
|
29
30
|
|
|
30
|
-
export class
|
|
31
|
+
export class DivProperties extends Properties implements IDivProperties {
|
|
31
32
|
constructor(properties: DivProperties) {
|
|
32
33
|
super();
|
|
33
34
|
this.setProperties(this, properties);
|
|
@@ -36,6 +37,6 @@ export class DivViewModel extends Properties implements DivProperties{
|
|
|
36
37
|
}
|
|
37
38
|
|
|
38
39
|
registerElement(
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
DivProperties.prototype.constructor,
|
|
41
|
+
DivElement
|
|
41
42
|
)
|
|
@@ -2,36 +2,37 @@
|
|
|
2
2
|
import { Properties, IProperties, extendProperties } from "../../../framework/properties";
|
|
3
3
|
import { Subscribable } from "../../../framework/observable";
|
|
4
4
|
|
|
5
|
-
export interface
|
|
5
|
+
export interface IImageProperties extends IProperties {
|
|
6
6
|
src: string | Subscribable<string>;
|
|
7
7
|
alt: string | Subscribable<string>;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
export class ImageElement extends Element<
|
|
11
|
-
constructor(properties:
|
|
10
|
+
export class ImageElement extends Element<IImageProperties> {
|
|
11
|
+
constructor(properties: IImageProperties) {
|
|
12
12
|
super(
|
|
13
13
|
{
|
|
14
14
|
tagName: "img",
|
|
15
15
|
properties: extendProperties(
|
|
16
|
+
properties,
|
|
16
17
|
{
|
|
17
|
-
|
|
18
|
+
elementType: "Image",
|
|
18
19
|
attributes: {
|
|
19
20
|
src: properties.src,
|
|
20
21
|
alt: properties.alt
|
|
21
22
|
}
|
|
22
23
|
},
|
|
23
|
-
|
|
24
|
+
true
|
|
24
25
|
)
|
|
25
26
|
}
|
|
26
27
|
);
|
|
27
28
|
}
|
|
28
29
|
}
|
|
29
30
|
|
|
30
|
-
export function imageElement(properties:
|
|
31
|
+
export function imageElement(properties: IImageProperties) {
|
|
31
32
|
return new ImageElement(properties);
|
|
32
33
|
}
|
|
33
34
|
|
|
34
|
-
export class ImageProperties extends Properties implements
|
|
35
|
+
export class ImageProperties extends Properties implements IImageProperties {
|
|
35
36
|
constructor(properties: ImageProperties) {
|
|
36
37
|
super();
|
|
37
38
|
this.setProperties(this, properties);
|
|
@@ -41,6 +42,6 @@ export class ImageProperties extends Properties implements ImageProperties{
|
|
|
41
42
|
}
|
|
42
43
|
|
|
43
44
|
registerElement(
|
|
44
|
-
ImageProperties,
|
|
45
|
+
ImageProperties.prototype.constructor,
|
|
45
46
|
ImageElement
|
|
46
47
|
);
|
|
@@ -1,31 +1,32 @@
|
|
|
1
1
|
import { Element, registerElement } from "../../../framework/element";
|
|
2
2
|
import { Properties, IProperties, extendProperties } from "../../../framework/properties";
|
|
3
3
|
|
|
4
|
-
export interface
|
|
4
|
+
export interface ISpanProperties extends IProperties {
|
|
5
5
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
export class SpanElement extends Element<
|
|
9
|
-
constructor(properties:
|
|
8
|
+
export class SpanElement extends Element<ISpanProperties> {
|
|
9
|
+
constructor(properties: ISpanProperties) {
|
|
10
10
|
super(
|
|
11
11
|
{
|
|
12
12
|
tagName: "span",
|
|
13
13
|
properties: extendProperties(
|
|
14
|
+
properties,
|
|
14
15
|
{
|
|
15
16
|
elementType: "Span"
|
|
16
17
|
},
|
|
17
|
-
|
|
18
|
+
true
|
|
18
19
|
)
|
|
19
20
|
}
|
|
20
21
|
);
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
24
|
|
|
24
|
-
export function spanElement(properties:
|
|
25
|
+
export function spanElement(properties: ISpanProperties) {
|
|
25
26
|
return new SpanElement(properties);
|
|
26
27
|
}
|
|
27
28
|
|
|
28
|
-
export class SpanProperties extends Properties implements
|
|
29
|
+
export class SpanProperties extends Properties implements ISpanProperties {
|
|
29
30
|
constructor(properties: SpanProperties) {
|
|
30
31
|
super();
|
|
31
32
|
this.setProperties(this, properties);
|
|
@@ -33,6 +34,6 @@ export class SpanProperties extends Properties implements SpanProperties {
|
|
|
33
34
|
}
|
|
34
35
|
|
|
35
36
|
registerElement(
|
|
36
|
-
SpanProperties,
|
|
37
|
+
SpanProperties.prototype.constructor,
|
|
37
38
|
SpanElement
|
|
38
39
|
);
|
|
@@ -29,13 +29,12 @@ export class GridElement<TItem = any> extends Element<IGridProperties<TItem>> {
|
|
|
29
29
|
super(
|
|
30
30
|
{
|
|
31
31
|
tagName: "div",
|
|
32
|
-
properties:
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
//)
|
|
32
|
+
properties: extendProperties(
|
|
33
|
+
{
|
|
34
|
+
elementType: "KendoGrid"
|
|
35
|
+
},
|
|
36
|
+
properties
|
|
37
|
+
)
|
|
39
38
|
}
|
|
40
39
|
);
|
|
41
40
|
}
|
|
@@ -361,6 +360,6 @@ export class GridProperties<TItem = any> extends Properties implements IGridProp
|
|
|
361
360
|
}
|
|
362
361
|
|
|
363
362
|
registerElement(
|
|
364
|
-
GridProperties,
|
|
363
|
+
GridProperties.prototype.constructor,
|
|
365
364
|
GridElement
|
|
366
365
|
);
|
package/src/framework/element.ts
CHANGED
|
@@ -48,11 +48,11 @@ export interface ElementOptions<TProperties> {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
export class Element<TProperties = any> implements IElement {
|
|
51
|
-
constructor(
|
|
52
|
-
this.tagName =
|
|
53
|
-
this.properties =
|
|
54
|
-
this.optionsChildren =
|
|
55
|
-
this.children = unwrap(
|
|
51
|
+
constructor(options: ElementOptions<TProperties>) {
|
|
52
|
+
this.tagName = options.tagName;
|
|
53
|
+
this.properties = options.properties;
|
|
54
|
+
this.optionsChildren = options.children;
|
|
55
|
+
this.children = unwrap(options.children);
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
// #region Private members
|
|
@@ -81,7 +81,7 @@ export class Element<TProperties = any> implements IElement {
|
|
|
81
81
|
protected readonly disposers = new Array<IReactionDisposer>();
|
|
82
82
|
|
|
83
83
|
protected build(): void {
|
|
84
|
-
applyBindings(this.properties, this.element, this.disposers);
|
|
84
|
+
applyBindings(this.properties as IProperties, this.element, this.disposers);
|
|
85
85
|
|
|
86
86
|
if (this.children) {
|
|
87
87
|
this.buildChildren();
|
|
@@ -171,8 +171,8 @@ export class Element<TProperties = any> implements IElement {
|
|
|
171
171
|
}
|
|
172
172
|
|
|
173
173
|
dispose(): void {
|
|
174
|
-
|
|
175
|
-
console.log("Dispose element " + properties.elementType)
|
|
174
|
+
const properties = this.properties as IProperties;
|
|
175
|
+
console.log("Dispose element " + properties.elementType);
|
|
176
176
|
|
|
177
177
|
for (let disposer of this.disposers) {
|
|
178
178
|
disposer();
|
|
@@ -192,22 +192,23 @@ export class Element<TProperties = any> implements IElement {
|
|
|
192
192
|
//#endregion
|
|
193
193
|
|
|
194
194
|
//#region View dictionary
|
|
195
|
-
var elementDictionary = new Map<
|
|
195
|
+
var elementDictionary = new Map<Function, any>();
|
|
196
196
|
|
|
197
|
-
export function registerElement(
|
|
198
|
-
elementDictionary.set(
|
|
197
|
+
export function registerElement(constructor: Function, element: any) {
|
|
198
|
+
elementDictionary.set(constructor, element);
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
export function getElement(properties: Properties): Element {
|
|
204
|
+
if (properties && properties.constructor) {
|
|
205
|
+
const element = elementDictionary.get(properties.constructor);
|
|
206
|
+
if (element.prototype) {
|
|
207
|
+
return new element(properties);
|
|
208
|
+
}
|
|
209
|
+
if (typeof element === "function") {
|
|
210
|
+
return element(properties);
|
|
207
211
|
}
|
|
208
|
-
//if (typeof view === "function") {
|
|
209
|
-
// return view(viewModel);
|
|
210
|
-
//}
|
|
211
212
|
}
|
|
212
213
|
return null;
|
|
213
214
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { userAgent } from "./userAgent";
|
|
2
2
|
import { EventListeners, UiElementEventMap, IEventListenerOptions, IGenericEventListener, mouseEvents, touchEvents, isGlobalEvent } from "./event";
|
|
3
3
|
import { Attributes, AttributesSubscribable } from "./attributes";
|
|
4
|
-
import { extend } from "jquery";
|
|
5
4
|
import { Style, StyleSubscribable } from "./style";
|
|
6
5
|
import { unwrap, Subscribable, executeHandlerOnObject } from "./observable";
|
|
7
6
|
import { autorun, IReactionDisposer } from "mobx";
|
|
@@ -65,11 +64,24 @@ export abstract class Properties implements IProperties {
|
|
|
65
64
|
focused?: boolean | Subscribable<boolean>;
|
|
66
65
|
}
|
|
67
66
|
|
|
68
|
-
//#region
|
|
67
|
+
//#region Properties helper functions
|
|
69
68
|
|
|
70
|
-
|
|
71
|
-
export function extendProperties<
|
|
72
|
-
|
|
69
|
+
|
|
70
|
+
export function extendProperties< TTarget = IProperties, TSource = IProperties>(target: TTarget, source: TSource, overwriteExisting = false): TTarget {
|
|
71
|
+
if (target && source) {
|
|
72
|
+
Object.keys(source).forEach((key)=>
|
|
73
|
+
{
|
|
74
|
+
if (overwriteExisting) {
|
|
75
|
+
target[key] = source[key];
|
|
76
|
+
} else {
|
|
77
|
+
if (!target.hasOwnProperty(key)) {
|
|
78
|
+
target[key] = source[key];
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return target;
|
|
73
85
|
}
|
|
74
86
|
|
|
75
87
|
//Functions to bind the viewModel to a html element
|
|
@@ -296,12 +308,12 @@ function applyDisabledToElement(disabled: boolean, element: HTMLElement) {
|
|
|
296
308
|
}
|
|
297
309
|
}
|
|
298
310
|
|
|
299
|
-
function applyEventListenersToElement(
|
|
311
|
+
function applyEventListenersToElement(properties: IProperties, element: HTMLElement) {
|
|
300
312
|
//Add the eventListeners to the element
|
|
301
313
|
const clickEventListeners = new Array<IGenericEventListener>();
|
|
302
314
|
const doubleClickEventListeners = new Array<IGenericEventListener>();
|
|
303
315
|
|
|
304
|
-
Object.entries(
|
|
316
|
+
Object.entries(properties.eventListeners).forEach((entry) => {
|
|
305
317
|
var eventName = entry[0] as keyof UiElementEventMap;
|
|
306
318
|
var eventListener = entry[1] as IGenericEventListener;
|
|
307
319
|
|
|
@@ -339,7 +351,7 @@ function applyEventListenersToElement(viewModel: IProperties, element: HTMLEleme
|
|
|
339
351
|
}
|
|
340
352
|
}
|
|
341
353
|
|
|
342
|
-
eventListener.listener.call(
|
|
354
|
+
eventListener.listener.call(properties, event);
|
|
343
355
|
},
|
|
344
356
|
eventListener.options,
|
|
345
357
|
element
|