cx 26.0.4 → 26.0.6
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/build/data/ArrayElementView.spec.js +1 -1
- package/build/hooks/store.spec.js +1 -1
- package/build/hooks/useTrigger.spec.js +1 -1
- package/build/ui/Controller.spec.js +6 -2
- package/build/ui/app/startAppLoop.d.ts +3 -2
- package/build/ui/app/startHotAppLoop.d.ts +3 -2
- package/build/ui/layout/ContentPlaceholder.spec.js +12 -12
- package/build.js +129 -129
- package/dist/manifest.js +844 -844
- package/package.json +3 -2
- package/src/charts/Chart.ts +108 -108
- package/src/data/ArrayElementView.ts +90 -90
- package/src/data/AugmentedViewBase.ts +88 -88
- package/src/data/Binding.ts +104 -104
- package/src/data/ExposedRecordView.ts +95 -95
- package/src/data/ExposedValueView.ts +89 -89
- package/src/data/Expression.spec.ts +229 -229
- package/src/data/Expression.ts +233 -233
- package/src/data/Grouper.spec.ts +57 -57
- package/src/data/Grouper.ts +158 -158
- package/src/data/NestedDataView.ts +43 -43
- package/src/data/ReadOnlyDataView.ts +39 -39
- package/src/data/Ref.ts +104 -104
- package/src/data/Selector.ts +10 -10
- package/src/data/Store.ts +52 -52
- package/src/data/StoreProxy.ts +19 -19
- package/src/data/StoreRef.ts +66 -66
- package/src/data/StringTemplate.spec.ts +132 -132
- package/src/data/StringTemplate.ts +93 -93
- package/src/data/StructuredSelector.spec.ts +113 -113
- package/src/data/StructuredSelector.ts +146 -146
- package/src/data/SubscribableView.ts +63 -63
- package/src/data/ZoomIntoPropertyView.spec.ts +64 -64
- package/src/data/ZoomIntoPropertyView.ts +45 -45
- package/src/data/computable.spec.ts +62 -62
- package/src/data/createAccessorModelProxy.ts +60 -60
- package/src/data/createStructuredSelector.ts +62 -62
- package/src/data/getAccessor.spec.ts +11 -11
- package/src/data/getAccessor.ts +74 -74
- package/src/data/getSelector.spec.ts +43 -43
- package/src/data/getSelector.ts +66 -66
- package/src/data/ops/filter.spec.ts +35 -35
- package/src/data/ops/filter.ts +9 -9
- package/src/data/ops/merge.ts +13 -13
- package/src/data/ops/removeTreeNodes.spec.ts +37 -37
- package/src/data/ops/removeTreeNodes.ts +15 -15
- package/src/data/ops/updateArray.spec.ts +69 -69
- package/src/data/ops/updateArray.ts +31 -31
- package/src/data/ops/updateTree.ts +23 -23
- package/src/data/test-types.ts +7 -7
- package/src/hooks/useTrigger.ts +26 -26
- package/src/index.scss +6 -6
- package/src/jsx-runtime.ts +72 -72
- package/src/svg/BoundedObject.ts +101 -101
- package/src/ui/CSSHelper.ts +17 -17
- package/src/ui/ContentResolver.ts +124 -124
- package/src/ui/Controller.ts +189 -189
- package/src/ui/Culture.ts +159 -159
- package/src/ui/DataProxy.ts +55 -55
- package/src/ui/FocusManager.ts +171 -171
- package/src/ui/Instance.ts +868 -868
- package/src/ui/RenderingContext.ts +99 -99
- package/src/ui/Rescope.ts +49 -49
- package/src/ui/StructuredInstanceDataAccessor.ts +32 -32
- package/src/ui/VDOM.ts +34 -34
- package/src/ui/adapter/ArrayAdapter.spec.ts +55 -55
- package/src/ui/adapter/ArrayAdapter.ts +226 -226
- package/src/ui/adapter/TreeAdapter.spec.ts +76 -76
- package/src/ui/adapter/TreeAdapter.ts +185 -185
- package/src/ui/app/History.ts +133 -133
- package/src/ui/app/Url.spec.ts +50 -50
- package/src/ui/app/startAppLoop.tsx +2 -1
- package/src/ui/app/startHotAppLoop.ts +2 -1
- package/src/ui/createFunctionalComponent.ts +65 -65
- package/src/ui/index.ts +45 -45
- package/src/ui/layout/Content.ts +30 -30
- package/src/ui/layout/FirstVisibleChildLayout.ts +60 -60
- package/src/ui/selection/KeySelection.ts +165 -165
- package/src/ui/selection/PropertySelection.ts +87 -87
- package/src/ui/selection/Selection.ts +118 -118
- package/src/util/Format.ts +267 -267
- package/src/util/browserSupportsPassiveEventHandlers.ts +20 -20
- package/src/util/color/rgbToHsl.ts +35 -35
- package/src/util/getActiveElement.ts +4 -4
- package/src/util/hasKey.ts +18 -18
- package/src/util/index.ts +55 -55
- package/src/util/innerTextTrim.ts +10 -10
- package/src/util/isArray.ts +3 -3
- package/src/util/isDataRecord.ts +5 -5
- package/src/util/isDefined.ts +3 -3
- package/src/util/isString.ts +3 -3
- package/src/widgets/Sandbox.ts +103 -103
- package/src/widgets/autoFocus.ts +9 -9
- package/src/widgets/cx.ts +63 -63
- package/src/widgets/drag-drop/ops.tsx +1 -1
- package/src/widgets/grid/GridCell.ts +143 -143
- package/src/widgets/icons/calendar.tsx +17 -17
- package/src/widgets/icons/check.tsx +13 -13
- package/src/widgets/icons/clear.tsx +15 -15
- package/src/widgets/icons/close.tsx +20 -20
- package/src/widgets/icons/cx.tsx +38 -38
- package/src/widgets/icons/drop-down.tsx +15 -15
- package/src/widgets/icons/file.tsx +13 -13
- package/src/widgets/icons/folder-open.tsx +15 -15
- package/src/widgets/icons/folder.tsx +13 -13
- package/src/widgets/icons/forward.tsx +22 -22
- package/src/widgets/icons/loading.tsx +24 -24
- package/src/widgets/icons/menu.tsx +17 -17
- package/src/widgets/icons/pixel-picker.tsx +18 -18
- package/src/widgets/icons/search.tsx +13 -13
- package/src/widgets/icons/sort-asc.tsx +14 -14
- package/src/widgets/icons/square.tsx +18 -18
- package/src/widgets/nav/Route.ts +142 -142
- package/src/widgets/overlay/ContextMenu.ts +42 -42
- package/src/widgets/overlay/Dropdown.tsx +762 -762
- package/src/widgets/overlay/MsgBox.tsx +141 -141
- package/src/widgets/overlay/Toast.ts +111 -111
- package/src/widgets/overlay/Window.tsx +299 -299
- package/src/widgets/overlay/alerts.ts +46 -46
- package/src/widgets/overlay/captureMouse.ts +195 -195
- package/src/widgets/overlay/createHotPromiseWindowFactory.ts +72 -72
- package/src/widgets/overlay/index.d.ts +11 -11
- package/src/widgets/overlay/index.ts +11 -11
- package/src/widgets/overlay/tooltip-ops.ts +173 -173
- package/build/ui/PureContainer.spec.d.ts +0 -1
- package/build/ui/PureContainer.spec.js +0 -149
- package/dist/manifest.d.ts +0 -1443
|
@@ -1,118 +1,118 @@
|
|
|
1
|
-
import { Component } from "../../util/Component";
|
|
2
|
-
import { View } from "../../data/View";
|
|
3
|
-
|
|
4
|
-
export interface SelectionOptions {
|
|
5
|
-
toggle?: boolean;
|
|
6
|
-
add?: boolean;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export interface SelectionConfig {
|
|
10
|
-
bind?: string;
|
|
11
|
-
record?: any;
|
|
12
|
-
index?: any;
|
|
13
|
-
toggle?: boolean;
|
|
14
|
-
multiple?: boolean;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export class Selection extends Component {
|
|
18
|
-
declare bind?: string;
|
|
19
|
-
declare record?: any;
|
|
20
|
-
declare index?: any;
|
|
21
|
-
declare toggle: boolean;
|
|
22
|
-
declare isDummy: boolean;
|
|
23
|
-
declare multiple: boolean;
|
|
24
|
-
|
|
25
|
-
constructor(config?: SelectionConfig) {
|
|
26
|
-
super(config);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
isSelected(store: View, record: any, index: any): boolean {
|
|
30
|
-
return !!this.bind && store.get(this.bind) === record;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
getIsSelectedDelegate(store: View): (record: any, index: any) => boolean {
|
|
34
|
-
return (record, index) => this.isSelected(store, record, index);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
select(store: View, record: any, index: any, options?: SelectionOptions): any {
|
|
38
|
-
this.selectMultiple(store, [record], [index], options);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
selectMultiple(store: View, records: any[], indexes: any[], options?: SelectionOptions): any {
|
|
42
|
-
//abstract
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
declareData(...args: any[]): any {
|
|
46
|
-
var declaration = {
|
|
47
|
-
$selection: { structured: true },
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
return Object.assign(declaration, ...args);
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
configureWidget(widget: any): any {
|
|
54
|
-
if (this.record || this.index) {
|
|
55
|
-
widget.$selection = Object.assign(widget.$selection || {}, {
|
|
56
|
-
record: this.record,
|
|
57
|
-
index: this.index,
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
return this.declareData();
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
selectInstance(instance: any, options?: SelectionOptions): any {
|
|
65
|
-
var { store, data } = instance;
|
|
66
|
-
if (!data.$selection)
|
|
67
|
-
throw new Error(
|
|
68
|
-
"Selection model not properly configured. Using the selectInstance method without specified record and index bindings.",
|
|
69
|
-
);
|
|
70
|
-
return this.select(store, data.$selection.record, data.$selection.index, options);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
isInstanceSelected(instance: any): boolean {
|
|
74
|
-
var { store, data } = instance;
|
|
75
|
-
return data.$selection && this.isSelected(store, data.$selection.record, data.$selection.index);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
Selection.prototype.toggle = false;
|
|
80
|
-
|
|
81
|
-
Selection.namespace = "ui.selection.";
|
|
82
|
-
|
|
83
|
-
export class SimpleSelection extends Selection {
|
|
84
|
-
isSelected(store: View, record: any, index: any): boolean {
|
|
85
|
-
return this.getIsSelectedDelegate(store)(record, index);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
getIsSelectedDelegate(store: View): (record: any, index: any) => boolean {
|
|
89
|
-
var selection = this.bind && store.get(this.bind);
|
|
90
|
-
return (record, index) => record === selection;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
selectMultiple(store: View, records: any[], index: any[]): void {
|
|
94
|
-
if (this.bind) store.set(this.bind, records[0]);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
class DummySelection extends Selection {
|
|
99
|
-
isSelected(store: View, record: any, index: any): boolean {
|
|
100
|
-
return false;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
selectMultiple(): void {
|
|
104
|
-
//dummy
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
selectInstance(): void {
|
|
108
|
-
//dummy
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
DummySelection.prototype.isDummy = true;
|
|
113
|
-
|
|
114
|
-
Selection.factory = (name: any): Selection => {
|
|
115
|
-
if (typeof name == "object") return new SimpleSelection(name);
|
|
116
|
-
|
|
117
|
-
return new DummySelection();
|
|
118
|
-
};
|
|
1
|
+
import { Component } from "../../util/Component";
|
|
2
|
+
import { View } from "../../data/View";
|
|
3
|
+
|
|
4
|
+
export interface SelectionOptions {
|
|
5
|
+
toggle?: boolean;
|
|
6
|
+
add?: boolean;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface SelectionConfig {
|
|
10
|
+
bind?: string;
|
|
11
|
+
record?: any;
|
|
12
|
+
index?: any;
|
|
13
|
+
toggle?: boolean;
|
|
14
|
+
multiple?: boolean;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export class Selection extends Component {
|
|
18
|
+
declare bind?: string;
|
|
19
|
+
declare record?: any;
|
|
20
|
+
declare index?: any;
|
|
21
|
+
declare toggle: boolean;
|
|
22
|
+
declare isDummy: boolean;
|
|
23
|
+
declare multiple: boolean;
|
|
24
|
+
|
|
25
|
+
constructor(config?: SelectionConfig) {
|
|
26
|
+
super(config);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
isSelected(store: View, record: any, index: any): boolean {
|
|
30
|
+
return !!this.bind && store.get(this.bind) === record;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
getIsSelectedDelegate(store: View): (record: any, index: any) => boolean {
|
|
34
|
+
return (record, index) => this.isSelected(store, record, index);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
select(store: View, record: any, index: any, options?: SelectionOptions): any {
|
|
38
|
+
this.selectMultiple(store, [record], [index], options);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
selectMultiple(store: View, records: any[], indexes: any[], options?: SelectionOptions): any {
|
|
42
|
+
//abstract
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
declareData(...args: any[]): any {
|
|
46
|
+
var declaration = {
|
|
47
|
+
$selection: { structured: true },
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
return Object.assign(declaration, ...args);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
configureWidget(widget: any): any {
|
|
54
|
+
if (this.record || this.index) {
|
|
55
|
+
widget.$selection = Object.assign(widget.$selection || {}, {
|
|
56
|
+
record: this.record,
|
|
57
|
+
index: this.index,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return this.declareData();
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
selectInstance(instance: any, options?: SelectionOptions): any {
|
|
65
|
+
var { store, data } = instance;
|
|
66
|
+
if (!data.$selection)
|
|
67
|
+
throw new Error(
|
|
68
|
+
"Selection model not properly configured. Using the selectInstance method without specified record and index bindings.",
|
|
69
|
+
);
|
|
70
|
+
return this.select(store, data.$selection.record, data.$selection.index, options);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
isInstanceSelected(instance: any): boolean {
|
|
74
|
+
var { store, data } = instance;
|
|
75
|
+
return data.$selection && this.isSelected(store, data.$selection.record, data.$selection.index);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
Selection.prototype.toggle = false;
|
|
80
|
+
|
|
81
|
+
Selection.namespace = "ui.selection.";
|
|
82
|
+
|
|
83
|
+
export class SimpleSelection extends Selection {
|
|
84
|
+
isSelected(store: View, record: any, index: any): boolean {
|
|
85
|
+
return this.getIsSelectedDelegate(store)(record, index);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
getIsSelectedDelegate(store: View): (record: any, index: any) => boolean {
|
|
89
|
+
var selection = this.bind && store.get(this.bind);
|
|
90
|
+
return (record, index) => record === selection;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
selectMultiple(store: View, records: any[], index: any[]): void {
|
|
94
|
+
if (this.bind) store.set(this.bind, records[0]);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
class DummySelection extends Selection {
|
|
99
|
+
isSelected(store: View, record: any, index: any): boolean {
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
selectMultiple(): void {
|
|
104
|
+
//dummy
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
selectInstance(): void {
|
|
108
|
+
//dummy
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
DummySelection.prototype.isDummy = true;
|
|
113
|
+
|
|
114
|
+
Selection.factory = (name: any): Selection => {
|
|
115
|
+
if (typeof name == "object") return new SimpleSelection(name);
|
|
116
|
+
|
|
117
|
+
return new DummySelection();
|
|
118
|
+
};
|