cx 26.2.2 → 26.2.4
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/charts/Chart.d.ts.map +1 -1
- package/build/charts/Chart.js +5 -4
- package/build/charts/ColumnBarBase.d.ts +3 -3
- package/build/charts/ColumnBarBase.d.ts.map +1 -1
- package/build/charts/ColumnBarBase.js +1 -1
- package/build/charts/Legend.d.ts.map +1 -1
- package/build/charts/Legend.js +11 -4
- package/build/charts/Marker.d.ts +3 -3
- package/build/charts/Marker.d.ts.map +1 -1
- package/build/charts/MarkerLine.d.ts +7 -7
- package/build/charts/MarkerLine.d.ts.map +1 -1
- package/build/charts/MarkerLine.js +14 -10
- package/build/charts/PieChart.d.ts +4 -4
- package/build/charts/PieChart.d.ts.map +1 -1
- package/build/charts/PieChart.js +36 -14
- package/build/charts/PieLabel.d.ts.map +1 -1
- package/build/charts/PieLabel.js +2 -1
- package/build/charts/RangeMarker.d.ts +3 -3
- package/build/charts/RangeMarker.d.ts.map +1 -1
- package/build/charts/RangeMarker.js +1 -1
- package/build/charts/axis/TimeAxis.d.ts +3 -3
- package/build/charts/axis/TimeAxis.d.ts.map +1 -1
- package/build/charts/axis/TimeAxis.js +70 -21
- package/build/charts/helpers/SnapPointFinder.d.ts +2 -2
- package/build/charts/helpers/SnapPointFinder.d.ts.map +1 -1
- package/build/charts/helpers/ValueAtFinder.d.ts +3 -3
- package/build/charts/helpers/ValueAtFinder.d.ts.map +1 -1
- package/build/data/StructuredSelector.js +3 -4
- package/build/data/createAccessorModelProxy.d.ts +6 -11
- package/build/data/createAccessorModelProxy.d.ts.map +1 -1
- package/build/data/createAccessorModelProxy.js +1 -3
- package/build/jsx-runtime.d.ts +2 -1
- package/build/jsx-runtime.d.ts.map +1 -1
- package/build/svg/Ellipse.d.ts +5 -4
- package/build/svg/Ellipse.d.ts.map +1 -1
- package/build/svg/Ellipse.js +9 -6
- package/build/svg/Line.d.ts +1 -0
- package/build/svg/Line.d.ts.map +1 -1
- package/build/svg/Line.js +4 -1
- package/build/svg/Text.d.ts +12 -6
- package/build/svg/Text.d.ts.map +1 -1
- package/build/svg/Text.js +12 -4
- package/build/ui/Controller.d.ts +2 -0
- package/build/ui/Controller.d.ts.map +1 -1
- package/build/ui/Controller.js +3 -0
- package/build/ui/HoverSync.d.ts.map +1 -1
- package/build/ui/HoverSync.js +7 -2
- package/build/ui/Prop.d.ts +1 -1
- package/build/ui/Prop.d.ts.map +1 -1
- package/build/ui/Text.d.ts +3 -3
- package/build/ui/Text.d.ts.map +1 -1
- package/build/ui/Text.js +5 -5
- package/build/ui/adapter/GroupAdapter.d.ts.map +1 -1
- package/build/ui/adapter/GroupAdapter.js +20 -10
- package/build/ui/app/History.js +1 -1
- package/build/ui/createFunctionalComponent.d.ts +4 -1
- package/build/ui/createFunctionalComponent.d.ts.map +1 -1
- package/build/widgets/List.d.ts.map +1 -1
- package/build/widgets/List.js +6 -7
- package/build/widgets/drag-drop/DropZone.d.ts +3 -3
- package/build/widgets/drag-drop/DropZone.d.ts.map +1 -1
- package/build/widgets/form/Calendar.d.ts.map +1 -1
- package/build/widgets/form/Calendar.js +30 -11
- package/build/widgets/form/ColorField.d.ts.map +1 -1
- package/build/widgets/form/ColorField.js +16 -7
- package/build/widgets/form/DateTimeField.d.ts.map +1 -1
- package/build/widgets/form/DateTimeField.js +23 -10
- package/build/widgets/form/Field.d.ts +2 -0
- package/build/widgets/form/Field.d.ts.map +1 -1
- package/build/widgets/form/Field.js +11 -5
- package/build/widgets/form/LookupField.d.ts +1 -1
- package/build/widgets/form/LookupField.d.ts.map +1 -1
- package/build/widgets/form/LookupField.js +6 -6
- package/build/widgets/form/MonthField.d.ts.map +1 -1
- package/build/widgets/form/MonthField.js +15 -7
- package/build/widgets/form/MonthPicker.d.ts +1 -2
- package/build/widgets/form/MonthPicker.d.ts.map +1 -1
- package/build/widgets/form/MonthPicker.js +84 -41
- package/build/widgets/form/NumberField.d.ts +2 -0
- package/build/widgets/form/NumberField.d.ts.map +1 -1
- package/build/widgets/form/NumberField.js +45 -15
- package/build/widgets/form/TextField.d.ts +1 -9
- package/build/widgets/form/TextField.d.ts.map +1 -1
- package/build/widgets/form/TextField.js +1 -1
- package/build/widgets/form/TimeList.d.ts +3 -1
- package/build/widgets/form/TimeList.d.ts.map +1 -1
- package/build/widgets/grid/Grid.d.ts +2 -2
- package/build/widgets/grid/Grid.d.ts.map +1 -1
- package/build/widgets/grid/Grid.js +14 -11
- package/build/widgets/grid/Pagination.d.ts.map +1 -1
- package/build/widgets/grid/Pagination.js +4 -4
- package/build/widgets/grid/TreeNode.d.ts.map +1 -1
- package/build/widgets/grid/TreeNode.js +10 -2
- package/build/widgets/icons/folder.d.ts.map +1 -1
- package/build/widgets/icons/folder.js +1 -0
- package/build/widgets/icons/forward.d.ts.map +1 -1
- package/build/widgets/icons/forward.js +4 -3
- package/build/widgets/icons/loading.d.ts.map +1 -1
- package/build/widgets/icons/loading.js +6 -5
- package/build/widgets/icons/square.d.ts.map +1 -1
- package/build/widgets/icons/square.js +3 -3
- package/build/widgets/index.d.ts +3 -1
- package/build/widgets/index.d.ts.map +1 -1
- package/build/widgets/index.js +3 -1
- package/build/widgets/overlay/ContextMenu.d.ts.map +1 -1
- package/build/widgets/overlay/ContextMenu.js +2 -0
- package/build/widgets/overlay/Dropdown.d.ts +2 -1
- package/build/widgets/overlay/Dropdown.d.ts.map +1 -1
- package/build/widgets/overlay/Dropdown.js +75 -20
- package/build/widgets/overlay/MsgBox.d.ts +1 -0
- package/build/widgets/overlay/MsgBox.d.ts.map +1 -1
- package/build/widgets/overlay/MsgBox.js +2 -2
- package/build/widgets/overlay/Overlay.d.ts +32 -2
- package/build/widgets/overlay/Overlay.d.ts.map +1 -1
- package/build/widgets/overlay/Overlay.js +47 -16
- package/build/widgets/overlay/Toast.d.ts +1 -1
- package/build/widgets/overlay/Toast.d.ts.map +1 -1
- package/build/widgets/overlay/Toast.js +4 -1
- package/build/widgets/overlay/Tooltip.d.ts +6 -0
- package/build/widgets/overlay/Tooltip.d.ts.map +1 -1
- package/build/widgets/overlay/Tooltip.js +24 -9
- package/build/widgets/overlay/Window.d.ts.map +1 -1
- package/build/widgets/overlay/Window.js +24 -9
- package/dist/charts.css +325 -272
- package/dist/charts.js +11 -5
- package/dist/data.js +2 -2
- package/dist/manifest.js +853 -841
- package/dist/svg.css +14 -8
- package/dist/svg.js +9 -1
- package/dist/ui.js +29 -16
- package/dist/widgets.css +997 -294
- package/dist/widgets.js +319 -126
- package/package.json +1 -1
- package/src/charts/Bar.scss +13 -10
- package/src/charts/BarGraph.scss +31 -29
- package/src/charts/BubbleGraph.scss +11 -8
- package/src/charts/Chart.ts +5 -3
- package/src/charts/Column.scss +13 -10
- package/src/charts/ColumnBarBase.tsx +255 -230
- package/src/charts/ColumnGraph.scss +13 -11
- package/src/charts/Gridlines.scss +10 -8
- package/src/charts/Legend.scss +57 -50
- package/src/charts/Legend.tsx +257 -213
- package/src/charts/LegendEntry.scss +35 -29
- package/src/charts/LineGraph.scss +28 -25
- package/src/charts/Marker.scss +12 -10
- package/src/charts/Marker.tsx +3 -2
- package/src/charts/MarkerLine.scss +11 -8
- package/src/charts/MarkerLine.tsx +196 -177
- package/src/charts/PieChart.scss +12 -9
- package/src/charts/PieChart.tsx +717 -591
- package/src/charts/PieLabel.tsx +99 -81
- package/src/charts/Range.scss +11 -8
- package/src/charts/RangeMarker.tsx +204 -187
- package/src/charts/ScatterGraph.scss +12 -9
- package/src/charts/axis/Axis.scss +6 -5
- package/src/charts/axis/CategoryAxis.scss +10 -8
- package/src/charts/axis/NumericAxis.scss +9 -6
- package/src/charts/axis/TimeAxis.scss +9 -6
- package/src/charts/axis/TimeAxis.tsx +753 -637
- package/src/charts/axis/index.scss +4 -5
- package/src/charts/axis/variables.scss +4 -2
- package/src/charts/helpers/SnapPointFinder.ts +136 -136
- package/src/charts/helpers/ValueAtFinder.ts +72 -72
- package/src/charts/index.scss +16 -19
- package/src/charts/maps.scss +0 -0
- package/src/charts/palette.scss +11 -31
- package/src/charts/palette.variables.scss +23 -0
- package/src/charts/variables.scss +35 -3
- package/src/data/StructuredSelector.ts +2 -2
- package/src/data/createAccessorModelProxy.ts +66 -74
- package/src/index.scss +5 -6
- package/src/jsx-runtime.ts +2 -1
- package/src/maps.scss +5 -0
- package/src/svg/Ellipse.tsx +62 -55
- package/src/svg/Line.tsx +57 -42
- package/src/svg/Svg.scss +6 -6
- package/src/svg/Text.scss +19 -0
- package/src/svg/Text.tsx +172 -116
- package/src/svg/index.scss +3 -2
- package/src/svg/maps.scss +0 -0
- package/src/svg/variables.scss +0 -0
- package/src/ui/Container.spec.ts +59 -0
- package/src/ui/Controller.spec.tsx +30 -0
- package/src/ui/Controller.ts +5 -0
- package/src/ui/HoverSync.tsx +179 -147
- package/src/ui/Prop.ts +1 -1
- package/src/ui/Text.ts +12 -9
- package/src/ui/adapter/GroupAdapter.spec.ts +42 -0
- package/src/ui/adapter/GroupAdapter.ts +25 -14
- package/src/ui/app/History.ts +1 -1
- package/src/ui/createFunctionalComponent.spec.tsx +55 -0
- package/src/ui/createFunctionalComponent.ts +12 -2
- package/src/ui/index.scss +1 -1
- package/src/ui/layout/LabelsLeftLayout.scss +5 -7
- package/src/ui/layout/LabelsTopLayout.scss +4 -6
- package/src/ui/layout/index.scss +2 -3
- package/src/ui/maps.scss +0 -0
- package/src/ui/variables.scss +1 -2
- package/src/util/index.scss +4 -2
- package/src/util/maps.scss +1 -0
- package/src/util/scss/besm.scss +15 -0
- package/src/util/scss/calc.scss +103 -11
- package/src/util/scss/defaults.scss +24 -0
- package/src/util/scss/elements.scss +78 -0
- package/src/util/scss/global.scss +15 -0
- package/src/util/scss/include.scss +17 -9
- package/src/util/scss/index.scss +1 -9
- package/src/util/scss/maps.scss +2 -0
- package/src/util/scss/pad-size.scss +9 -0
- package/src/util/scss/padding.scss +6 -0
- package/src/util/scss/screen-size.scss +5 -0
- package/src/util/scss/variables.scss +6 -0
- package/src/util/variables.scss +1 -0
- package/src/variables.scss +5 -217
- package/src/widgets/Button.maps.scss +103 -0
- package/src/widgets/Button.scss +33 -9
- package/src/widgets/Button.variables.scss +8 -104
- package/src/widgets/CxCredit.scss +2 -0
- package/src/widgets/FlexBox.scss +16 -11
- package/src/widgets/Heading.scss +6 -0
- package/src/widgets/HighlightedSearchText.scss +8 -1
- package/src/widgets/Icon.scss +6 -0
- package/src/widgets/List.scss +7 -0
- package/src/widgets/List.tsx +6 -7
- package/src/widgets/ProgressBar.scss +9 -0
- package/src/widgets/Resizer.scss +9 -7
- package/src/widgets/Section.scss +53 -56
- package/src/widgets/animations.scss +4 -2
- package/src/widgets/box.scss +47 -0
- package/src/widgets/drag-drop/DragClone.scss +12 -4
- package/src/widgets/drag-drop/DragHandle.scss +12 -6
- package/src/widgets/drag-drop/DragSource.scss +12 -6
- package/src/widgets/drag-drop/DropZone.scss +9 -0
- package/src/widgets/drag-drop/DropZone.tsx +3 -3
- package/src/widgets/drag-drop/index.scss +4 -4
- package/src/widgets/drag-drop/maps.scss +7 -0
- package/src/widgets/drag-drop/variables.scss +8 -5
- package/src/widgets/form/Calendar.maps.scss +54 -0
- package/src/widgets/form/Calendar.scss +49 -11
- package/src/widgets/form/Calendar.tsx +755 -653
- package/src/widgets/form/Calendar.variables.scss +3 -46
- package/src/widgets/form/Checkbox.maps.scss +34 -0
- package/src/widgets/form/Checkbox.scss +14 -3
- package/src/widgets/form/Checkbox.variables.scss +4 -36
- package/src/widgets/form/ColorField.scss +21 -2
- package/src/widgets/form/ColorField.tsx +485 -431
- package/src/widgets/form/ColorPicker.maps.scss +21 -0
- package/src/widgets/form/ColorPicker.scss +26 -9
- package/src/widgets/form/ColorPicker.variables.scss +3 -16
- package/src/widgets/form/DateTimeField.scss +54 -21
- package/src/widgets/form/DateTimeField.tsx +697 -615
- package/src/widgets/form/DateTimePicker.scss +14 -4
- package/src/widgets/form/Field.maps.scss +122 -0
- package/src/widgets/form/Field.scss +54 -18
- package/src/widgets/form/Field.tsx +611 -504
- package/src/widgets/form/Field.variables.scss +46 -0
- package/src/widgets/form/HelpText.scss +8 -5
- package/src/widgets/form/Label.scss +10 -3
- package/src/widgets/form/LookupField.maps.scss +26 -0
- package/src/widgets/form/LookupField.scss +54 -24
- package/src/widgets/form/LookupField.tsx +25 -21
- package/src/widgets/form/MonthField.scss +48 -26
- package/src/widgets/form/MonthField.tsx +645 -567
- package/src/widgets/form/MonthPicker.maps.scss +50 -0
- package/src/widgets/form/MonthPicker.scss +44 -35
- package/src/widgets/form/MonthPicker.tsx +954 -724
- package/src/widgets/form/MonthPicker.variables.scss +24 -0
- package/src/widgets/form/NumberField.scss +19 -2
- package/src/widgets/form/NumberField.tsx +576 -466
- package/src/widgets/form/Radio.maps.scss +36 -0
- package/src/widgets/form/Radio.scss +12 -2
- package/src/widgets/form/Radio.variables.scss +3 -42
- package/src/widgets/form/Select.scss +25 -9
- package/src/widgets/form/Slider.scss +23 -14
- package/src/widgets/form/Switch.scss +18 -8
- package/src/widgets/form/TextArea.scss +14 -1
- package/src/widgets/form/TextField.scss +24 -3
- package/src/widgets/form/TextField.tsx +9 -21
- package/src/widgets/form/UploadButton.scss +14 -6
- package/src/widgets/form/ValidationError.scss +10 -6
- package/src/widgets/form/Wheel.scss +14 -4
- package/src/widgets/form/index.scss +22 -24
- package/src/widgets/form/maps.scss +81 -0
- package/src/widgets/form/variables.scss +111 -355
- package/src/widgets/grid/Grid.scss +19 -2
- package/src/widgets/grid/Grid.spec.ts +42 -0
- package/src/widgets/grid/Grid.tsx +18 -13
- package/src/widgets/grid/Pagination.scss +11 -2
- package/src/widgets/grid/Pagination.tsx +110 -102
- package/src/widgets/grid/TreeNode.scss +25 -8
- package/src/widgets/grid/TreeNode.tsx +127 -116
- package/src/widgets/grid/index.scss +3 -4
- package/src/widgets/grid/maps.scss +110 -0
- package/src/widgets/grid/variables.scss +48 -137
- package/src/widgets/icons/folder.tsx +1 -2
- package/src/widgets/icons/forward.tsx +23 -20
- package/src/widgets/icons/loading.tsx +22 -19
- package/src/widgets/icons/square.tsx +20 -17
- package/src/widgets/index.scss +16 -16
- package/src/widgets/index.ts +63 -58
- package/src/widgets/lists.scss +42 -0
- package/src/widgets/maps.scss +139 -0
- package/src/widgets/nav/Link.scss +14 -1
- package/src/widgets/nav/Menu.scss +13 -7
- package/src/widgets/nav/Menu.variables.scss +1 -12
- package/src/widgets/nav/MenuItem.scss +21 -6
- package/src/widgets/nav/Scroller.scss +11 -2
- package/src/widgets/nav/Tab.maps.scss +78 -0
- package/src/widgets/nav/Tab.scss +12 -6
- package/src/widgets/nav/Tab.variables.scss +7 -76
- package/src/widgets/nav/cover.scss +6 -4
- package/src/widgets/nav/index.scss +6 -6
- package/src/widgets/nav/maps.scss +32 -0
- package/src/widgets/nav/variables.scss +4 -11
- package/src/widgets/overlay/ContextMenu.ts +3 -0
- package/src/widgets/overlay/Dropdown.scss +47 -16
- package/src/widgets/overlay/Dropdown.tsx +851 -676
- package/src/widgets/overlay/MsgBox.tsx +125 -111
- package/src/widgets/overlay/Overlay.scss +60 -40
- package/src/widgets/overlay/Overlay.tsx +948 -800
- package/src/widgets/overlay/Toast.scss +42 -34
- package/src/widgets/overlay/Toast.ts +11 -1
- package/src/widgets/overlay/Tooltip.scss +27 -96
- package/src/widgets/overlay/Tooltip.tsx +376 -309
- package/src/widgets/overlay/Window.maps.scss +51 -0
- package/src/widgets/overlay/Window.scss +17 -17
- package/src/widgets/overlay/Window.tsx +291 -236
- package/src/widgets/overlay/Window.variables.scss +2 -43
- package/src/widgets/overlay/index.d.ts +11 -11
- package/src/widgets/overlay/index.scss +6 -15
- package/src/widgets/overlay/maps.scss +44 -0
- package/src/widgets/overlay/variables.scss +11 -42
- package/src/widgets/variables.scss +33 -117
- package/src/global.scss +0 -14
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Localization } from "../../ui/Localization";
|
|
1
2
|
import { Dropdown } from "./Dropdown";
|
|
2
3
|
import { getCursorPos } from "./captureMouse";
|
|
3
4
|
export class ContextMenu extends Dropdown {
|
|
@@ -14,6 +15,7 @@ ContextMenu.prototype.offset = 0;
|
|
|
14
15
|
ContextMenu.prototype.autoFocus = true;
|
|
15
16
|
ContextMenu.prototype.autoFocusFirstChild = false;
|
|
16
17
|
ContextMenu.prototype.focusable = true;
|
|
18
|
+
Localization.registerPrototype("cx/widgets/ContextMenu", ContextMenu);
|
|
17
19
|
export const openContextMenu = (e, content, storeOrInstance, options) => {
|
|
18
20
|
e.preventDefault();
|
|
19
21
|
e.stopPropagation();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { OverlayBase, OverlayConfig, OverlayInstance } from "./Overlay";
|
|
1
|
+
import { ConfigureOverlayContainerContext, OverlayBase, OverlayConfig, OverlayInstance } from "./Overlay";
|
|
2
2
|
import { StringProp } from "../../ui/Prop";
|
|
3
3
|
import { RenderingContext } from "../../ui/RenderingContext";
|
|
4
4
|
export interface DropdownConfig extends OverlayConfig {
|
|
@@ -115,6 +115,7 @@ export declare class DropdownBase<Config extends DropdownConfig = DropdownConfig
|
|
|
115
115
|
renderContents(context: RenderingContext, instance: InstanceType): any[];
|
|
116
116
|
render(context: RenderingContext, instance: InstanceType, key: string): any[];
|
|
117
117
|
getOverlayContainer(): HTMLElement;
|
|
118
|
+
getConfigureOverlayContainerContext(instance?: DropdownInstance): ConfigureOverlayContainerContext;
|
|
118
119
|
}
|
|
119
120
|
export declare class Dropdown extends DropdownBase<DropdownConfig, DropdownInstance> {
|
|
120
121
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/Dropdown.tsx"],"names":[],"mappings":"AAQA,OAAO,
|
|
1
|
+
{"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/Dropdown.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { calculateNaturalElementHeight } from "../../util/calculateNaturalElemen
|
|
|
7
7
|
import { closestParent, findFirst, isFocusable } from "../../util/DOM";
|
|
8
8
|
import { getTopLevelBoundingClientRect } from "../../util/getTopLevelBoundingClientRect";
|
|
9
9
|
import { isTouchDevice } from "../../util/isTouchDevice";
|
|
10
|
-
import { OverlayBase, OverlayInstance } from "./Overlay";
|
|
10
|
+
import { OverlayBase, OverlayInstance, } from "./Overlay";
|
|
11
11
|
export class DropdownInstance extends OverlayInstance {
|
|
12
12
|
mousePosition;
|
|
13
13
|
parentPositionChangeEvent;
|
|
@@ -45,7 +45,9 @@ export class DropdownBase extends OverlayBase {
|
|
|
45
45
|
}
|
|
46
46
|
overlayDidMount(instance, component) {
|
|
47
47
|
super.overlayDidMount(instance, component);
|
|
48
|
-
var scrollableParents = (component.scrollableParents = [
|
|
48
|
+
var scrollableParents = (component.scrollableParents = [
|
|
49
|
+
window,
|
|
50
|
+
]);
|
|
49
51
|
component.updateDropdownPosition = (e) => this.updateDropdownPosition(instance, component);
|
|
50
52
|
instance.initialScreenPosition = null;
|
|
51
53
|
var el = instance.relatedElement?.parentElement;
|
|
@@ -62,7 +64,8 @@ export class DropdownBase extends OverlayBase {
|
|
|
62
64
|
if (this.pipeValidateDropdownPosition)
|
|
63
65
|
instance.invoke("pipeValidateDropdownPosition", component.updateDropdownPosition, instance);
|
|
64
66
|
if (instance.parentPositionChangeEvent)
|
|
65
|
-
component.offParentPositionChange =
|
|
67
|
+
component.offParentPositionChange =
|
|
68
|
+
instance.parentPositionChangeEvent.subscribe(component.updateDropdownPosition);
|
|
66
69
|
}
|
|
67
70
|
overlayDidUpdate(instance, component) {
|
|
68
71
|
this.updateDropdownPosition(instance, component);
|
|
@@ -86,7 +89,9 @@ export class DropdownBase extends OverlayBase {
|
|
|
86
89
|
delete component.initialScreenPosition;
|
|
87
90
|
}
|
|
88
91
|
dismissAfterScroll(data, instance, component) {
|
|
89
|
-
if (this.onDismissAfterScroll &&
|
|
92
|
+
if (this.onDismissAfterScroll &&
|
|
93
|
+
instance.invoke("onDismissAfterScroll", data, instance, component) ===
|
|
94
|
+
false)
|
|
90
95
|
return;
|
|
91
96
|
if (instance.dismiss)
|
|
92
97
|
instance.dismiss();
|
|
@@ -96,7 +101,10 @@ export class DropdownBase extends OverlayBase {
|
|
|
96
101
|
var { data, relatedElement } = instance;
|
|
97
102
|
var parentBounds = getTopLevelBoundingClientRect(relatedElement);
|
|
98
103
|
//getBoundingClientRect() will return an empty rect if the element is hidden or removed
|
|
99
|
-
if (parentBounds.left == 0 &&
|
|
104
|
+
if (parentBounds.left == 0 &&
|
|
105
|
+
parentBounds.top == 0 &&
|
|
106
|
+
parentBounds.bottom == 0 &&
|
|
107
|
+
parentBounds.right == 0) {
|
|
100
108
|
if (!component.parentBounds)
|
|
101
109
|
return;
|
|
102
110
|
parentBounds = component.parentBounds;
|
|
@@ -109,7 +117,9 @@ export class DropdownBase extends OverlayBase {
|
|
|
109
117
|
if (this.trackMouseY && instance.mousePosition) {
|
|
110
118
|
parentBounds = new DOMRect(parentBounds.left, instance.mousePosition.y, parentBounds.right - parentBounds.left, 0);
|
|
111
119
|
}
|
|
112
|
-
let explode = this.pad && typeof this.elementExplode === "number"
|
|
120
|
+
let explode = this.pad && typeof this.elementExplode === "number"
|
|
121
|
+
? this.elementExplode
|
|
122
|
+
: 0;
|
|
113
123
|
if (explode) {
|
|
114
124
|
parentBounds = new DOMRect(Math.round(parentBounds.left - explode), Math.round(parentBounds.top - explode), Math.round(parentBounds.right - parentBounds.left + 2 * explode), Math.round(parentBounds.bottom - parentBounds.top + 2 * explode));
|
|
115
125
|
}
|
|
@@ -126,7 +136,8 @@ export class DropdownBase extends OverlayBase {
|
|
|
126
136
|
if (this.constrain) {
|
|
127
137
|
//recheck content size for changes as sometimes when auto is used the size can change
|
|
128
138
|
let newContentSize = this.measureNaturalDropdownSize(instance, component);
|
|
129
|
-
if (newContentSize.width != contentSize.width ||
|
|
139
|
+
if (newContentSize.width != contentSize.width ||
|
|
140
|
+
newContentSize.height != contentSize.height) {
|
|
130
141
|
let newStyle = {};
|
|
131
142
|
this.applyPositioningPlacementStyles(newStyle, placement, newContentSize, parentBounds, el, true);
|
|
132
143
|
component.setCustomStyle(newStyle);
|
|
@@ -134,8 +145,12 @@ export class DropdownBase extends OverlayBase {
|
|
|
134
145
|
}
|
|
135
146
|
if (!initialScreenPosition)
|
|
136
147
|
initialScreenPosition = component.initialScreenPosition = parentBounds;
|
|
137
|
-
if ((!this.trackMouseY &&
|
|
138
|
-
|
|
148
|
+
if ((!this.trackMouseY &&
|
|
149
|
+
Math.abs(parentBounds.top - initialScreenPosition.top) >
|
|
150
|
+
this.closeOnScrollDistance) ||
|
|
151
|
+
(!this.trackMouseX &&
|
|
152
|
+
Math.abs(parentBounds.left - initialScreenPosition.left) >
|
|
153
|
+
this.closeOnScrollDistance))
|
|
139
154
|
this.dismissAfterScroll({ parentBounds, initialScreenPosition }, instance, component);
|
|
140
155
|
instance.positionChangeSubscribers.notify();
|
|
141
156
|
}
|
|
@@ -157,7 +172,10 @@ export class DropdownBase extends OverlayBase {
|
|
|
157
172
|
? Math.max(this.screenPadding, top) + "px"
|
|
158
173
|
: "auto";
|
|
159
174
|
style.bottom =
|
|
160
|
-
document.documentElement.offsetHeight -
|
|
175
|
+
document.documentElement.offsetHeight -
|
|
176
|
+
(this.cover ? rel.bottom : rel.top) +
|
|
177
|
+
this.offset +
|
|
178
|
+
"px";
|
|
161
179
|
}
|
|
162
180
|
switch (placement) {
|
|
163
181
|
case "down":
|
|
@@ -386,29 +404,56 @@ export class DropdownBase extends OverlayBase {
|
|
|
386
404
|
var vertical = true;
|
|
387
405
|
switch (primary) {
|
|
388
406
|
case "down":
|
|
389
|
-
score[p] +=
|
|
407
|
+
score[p] +=
|
|
408
|
+
3 *
|
|
409
|
+
Math.min(1, (viewport.bottom - target.bottom - this.offset) /
|
|
410
|
+
contentSize.height);
|
|
390
411
|
break;
|
|
391
412
|
case "up":
|
|
392
|
-
score[p] +=
|
|
413
|
+
score[p] +=
|
|
414
|
+
3 *
|
|
415
|
+
Math.min(1, (target.top - viewport.top - this.offset) / contentSize.height);
|
|
393
416
|
break;
|
|
394
417
|
case "right":
|
|
395
|
-
score[p] +=
|
|
418
|
+
score[p] +=
|
|
419
|
+
target.right + contentSize.width + this.offset < viewport.right
|
|
420
|
+
? 3
|
|
421
|
+
: 0;
|
|
396
422
|
vertical = false;
|
|
397
423
|
break;
|
|
398
424
|
case "left":
|
|
399
|
-
score[p] +=
|
|
425
|
+
score[p] +=
|
|
426
|
+
target.left - contentSize.width - this.offset >= viewport.left
|
|
427
|
+
? 3
|
|
428
|
+
: 0;
|
|
400
429
|
vertical = false;
|
|
401
430
|
break;
|
|
402
431
|
}
|
|
403
432
|
switch (secondary) {
|
|
404
433
|
case "center":
|
|
405
434
|
if (vertical) {
|
|
406
|
-
score[p] +=
|
|
407
|
-
|
|
435
|
+
score[p] +=
|
|
436
|
+
(target.right + target.left - contentSize.width) / 2 >=
|
|
437
|
+
viewport.left
|
|
438
|
+
? 1
|
|
439
|
+
: 0;
|
|
440
|
+
score[p] +=
|
|
441
|
+
(target.right + target.left + contentSize.width) / 2 <
|
|
442
|
+
viewport.right
|
|
443
|
+
? 1
|
|
444
|
+
: 0;
|
|
408
445
|
}
|
|
409
446
|
else {
|
|
410
|
-
score[p] +=
|
|
411
|
-
|
|
447
|
+
score[p] +=
|
|
448
|
+
(target.bottom + target.top - contentSize.height) / 2 >=
|
|
449
|
+
viewport.top
|
|
450
|
+
? 1
|
|
451
|
+
: 0;
|
|
452
|
+
score[p] +=
|
|
453
|
+
(target.bottom + target.top + contentSize.height) / 2 <
|
|
454
|
+
viewport.bottom
|
|
455
|
+
? 1
|
|
456
|
+
: 0;
|
|
412
457
|
}
|
|
413
458
|
break;
|
|
414
459
|
case "right":
|
|
@@ -418,7 +463,8 @@ export class DropdownBase extends OverlayBase {
|
|
|
418
463
|
score[p] += target.right - contentSize.width >= viewport.left ? 2 : 0;
|
|
419
464
|
break;
|
|
420
465
|
case "up":
|
|
421
|
-
score[p] +=
|
|
466
|
+
score[p] +=
|
|
467
|
+
target.bottom - contentSize.height >= viewport.top ? 2 : 0;
|
|
422
468
|
break;
|
|
423
469
|
case "down":
|
|
424
470
|
score[p] += target.top + contentSize.height < viewport.bottom ? 2 : 0;
|
|
@@ -479,7 +525,10 @@ export class DropdownBase extends OverlayBase {
|
|
|
479
525
|
instance.setState({ dummy: {} });
|
|
480
526
|
} }, `${key}-beacon`));
|
|
481
527
|
}
|
|
482
|
-
return [
|
|
528
|
+
return [
|
|
529
|
+
beacon,
|
|
530
|
+
instance.relatedElement && super.render(context, instance, key),
|
|
531
|
+
];
|
|
483
532
|
}
|
|
484
533
|
getOverlayContainer() {
|
|
485
534
|
// this should be instance.relatedElement
|
|
@@ -490,6 +539,12 @@ export class DropdownBase extends OverlayBase {
|
|
|
490
539
|
}
|
|
491
540
|
return super.getOverlayContainer();
|
|
492
541
|
}
|
|
542
|
+
getConfigureOverlayContainerContext(instance) {
|
|
543
|
+
return {
|
|
544
|
+
...super.getConfigureOverlayContainerContext(),
|
|
545
|
+
relatedElement: instance?.relatedElement ?? this.relatedElement,
|
|
546
|
+
};
|
|
547
|
+
}
|
|
493
548
|
}
|
|
494
549
|
DropdownBase.prototype.offset = 0;
|
|
495
550
|
DropdownBase.prototype.baseClass = "dropdown";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MsgBox.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/MsgBox.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;
|
|
1
|
+
{"version":3,"file":"MsgBox.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/MsgBox.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,eAAe,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC;CACxC;AAED,qBAAa,MAAM;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EACV,OAAO,GACP,QAAQ,GACR,KAAK,GACL,eAAe,GACf,cAAc,GACd,cAAc,GACd,KAAK,CAAC;IACV,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA8C5D,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAuD/D;AASD,wBAAgB,kBAAkB,IAAI,IAAI,CAKzC"}
|
|
@@ -27,7 +27,7 @@ export class MsgBox {
|
|
|
27
27
|
resolve();
|
|
28
28
|
};
|
|
29
29
|
let w = Window.create(_jsx("cx", { children: _jsxs(Window, { title: opts.title, header: opts.header, mod: "alert", modal: true, center: true, resizable: false, closable: false, style: opts.style || "max-width: 90vw", dismissOnPopState: true, children: [opts.message || opts.items || opts.children, _jsx(FlexRow, { putInto: "footer", direction: MsgBox.prototype.footerDirection, justify: MsgBox.prototype.footerJustify, children: _jsx(Button, { mod: MsgBox.prototype.buttonMod, onClick: callback, children: opts.okText || "OK" }) })] }) }));
|
|
30
|
-
w.open(opts.store);
|
|
30
|
+
w.open(opts.store, { initiatingEvent: opts.initiatingEvent });
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
static yesNo(options) {
|
|
@@ -49,7 +49,7 @@ export class MsgBox {
|
|
|
49
49
|
resolve(option);
|
|
50
50
|
};
|
|
51
51
|
let w = Window.create(_jsx("cx", { children: _jsxs(Window, { title: opts.title, header: opts.header, mod: "alert", modal: true, center: true, resizable: false, closable: false, style: opts.style || "max-width: 90vw", dismissOnPopState: true, children: [opts.message || opts.items || opts.children, _jsxs(FlexRow, { putInto: "footer", direction: MsgBox.prototype.footerDirection, justify: MsgBox.prototype.footerJustify, hspacing: "small", children: [_jsx(Button, { mod: opts.yesButtonMod || MsgBox.prototype.buttonMod, onClick: callback("yes"), children: opts.yesText || MsgBox.prototype.yesText }), _jsx(Button, { mod: opts.noButtonMod || MsgBox.prototype.buttonMod, onClick: callback("no"), children: opts.noText || MsgBox.prototype.noText })] })] }) }));
|
|
52
|
-
w.open(opts.store);
|
|
52
|
+
w.open(opts.store, { initiatingEvent: opts.initiatingEvent });
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -72,12 +72,27 @@ export interface OverlayConfig extends StyledContainerConfig {
|
|
|
72
72
|
/** Callback for click event. */
|
|
73
73
|
onClick?: string;
|
|
74
74
|
}
|
|
75
|
+
export interface OverlayOpenOptions {
|
|
76
|
+
initiatingEvent?: React.SyntheticEvent;
|
|
77
|
+
name?: string;
|
|
78
|
+
dismiss?: () => void;
|
|
79
|
+
parentEl?: Element;
|
|
80
|
+
subscribeToBeforeDismiss?: (callback: () => boolean) => void;
|
|
81
|
+
destroyDelay?: number;
|
|
82
|
+
removeParentDOMElement?: boolean;
|
|
83
|
+
}
|
|
84
|
+
export interface ConfigureOverlayContainerContext {
|
|
85
|
+
relatedElement?: HTMLElement | null;
|
|
86
|
+
initiatingEvent?: React.SyntheticEvent;
|
|
87
|
+
}
|
|
75
88
|
export declare class OverlayInstance<WidgetType extends OverlayBase<any, any> = Overlay> extends Instance<WidgetType> {
|
|
76
89
|
positionChangeSubscribers: SubscriberList;
|
|
77
90
|
dismiss?: () => void;
|
|
78
91
|
onBeforeDismiss?: () => boolean;
|
|
92
|
+
beaconEl?: HTMLElement | null;
|
|
79
93
|
}
|
|
80
94
|
export declare class OverlayBase<Config extends OverlayConfig = OverlayConfig, InstanceType extends OverlayInstance<any> = OverlayInstance<any>> extends ContainerBase<Config, InstanceType> {
|
|
95
|
+
static configureOverlayContainer?: (containerEl: HTMLElement, context: ConfigureOverlayContainerContext) => void;
|
|
81
96
|
styled: true;
|
|
82
97
|
baseClass: string;
|
|
83
98
|
resizable?: BooleanProp;
|
|
@@ -110,6 +125,7 @@ export declare class OverlayBase<Config extends OverlayConfig = OverlayConfig, I
|
|
|
110
125
|
overlayWillDismiss?: (instance: Instance, component: any) => boolean;
|
|
111
126
|
style?: any;
|
|
112
127
|
pad?: boolean;
|
|
128
|
+
needsBeacon: boolean;
|
|
113
129
|
init(): void;
|
|
114
130
|
declareData(...args: any[]): void;
|
|
115
131
|
prepareData(context: RenderingContext, instance: InstanceType): void;
|
|
@@ -118,6 +134,7 @@ export declare class OverlayBase<Config extends OverlayConfig = OverlayConfig, I
|
|
|
118
134
|
exploreCleanup(context: RenderingContext, instance: InstanceType): void;
|
|
119
135
|
render(context: RenderingContext, instance: InstanceType, key: string): any;
|
|
120
136
|
renderContents(context: RenderingContext, instance: InstanceType): any;
|
|
137
|
+
getConfigureOverlayContainerContext(instance?: InstanceType, initiatingEvent?: React.SyntheticEvent): ConfigureOverlayContainerContext;
|
|
121
138
|
overlayDidMount(instance: InstanceType, component: any): void;
|
|
122
139
|
overlayDidUpdate(instance: InstanceType, component: any): void;
|
|
123
140
|
overlayWillUnmount(instance: InstanceType, component: any): void;
|
|
@@ -126,8 +143,8 @@ export declare class OverlayBase<Config extends OverlayConfig = OverlayConfig, I
|
|
|
126
143
|
handleMouseLeave(instance: InstanceType, component: any): void;
|
|
127
144
|
handleMouseEnter(instance: InstanceType, component: any): void;
|
|
128
145
|
getOverlayContainer(): HTMLElement;
|
|
129
|
-
containerFactory(): HTMLElement;
|
|
130
|
-
open(storeOrInstance?: View | Instance, options?:
|
|
146
|
+
containerFactory(instance?: InstanceType, initiatingEvent?: React.SyntheticEvent): HTMLElement;
|
|
147
|
+
open(storeOrInstance?: View | Instance, options?: OverlayOpenOptions): () => void;
|
|
131
148
|
handleMove(e: any, instance: InstanceType, component: any): void;
|
|
132
149
|
handleResize(e: any, instance: InstanceType, component: any): void;
|
|
133
150
|
}
|
|
@@ -138,6 +155,7 @@ export interface OverlayComponentProps {
|
|
|
138
155
|
parentEl?: HTMLElement;
|
|
139
156
|
subscribeToBeforeDismiss?: (cb: () => boolean) => void;
|
|
140
157
|
children: any;
|
|
158
|
+
beaconEl: HTMLElement | null;
|
|
141
159
|
}
|
|
142
160
|
export interface OverlayComponentState {
|
|
143
161
|
animated?: boolean;
|
|
@@ -185,4 +203,16 @@ export declare class OverlayComponent<Props extends OverlayComponentProps = Over
|
|
|
185
203
|
overlayDidUpdate(): void;
|
|
186
204
|
componentDidUpdate(): void;
|
|
187
205
|
}
|
|
206
|
+
interface OverlayBeaconProps {
|
|
207
|
+
childrenFactory: (beacon: HTMLElement) => React.ReactNode;
|
|
208
|
+
}
|
|
209
|
+
export interface OverlayBeaconState {
|
|
210
|
+
children?: React.ReactNode;
|
|
211
|
+
}
|
|
212
|
+
export declare class OverlayBeacon extends VDOM.Component<OverlayBeaconProps, OverlayBeaconState> {
|
|
213
|
+
el: HTMLElement | null;
|
|
214
|
+
render(): import("react/jsx-runtime").JSX.Element;
|
|
215
|
+
componentDidMount(): void;
|
|
216
|
+
}
|
|
217
|
+
export {};
|
|
188
218
|
//# sourceMappingURL=Overlay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/Overlay.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGrC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAU,MAAM,iBAAiB,CAAC;AAU/C,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAa3D,MAAM,WAAW,aAAc,SAAQ,qBAAqB;
|
|
1
|
+
{"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/Overlay.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { isBinding, isBindingObject } from "../../data/Binding";
|
|
3
3
|
import { startAppLoop } from "../../ui/app/startAppLoop";
|
|
4
4
|
import { ContainerBase } from "../../ui/Container";
|
|
@@ -21,6 +21,7 @@ export class OverlayInstance extends Instance {
|
|
|
21
21
|
onBeforeDismiss;
|
|
22
22
|
}
|
|
23
23
|
export class OverlayBase extends ContainerBase {
|
|
24
|
+
static configureOverlayContainer;
|
|
24
25
|
init() {
|
|
25
26
|
if (this.center)
|
|
26
27
|
this.centerX = this.centerY = this.center;
|
|
@@ -83,11 +84,19 @@ export class OverlayBase extends ContainerBase {
|
|
|
83
84
|
context.pop("parentPositionChangeEvent");
|
|
84
85
|
}
|
|
85
86
|
render(context, instance, key) {
|
|
86
|
-
|
|
87
|
+
if (this.needsBeacon)
|
|
88
|
+
return (_jsx(OverlayBeacon, { childrenFactory: (beaconEl) => (_jsx(OverlayComponent, { beaconEl: beaconEl, instance: instance, subscribeToBeforeDismiss: context.options.subscribeToBeforeDismiss, parentEl: context.options.parentEl, children: this.renderContents(context, instance) })) }, key));
|
|
89
|
+
return (_jsx(OverlayComponent, { beaconEl: null, instance: instance, subscribeToBeforeDismiss: context.options.subscribeToBeforeDismiss, parentEl: context.options.parentEl, children: this.renderContents(context, instance) }));
|
|
87
90
|
}
|
|
88
91
|
renderContents(context, instance) {
|
|
89
92
|
return this.renderChildren(context, instance);
|
|
90
93
|
}
|
|
94
|
+
getConfigureOverlayContainerContext(instance, initiatingEvent) {
|
|
95
|
+
return {
|
|
96
|
+
initiatingEvent,
|
|
97
|
+
relatedElement: instance?.beaconEl,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
91
100
|
overlayDidMount(instance, component) {
|
|
92
101
|
let { el } = component;
|
|
93
102
|
if (this.centerX)
|
|
@@ -106,7 +115,8 @@ export class OverlayBase extends ContainerBase {
|
|
|
106
115
|
instance.dismiss();
|
|
107
116
|
}
|
|
108
117
|
handleKeyDown(e, instance, component) {
|
|
109
|
-
if (this.onKeyDown &&
|
|
118
|
+
if (this.onKeyDown &&
|
|
119
|
+
instance.invoke("onKeyDown", e, instance, component) === false)
|
|
110
120
|
return false;
|
|
111
121
|
if (this.closeOnEscape && e.keyCode == KeyCode.esc && instance.dismiss) {
|
|
112
122
|
instance.dismiss();
|
|
@@ -124,19 +134,21 @@ export class OverlayBase extends ContainerBase {
|
|
|
124
134
|
getOverlayContainer() {
|
|
125
135
|
return document.body;
|
|
126
136
|
}
|
|
127
|
-
containerFactory() {
|
|
137
|
+
containerFactory(instance, initiatingEvent) {
|
|
128
138
|
let el = document.createElement("div");
|
|
129
139
|
let container = this.getOverlayContainer();
|
|
130
140
|
container.appendChild(el);
|
|
131
141
|
el.style.position = "absolute";
|
|
132
142
|
if (this.containerStyle)
|
|
133
143
|
Object.assign(el.style, parseStyle(this.containerStyle));
|
|
144
|
+
if (OverlayBase.configureOverlayContainer)
|
|
145
|
+
OverlayBase.configureOverlayContainer(el, this.getConfigureOverlayContainerContext(instance, initiatingEvent));
|
|
134
146
|
return el;
|
|
135
147
|
}
|
|
136
148
|
open(storeOrInstance, options) {
|
|
137
149
|
if (!this.initialized)
|
|
138
150
|
this.init();
|
|
139
|
-
let el = this.containerFactory();
|
|
151
|
+
let el = this.containerFactory(undefined, options?.initiatingEvent);
|
|
140
152
|
el.style.display = "hidden";
|
|
141
153
|
let beforeDismiss = null;
|
|
142
154
|
let stop;
|
|
@@ -161,7 +173,8 @@ export class OverlayBase extends ContainerBase {
|
|
|
161
173
|
}
|
|
162
174
|
handleMove(e, instance, component) {
|
|
163
175
|
let { widget } = instance;
|
|
164
|
-
if (!widget.onMove ||
|
|
176
|
+
if (!widget.onMove ||
|
|
177
|
+
instance.invoke("onMove", e, instance, component) !== false) {
|
|
165
178
|
instance.store.silently(() => {
|
|
166
179
|
if (isDataRecord(this.style) && isBindingObject(this.style.top)) {
|
|
167
180
|
instance.store.set(this.style.top.bind, component.el.style.top);
|
|
@@ -175,7 +188,8 @@ export class OverlayBase extends ContainerBase {
|
|
|
175
188
|
}
|
|
176
189
|
handleResize(e, instance, component) {
|
|
177
190
|
let { widget } = instance;
|
|
178
|
-
if (!widget.onResize ||
|
|
191
|
+
if (!widget.onResize ||
|
|
192
|
+
instance.invoke("onResize", e, instance, component) !== false) {
|
|
179
193
|
instance.store.silently(() => {
|
|
180
194
|
if (isDataRecord(this.style) && isBindingObject(this.style.width)) {
|
|
181
195
|
instance.store.set(this.style.width.bind, component.el.style.width);
|
|
@@ -208,6 +222,7 @@ OverlayBase.prototype.focusable = false;
|
|
|
208
222
|
OverlayBase.prototype.containerStyle = undefined;
|
|
209
223
|
OverlayBase.prototype.dismissOnPopState = false;
|
|
210
224
|
OverlayBase.prototype.closeOnEscape = false;
|
|
225
|
+
OverlayBase.prototype.needsBeacon = false;
|
|
211
226
|
export class Overlay extends OverlayBase {
|
|
212
227
|
}
|
|
213
228
|
Widget.alias("overlay", Overlay);
|
|
@@ -236,14 +251,15 @@ export class OverlayComponent extends VDOM.Component {
|
|
|
236
251
|
if (widget.inline || parentEl)
|
|
237
252
|
return this.renderOverlay();
|
|
238
253
|
if (!this.containerEl) {
|
|
239
|
-
|
|
254
|
+
instance.beaconEl = this.props.beaconEl;
|
|
255
|
+
this.ownedEl = widget.containerFactory(instance);
|
|
240
256
|
this.ownedEl.style.display = "hidden";
|
|
241
257
|
this.containerEl = this.ownedEl;
|
|
242
258
|
}
|
|
243
|
-
if
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
259
|
+
// content is rendered in componentDidUpdate if portals are not supported
|
|
260
|
+
return VDOM.DOM.createPortal
|
|
261
|
+
? VDOM.DOM.createPortal(this.renderOverlay(), this.containerEl)
|
|
262
|
+
: null;
|
|
247
263
|
}
|
|
248
264
|
renderOverlay() {
|
|
249
265
|
let { widget, data } = this.props.instance;
|
|
@@ -324,7 +340,8 @@ export class OverlayComponent extends VDOM.Component {
|
|
|
324
340
|
onMouseDown(e) {
|
|
325
341
|
let { instance } = this.props;
|
|
326
342
|
let { widget, data } = instance;
|
|
327
|
-
if (widget.onMouseDown &&
|
|
343
|
+
if (widget.onMouseDown &&
|
|
344
|
+
instance.invoke("onMouseDown", e, instance) === false)
|
|
328
345
|
return;
|
|
329
346
|
let prefix = this.getResizePrefix(e);
|
|
330
347
|
if (prefix) {
|
|
@@ -441,7 +458,8 @@ export class OverlayComponent extends VDOM.Component {
|
|
|
441
458
|
onBeforeDismiss() {
|
|
442
459
|
let { instance } = this.props;
|
|
443
460
|
let { widget } = instance;
|
|
444
|
-
if (widget.overlayWillDismiss &&
|
|
461
|
+
if (widget.overlayWillDismiss &&
|
|
462
|
+
widget.overlayWillDismiss(instance, this) === false)
|
|
445
463
|
return false;
|
|
446
464
|
this.dismissed = true;
|
|
447
465
|
//this.el might be null if visible is set to false
|
|
@@ -468,7 +486,8 @@ export class OverlayComponent extends VDOM.Component {
|
|
|
468
486
|
if (childHasFocus)
|
|
469
487
|
oneFocusOut(this, this.el, this.onFocusOut.bind(this));
|
|
470
488
|
else {
|
|
471
|
-
if (!widget.autoFocusFirstChild ||
|
|
489
|
+
if (!widget.autoFocusFirstChild ||
|
|
490
|
+
!FocusManager.focusFirstChild(this.el))
|
|
472
491
|
if (widget.focusable && widget.autoFocus)
|
|
473
492
|
FocusManager.focus(this.el);
|
|
474
493
|
}
|
|
@@ -498,7 +517,8 @@ export class OverlayComponent extends VDOM.Component {
|
|
|
498
517
|
//such that its scrollbar is not at the very end
|
|
499
518
|
let scrollAllowed = false;
|
|
500
519
|
closest(e.target, (el) => {
|
|
501
|
-
if ((e.deltaY > 0 &&
|
|
520
|
+
if ((e.deltaY > 0 &&
|
|
521
|
+
el.scrollTop < el.scrollHeight - el.clientHeight) ||
|
|
502
522
|
(e.deltaY < 0 && el.scrollTop > 0)) {
|
|
503
523
|
scrollAllowed = true;
|
|
504
524
|
return true;
|
|
@@ -596,3 +616,14 @@ export class OverlayComponent extends VDOM.Component {
|
|
|
596
616
|
this.overlayDidUpdate();
|
|
597
617
|
}
|
|
598
618
|
}
|
|
619
|
+
export class OverlayBeacon extends VDOM.Component {
|
|
620
|
+
el;
|
|
621
|
+
render() {
|
|
622
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { ref: (el) => {
|
|
623
|
+
this.el = el;
|
|
624
|
+
}, style: { position: "absolute", display: "none" } }), this.state?.children] }));
|
|
625
|
+
}
|
|
626
|
+
componentDidMount() {
|
|
627
|
+
this.setState({ children: this.props.childrenFactory(this.el) });
|
|
628
|
+
}
|
|
629
|
+
}
|
|
@@ -23,6 +23,6 @@ export declare class Toast extends OverlayBase<ToastConfig, OverlayInstance> {
|
|
|
23
23
|
overlayDidUpdate(instance: OverlayInstance, component: any): void;
|
|
24
24
|
overlayDidMount(instance: OverlayInstance, component: any): void;
|
|
25
25
|
overlayWillUnmount(instance: OverlayInstance, component: any): void;
|
|
26
|
-
containerFactory(): HTMLElement;
|
|
26
|
+
containerFactory(instance?: OverlayInstance, initiatingEvent?: React.SyntheticEvent): HTMLElement;
|
|
27
27
|
}
|
|
28
28
|
//# sourceMappingURL=Toast.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/Toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAe,MAAM,eAAe,CAAC;AAEpE,MAAM,WAAW,WAAY,SAAQ,aAAa;IAC/C,yFAAyF;IACzF,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB,8CAA8C;IAC9C,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,KAAM,SAAQ,WAAW,CAAC,WAAW,EAAE,eAAe,CAAC;IACzD,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IAE3B,IAAI,IAAI,IAAI;IASZ,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI;IAMrD,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IASvE,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAQjE,eAAe,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAShE,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAOnE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../src/widgets/overlay/Toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAe,MAAM,eAAe,CAAC;AAEpE,MAAM,WAAW,WAAY,SAAQ,aAAa;IAC/C,yFAAyF;IACzF,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB,8CAA8C;IAC9C,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,KAAM,SAAQ,WAAW,CAAC,WAAW,EAAE,eAAe,CAAC;IACzD,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IAE3B,IAAI,IAAI,IAAI;IASZ,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI;IAMrD,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IASvE,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAQjE,eAAe,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAShE,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAOnE,gBAAgB,CACb,QAAQ,CAAC,EAAE,eAAe,EAC1B,eAAe,CAAC,EAAE,KAAK,CAAC,cAAc,GACtC,WAAW;CAiBhB"}
|
|
@@ -44,9 +44,11 @@ export class Toast extends OverlayBase {
|
|
|
44
44
|
if (component.timeoutTimer)
|
|
45
45
|
clearTimeout(component.timeoutTimer);
|
|
46
46
|
}
|
|
47
|
-
containerFactory() {
|
|
47
|
+
containerFactory(instance, initiatingEvent) {
|
|
48
48
|
let el = document.createElement("div");
|
|
49
49
|
el.className = this.CSS.element("toaster", "item");
|
|
50
|
+
if (OverlayBase.configureOverlayContainer)
|
|
51
|
+
OverlayBase.configureOverlayContainer(el, this.getConfigureOverlayContainerContext(instance, initiatingEvent));
|
|
50
52
|
let placement = this.placement || "top";
|
|
51
53
|
let toaster = getToaster(placement);
|
|
52
54
|
toaster.el.className = this.CSS.block("toaster", null, {
|
|
@@ -74,3 +76,4 @@ Toast.prototype.animate = true;
|
|
|
74
76
|
Toast.prototype.baseClass = "toast";
|
|
75
77
|
Toast.prototype.placement = "top";
|
|
76
78
|
Toast.prototype.destroyDelay = 300;
|
|
79
|
+
Toast.prototype.needsBeacon = true;
|
|
@@ -4,6 +4,8 @@ import { TooltipConfig, TooltipParentInstance, TooltipProp } from "./tooltip-ops
|
|
|
4
4
|
import { RenderingContext } from "../../ui/RenderingContext";
|
|
5
5
|
import { StringProp, BooleanProp } from "../../ui/Prop";
|
|
6
6
|
import { Instance } from "../../ui/Instance";
|
|
7
|
+
import { OverlayOpenOptions } from "./Overlay";
|
|
8
|
+
import { View } from "../../data/View";
|
|
7
9
|
export declare class TooltipInstance extends DropdownInstance<Tooltip> {
|
|
8
10
|
tooltipComponent?: any;
|
|
9
11
|
parentValidityCheckTimer?: NodeJS.Timeout;
|
|
@@ -18,6 +20,9 @@ export declare class TooltipInstance extends DropdownInstance<Tooltip> {
|
|
|
18
20
|
store: ReadOnlyDataView;
|
|
19
21
|
parent: Instance & TooltipParentInstance;
|
|
20
22
|
}
|
|
23
|
+
export interface TooltipOpenOptions extends OverlayOpenOptions {
|
|
24
|
+
onPipeUpdate?: (callback: () => boolean) => void;
|
|
25
|
+
}
|
|
21
26
|
export declare class TooltipBase<Config extends TooltipConfig = TooltipConfig, InstanceType extends TooltipInstance = TooltipInstance> extends DropdownBase<Config, InstanceType> {
|
|
22
27
|
text?: StringProp;
|
|
23
28
|
title?: StringProp;
|
|
@@ -42,6 +47,7 @@ export declare class TooltipBase<Config extends TooltipConfig = TooltipConfig, I
|
|
|
42
47
|
dismissTooltip(instance: InstanceType): void;
|
|
43
48
|
dismissAfterScroll(data: any, instance: InstanceType): void;
|
|
44
49
|
checkVisible(context: RenderingContext, instance: InstanceType, data: any): boolean;
|
|
50
|
+
open(storeOrInstance?: View | Instance, options?: TooltipOpenOptions): () => void;
|
|
45
51
|
}
|
|
46
52
|
export declare class Tooltip extends TooltipBase {
|
|
47
53
|
}
|