x4js 1.4.50 → 1.4.51
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/lib/component.d.ts +8 -20
- package/lib/component.js +16 -23
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/property_editor.d.ts +1 -1
- package/lib/smartedit.js +1 -1
- package/lib/tabbar.d.ts +1 -1
- package/lib/x4react.d.ts +6 -0
- package/lib/x4react.js +35 -0
- package/license.md +21 -0
- package/package.json +1 -1
- package/src/base_component.ts +2 -1
- package/src/component.ts +2344 -2351
- package/src/index.ts +1 -0
- package/src/x4react.ts +42 -0
- package/tsconfig.json +3 -1
package/lib/component.d.ts
CHANGED
|
@@ -136,7 +136,7 @@ export interface CProps<T extends CEventMap = CEventMap> extends BaseComponentPr
|
|
|
136
136
|
/**
|
|
137
137
|
*
|
|
138
138
|
*/
|
|
139
|
-
export declare class Component<P extends CProps<
|
|
139
|
+
export declare class Component<P extends CProps<CEventMap> = CProps<CEventMap>, E extends CEventMap = CEventMap> extends BaseComponent<P, E> {
|
|
140
140
|
private m_dom;
|
|
141
141
|
private m_iprops;
|
|
142
142
|
private static __sb_width;
|
|
@@ -166,25 +166,6 @@ export declare class Component<P extends CProps<BaseComponentEventMap> = CProps<
|
|
|
166
166
|
*
|
|
167
167
|
*/
|
|
168
168
|
setTag(tag: string, namespace?: string): void;
|
|
169
|
-
/**
|
|
170
|
-
* get the Component value
|
|
171
|
-
* @param name name to get
|
|
172
|
-
* /
|
|
173
|
-
|
|
174
|
-
getProp(name: string): any {
|
|
175
|
-
return this.m_props[name];
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
/ **
|
|
179
|
-
* change a Component value
|
|
180
|
-
* @param name name to set
|
|
181
|
-
* @param value new value
|
|
182
|
-
* /
|
|
183
|
-
|
|
184
|
-
setProp(name: string, value?: any) {
|
|
185
|
-
(this.m_props as any)[name] = value;
|
|
186
|
-
}
|
|
187
|
-
*/
|
|
188
169
|
/**
|
|
189
170
|
* get the Component data value
|
|
190
171
|
* @param name name to get
|
|
@@ -617,3 +598,10 @@ export declare class Container<P extends ContainerProps = ContainerProps, E exte
|
|
|
617
598
|
private _handleKeydown;
|
|
618
599
|
}
|
|
619
600
|
export declare type ComponentConstructor<T> = new (props: CProps) => T;
|
|
601
|
+
/**
|
|
602
|
+
*
|
|
603
|
+
*/
|
|
604
|
+
export declare class TSXComponent<P extends CProps<CEventMap> = CProps<CEventMap>, E extends CEventMap = CEventMap> extends Component<P, E> {
|
|
605
|
+
render(props: P): void;
|
|
606
|
+
renderTSX(props: P): Component | Component[];
|
|
607
|
+
}
|
package/lib/component.js
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
29
29
|
*/
|
|
30
30
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
|
-
exports.Container = exports.SizerOverlay = exports.EvOverlayResize = exports.Separator = exports.EvSize = exports.Space = exports.Flex = exports.flyWrap = exports.Component = exports.EvFocus = exports.EvDblClick = exports._x4_unitless = exports.html = exports.isHtmlString = exports.HtmlString = void 0;
|
|
31
|
+
exports.TSXComponent = exports.Container = exports.SizerOverlay = exports.EvOverlayResize = exports.Separator = exports.EvSize = exports.Space = exports.Flex = exports.flyWrap = exports.Component = exports.EvFocus = exports.EvDblClick = exports._x4_unitless = exports.html = exports.isHtmlString = exports.HtmlString = void 0;
|
|
32
32
|
/**
|
|
33
33
|
* @todo
|
|
34
34
|
* create Container class
|
|
@@ -165,25 +165,6 @@ class Component extends base_component_1.BaseComponent {
|
|
|
165
165
|
this.m_props.ns = namespace;
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
|
-
/**
|
|
169
|
-
* get the Component value
|
|
170
|
-
* @param name name to get
|
|
171
|
-
* /
|
|
172
|
-
|
|
173
|
-
getProp(name: string): any {
|
|
174
|
-
return this.m_props[name];
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
/ **
|
|
178
|
-
* change a Component value
|
|
179
|
-
* @param name name to set
|
|
180
|
-
* @param value new value
|
|
181
|
-
* /
|
|
182
|
-
|
|
183
|
-
setProp(name: string, value?: any) {
|
|
184
|
-
(this.m_props as any)[name] = value;
|
|
185
|
-
}
|
|
186
|
-
*/
|
|
187
168
|
/**
|
|
188
169
|
* get the Component data value
|
|
189
170
|
* @param name name to get
|
|
@@ -549,9 +530,6 @@ class Component extends base_component_1.BaseComponent {
|
|
|
549
530
|
return this.m_dom;
|
|
550
531
|
}
|
|
551
532
|
render(props) {
|
|
552
|
-
if (this.m_props.tag == 'footer') {
|
|
553
|
-
debugger;
|
|
554
|
-
}
|
|
555
533
|
}
|
|
556
534
|
_createDOM() {
|
|
557
535
|
if (this.m_dom) {
|
|
@@ -1745,3 +1723,18 @@ class Container extends Component {
|
|
|
1745
1723
|
}
|
|
1746
1724
|
}
|
|
1747
1725
|
exports.Container = Container;
|
|
1726
|
+
/**
|
|
1727
|
+
*
|
|
1728
|
+
*/
|
|
1729
|
+
class TSXComponent extends Component {
|
|
1730
|
+
render(props) {
|
|
1731
|
+
const tsx = this.renderTSX(props);
|
|
1732
|
+
if (tsx) {
|
|
1733
|
+
this.setContent(tsx);
|
|
1734
|
+
}
|
|
1735
|
+
}
|
|
1736
|
+
renderTSX(props) {
|
|
1737
|
+
return undefined;
|
|
1738
|
+
}
|
|
1739
|
+
}
|
|
1740
|
+
exports.TSXComponent = TSXComponent;
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -98,4 +98,5 @@ __exportStar(require("./tools"), exports);
|
|
|
98
98
|
__exportStar(require("./tooltips"), exports);
|
|
99
99
|
__exportStar(require("./treeview"), exports);
|
|
100
100
|
__exportStar(require("./x4events"), exports);
|
|
101
|
+
__exportStar(require("./x4react"), exports);
|
|
101
102
|
__exportStar(require("./version"), exports);
|
package/lib/property_editor.d.ts
CHANGED
|
@@ -64,7 +64,7 @@ export declare class PropertyEditor extends Component<PropertyEditorProps, Prope
|
|
|
64
64
|
private _updateProperties;
|
|
65
65
|
private _cellChange;
|
|
66
66
|
_renderCell(text: any, rec: any): any;
|
|
67
|
-
_editCell(props: any, row: number, col: number): Component<CProps<
|
|
67
|
+
_editCell(props: any, row: number, col: number): Component<CProps<CEventMap>, CEventMap>;
|
|
68
68
|
private _choicesFromArray;
|
|
69
69
|
private _choicesFromStore;
|
|
70
70
|
}
|
package/lib/smartedit.js
CHANGED
package/lib/tabbar.d.ts
CHANGED
|
@@ -53,6 +53,6 @@ export declare class TabBar extends Container<TabBarProps, TabBarEventMap> {
|
|
|
53
53
|
render(): void;
|
|
54
54
|
select(id: string | null, notify?: boolean): boolean;
|
|
55
55
|
private _select;
|
|
56
|
-
get selection(): Component<CProps<import("./
|
|
56
|
+
get selection(): Component<CProps<import("./component").CEventMap>, import("./component").CEventMap>;
|
|
57
57
|
}
|
|
58
58
|
export {};
|
package/lib/x4react.d.ts
ADDED
package/lib/x4react.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.React = void 0;
|
|
4
|
+
const component_1 = require("./component");
|
|
5
|
+
const createElement = (clsOrTag, attrs, ...children) => {
|
|
6
|
+
let comp;
|
|
7
|
+
// fragment
|
|
8
|
+
if (clsOrTag == createFragment || clsOrTag == Fragment) {
|
|
9
|
+
return children;
|
|
10
|
+
}
|
|
11
|
+
// class constructor, yes : dirty
|
|
12
|
+
else if (clsOrTag instanceof Function) {
|
|
13
|
+
comp = new clsOrTag(attrs);
|
|
14
|
+
}
|
|
15
|
+
// basic tag
|
|
16
|
+
else {
|
|
17
|
+
comp = new component_1.Component({
|
|
18
|
+
tag: clsOrTag,
|
|
19
|
+
...attrs,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (children && children.length) {
|
|
23
|
+
comp.setContent(children);
|
|
24
|
+
}
|
|
25
|
+
return comp;
|
|
26
|
+
};
|
|
27
|
+
const Fragment = Symbol("fragment");
|
|
28
|
+
const createFragment = () => {
|
|
29
|
+
return null;
|
|
30
|
+
};
|
|
31
|
+
exports.React = {
|
|
32
|
+
createElement,
|
|
33
|
+
createFragment,
|
|
34
|
+
Fragment,
|
|
35
|
+
};
|
package/license.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2022 R-Libre ingénierie
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/package.json
CHANGED
package/src/base_component.ts
CHANGED