@interopio/groups-ui-react 3.0.0 → 3.0.1
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/cjs/defaultComponents/hooks/useExternalWindowPopup.d.ts +2 -0
- package/dist/cjs/defaultComponents/hooks/useExternalWindowPopupClosed.d.ts +1 -0
- package/dist/cjs/defaultComponents/hooks/useExternalWindowPopupHidden.d.ts +1 -0
- package/dist/cjs/defaultComponents/hooks/useMoveResizeWindow.d.ts +2 -0
- package/dist/cjs/defaultComponents/hooks/useShowPopupWindow.d.ts +2 -0
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +204 -352
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/api.d.ts +36 -1
- package/dist/cjs/types/internal.d.ts +12 -0
- package/dist/cjs/webGroupsManager.d.ts +2 -1
- package/dist/cjs/webGroupsStore.d.ts +3 -0
- package/dist/esm/defaultComponents/hooks/useExternalWindowPopup.d.ts +2 -0
- package/dist/esm/defaultComponents/hooks/useExternalWindowPopupClosed.d.ts +1 -0
- package/dist/esm/defaultComponents/hooks/useExternalWindowPopupHidden.d.ts +1 -0
- package/dist/esm/defaultComponents/hooks/useMoveResizeWindow.d.ts +2 -0
- package/dist/esm/defaultComponents/hooks/useShowPopupWindow.d.ts +2 -0
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.js +347 -513
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/api.d.ts +36 -1
- package/dist/esm/types/internal.d.ts +12 -0
- package/dist/esm/webGroupsManager.d.ts +2 -1
- package/dist/esm/webGroupsStore.d.ts +3 -0
- package/dist/styles/groups.css +39 -25
- package/dist/styles/vars.css +1 -1
- package/package.json +3 -2
package/dist/esm/types/api.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { Bounds, ButtonProps, Location, OverflowedTabInfo, StylesOptions, ToggleButtonProps } from "./internal";
|
|
2
|
+
import { Bounds, ButtonProps, Location, OverflowedTabInfo, PopupTargetLocation, Size, StylesOptions, ToggleButtonProps } from "./internal";
|
|
3
3
|
import { CustomButtonProps } from "./defaultComponents";
|
|
4
4
|
export interface ChannelProps {
|
|
5
5
|
visible: boolean;
|
|
@@ -54,6 +54,7 @@ export interface TabOverflowPopupProps {
|
|
|
54
54
|
frameId: string;
|
|
55
55
|
select: (windowId: string) => void;
|
|
56
56
|
close: (windowId: string) => void;
|
|
57
|
+
resize?: (size: Size) => void;
|
|
57
58
|
hiddenTabsToTheLeft: OverflowedTabInfo[];
|
|
58
59
|
hiddenTabsToTheRight: OverflowedTabInfo[];
|
|
59
60
|
}
|
|
@@ -193,4 +194,38 @@ export interface OpenTabOverflowPopupOptions {
|
|
|
193
194
|
frameId: string;
|
|
194
195
|
location: Location;
|
|
195
196
|
}
|
|
197
|
+
export interface CreatePopupOptions {
|
|
198
|
+
left?: number;
|
|
199
|
+
top?: number;
|
|
200
|
+
width?: number;
|
|
201
|
+
height?: number;
|
|
202
|
+
roundedCorners?: boolean;
|
|
203
|
+
hasSizeAreas?: boolean;
|
|
204
|
+
hasMoveAreas?: boolean;
|
|
205
|
+
transparent?: boolean;
|
|
206
|
+
copyStyles?: boolean;
|
|
207
|
+
}
|
|
208
|
+
export interface PopupShowOptions {
|
|
209
|
+
targetBounds?: Bounds;
|
|
210
|
+
size?: Size;
|
|
211
|
+
targetLocation?: PopupTargetLocation;
|
|
212
|
+
focus?: boolean;
|
|
213
|
+
horizontalOffset?: number;
|
|
214
|
+
verticalOffset?: number;
|
|
215
|
+
}
|
|
216
|
+
export interface PopupWindow {
|
|
217
|
+
ioConnectWindow: any;
|
|
218
|
+
browserWindow: Window;
|
|
219
|
+
}
|
|
220
|
+
export interface ExternalWindowPopupResult {
|
|
221
|
+
getContainer: () => HTMLElement | null;
|
|
222
|
+
createPopup: (options?: CreatePopupOptions) => Promise<PopupWindow | null>;
|
|
223
|
+
showPopup: (options?: PopupShowOptions) => Promise<void>;
|
|
224
|
+
resizePopup: (size: Size) => Promise<void>;
|
|
225
|
+
hidePopup: () => Promise<void>;
|
|
226
|
+
closePopup: () => Promise<void>;
|
|
227
|
+
isOpen: boolean;
|
|
228
|
+
isVisible: boolean;
|
|
229
|
+
popup: PopupWindow | null;
|
|
230
|
+
}
|
|
196
231
|
export {};
|
|
@@ -288,6 +288,7 @@ export interface ElementCreationWrapperState {
|
|
|
288
288
|
[targetId: string]: CreateButtonsOptions;
|
|
289
289
|
};
|
|
290
290
|
}
|
|
291
|
+
export declare type IndexableElementCreationWrapperState = Omit<Omit<ElementCreationWrapperState, "groupCaptionBar">, "groupOverlay">;
|
|
291
292
|
export interface ExternalLibraryFactory {
|
|
292
293
|
readonly groupId: string;
|
|
293
294
|
focusPage(): void;
|
|
@@ -310,6 +311,7 @@ export interface ExternalLibraryFactory {
|
|
|
310
311
|
updateFrameStyles(styles: StylesOptions): void;
|
|
311
312
|
selectTab(windowId: string): void;
|
|
312
313
|
openTabOverflowPopup(frameId: string, location: Location): void;
|
|
314
|
+
resizeTabOverflowPopup(frameId: string, size: Size): void;
|
|
313
315
|
addTabContainerClass(windowId: string, className: string): void;
|
|
314
316
|
removeTabContainerClass(windowId: string, className: string): void;
|
|
315
317
|
}
|
|
@@ -337,4 +339,14 @@ export interface StylesOptions {
|
|
|
337
339
|
}
|
|
338
340
|
export interface Bounds extends Size, Location {
|
|
339
341
|
}
|
|
342
|
+
export declare type PopupTargetLocation = "top" | "bottom" | "left" | "right" | "none";
|
|
343
|
+
export interface ExternalWindowPopup {
|
|
344
|
+
browserWindow?: Window;
|
|
345
|
+
ioConnectWindow?: any;
|
|
346
|
+
}
|
|
347
|
+
export interface ShowExternalWindowPopupConfig {
|
|
348
|
+
targetBounds: Bounds;
|
|
349
|
+
size: Size;
|
|
350
|
+
targetLocation: PopupTargetLocation;
|
|
351
|
+
}
|
|
340
352
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bounds, Location, StylesOptions, TargetType } from "./types/internal";
|
|
1
|
+
import { Bounds, Location, Size, StylesOptions, TargetType } from "./types/internal";
|
|
2
2
|
declare class WebGroupsManagerDecorator {
|
|
3
3
|
private readonly registry;
|
|
4
4
|
readonly skipFocusStyle = "t42-skip-focus";
|
|
@@ -44,6 +44,7 @@ declare class WebGroupsManagerDecorator {
|
|
|
44
44
|
addTabContainerClass(windowId: string, className: string): void;
|
|
45
45
|
removeTabContainerClass(windowId: string, className: string): void;
|
|
46
46
|
openTabOverflowPopup(frameId: string, location: Location): void;
|
|
47
|
+
resizeTabOverflowPopup(frameId: string, size: Size): void;
|
|
47
48
|
}
|
|
48
49
|
declare const _default: WebGroupsManagerDecorator;
|
|
49
50
|
export default _default;
|
|
@@ -60,6 +60,9 @@ declare class WebGroupsStore {
|
|
|
60
60
|
private onHideTabCaptionEditorRequested;
|
|
61
61
|
private onShowLoadingAnimation;
|
|
62
62
|
private onHideLoadingAnimation;
|
|
63
|
+
private onCreateElementRequested;
|
|
64
|
+
private onUpdateElementRequested;
|
|
65
|
+
private onRemoveElementRequested;
|
|
63
66
|
private setState;
|
|
64
67
|
}
|
|
65
68
|
declare const _default: WebGroupsStore;
|
package/dist/styles/groups.css
CHANGED
|
@@ -919,9 +919,9 @@ input {
|
|
|
919
919
|
.t42-tabs-overflow.t42-tabs-fade-right {
|
|
920
920
|
-webkit-mask-image: linear-gradient(
|
|
921
921
|
-90deg,
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
922
|
+
rgba(0, 0, 0, 0) 0,
|
|
923
|
+
rgba(0, 0, 0, 0.3) calc(var(--t42-tab-bar-fade-size) / 100 * 30),
|
|
924
|
+
rgba(0, 0, 0, 0.8) calc(var(--t42-tab-bar-fade-size) / 100 * 80),
|
|
925
925
|
rgba(0, 0, 0, 1) var(--t42-tab-bar-fade-size)
|
|
926
926
|
);
|
|
927
927
|
}
|
|
@@ -929,9 +929,9 @@ input {
|
|
|
929
929
|
.t42-tabs-overflow.t42-tabs-fade-left {
|
|
930
930
|
-webkit-mask-image: linear-gradient(
|
|
931
931
|
90deg,
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
932
|
+
rgba(0, 0, 0, 0) 0,
|
|
933
|
+
rgba(0, 0, 0, 0.3) calc(var(--t42-tab-bar-fade-size) / 100 * 30),
|
|
934
|
+
rgba(0, 0, 0, 0.8) calc(var(--t42-tab-bar-fade-size) / 100 * 80),
|
|
935
935
|
rgba(0, 0, 0, 1) var(--t42-tab-bar-fade-size)
|
|
936
936
|
);
|
|
937
937
|
}
|
|
@@ -939,13 +939,13 @@ input {
|
|
|
939
939
|
.t42-tabs-overflow.t42-tabs-fade-both {
|
|
940
940
|
-webkit-mask-image: linear-gradient(
|
|
941
941
|
90deg,
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
942
|
+
rgba(0, 0, 0, 0) 0%,
|
|
943
|
+
rgba(0, 0, 0, 0.3) calc(var(--t42-tab-bar-fade-size) / 100 * 30),
|
|
944
|
+
rgba(0, 0, 0, 0.8) calc(var(--t42-tab-bar-fade-size) / 100 * 80),
|
|
945
|
+
rgba(0, 0, 0, 1) var(--t42-tab-bar-fade-size),
|
|
946
|
+
rgba(0, 0, 0, 1) calc(100% - var(--t42-tab-bar-fade-size)),
|
|
947
|
+
rgba(0, 0, 0, 0.8) calc(100% - (var(--t42-tab-bar-fade-size) / 100 * 80)),
|
|
948
|
+
rgba(0, 0, 0, 0.3) calc(100% - (var(--t42-tab-bar-fade-size) / 100 * 30)),
|
|
949
949
|
rgba(0, 0, 0, 0) 100%
|
|
950
950
|
);
|
|
951
951
|
}
|
|
@@ -954,7 +954,17 @@ input {
|
|
|
954
954
|
position: absolute;
|
|
955
955
|
z-index: 999;
|
|
956
956
|
margin-top: var(--t42-wg-tab-over-top-offset);
|
|
957
|
+
}
|
|
958
|
+
|
|
959
|
+
.t42-external-page-popup {
|
|
960
|
+
position: absolute;
|
|
961
|
+
z-index: 999;
|
|
962
|
+
background-color: transparent;
|
|
963
|
+
height: fit-content;
|
|
964
|
+
}
|
|
957
965
|
|
|
966
|
+
.t42-external-page-popup .t42-tab-overflow-popup {
|
|
967
|
+
--t42-wg-tab-over-max-height: none;
|
|
958
968
|
}
|
|
959
969
|
|
|
960
970
|
.t42-tab-overflow-popup {
|
|
@@ -970,6 +980,10 @@ input {
|
|
|
970
980
|
background-color: var(--t42-wg-tab-over-background);
|
|
971
981
|
}
|
|
972
982
|
|
|
983
|
+
.renderer-mode-keycolor .t42-tab-overflow-popup {
|
|
984
|
+
border-radius: 0px;
|
|
985
|
+
}
|
|
986
|
+
|
|
973
987
|
.t42-tab-overflow-popup li {
|
|
974
988
|
display: flex;
|
|
975
989
|
gap: var(--t42-wg-tab-over-item-gap);
|
|
@@ -1049,8 +1063,8 @@ input {
|
|
|
1049
1063
|
.t42-multi-channel-selector-2 {
|
|
1050
1064
|
background-image: conic-gradient(
|
|
1051
1065
|
var(--t42-multi-channel-selector-2-color-1) 0deg,
|
|
1052
|
-
|
|
1053
|
-
|
|
1066
|
+
var(--t42-multi-channel-selector-2-color-1) 180deg,
|
|
1067
|
+
var(--t42-multi-channel-selector-2-color-2) 180deg,
|
|
1054
1068
|
var(--t42-multi-channel-selector-2-color-2) 0deg
|
|
1055
1069
|
);
|
|
1056
1070
|
mask-image: var(--t42-multi-channel-selector-2-mask);
|
|
@@ -1059,10 +1073,10 @@ input {
|
|
|
1059
1073
|
.t42-multi-channel-selector-3 {
|
|
1060
1074
|
background-image: conic-gradient(
|
|
1061
1075
|
var(--t42-multi-channel-selector-3-color-1) 0deg,
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1076
|
+
var(--t42-multi-channel-selector-3-color-1) 120deg,
|
|
1077
|
+
var(--t42-multi-channel-selector-3-color-2) 120deg,
|
|
1078
|
+
var(--t42-multi-channel-selector-3-color-2) 240deg,
|
|
1079
|
+
var(--t42-multi-channel-selector-3-color-3) 240deg,
|
|
1066
1080
|
var(--t42-multi-channel-selector-3-color-3) 0deg
|
|
1067
1081
|
);
|
|
1068
1082
|
mask-image: var(--t42-multi-channel-selector-3-mask);
|
|
@@ -1071,12 +1085,12 @@ input {
|
|
|
1071
1085
|
.t42-multi-channel-selector-4 {
|
|
1072
1086
|
background-image: conic-gradient(
|
|
1073
1087
|
var(--t42-multi-channel-selector-4-color-1) 0deg,
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1088
|
+
var(--t42-multi-channel-selector-4-color-1) 90deg,
|
|
1089
|
+
var(--t42-multi-channel-selector-4-color-2) 90deg,
|
|
1090
|
+
var(--t42-multi-channel-selector-4-color-2) 180deg,
|
|
1091
|
+
var(--t42-multi-channel-selector-4-color-3) 180deg,
|
|
1092
|
+
var(--t42-multi-channel-selector-4-color-3) 270deg,
|
|
1093
|
+
var(--t42-multi-channel-selector-4-color-4) 270deg,
|
|
1080
1094
|
var(--t42-multi-channel-selector-4-color-4) 0deg
|
|
1081
1095
|
);
|
|
1082
1096
|
mask-image: var(--t42-multi-channel-selector-4-mask);
|
package/dist/styles/vars.css
CHANGED
|
@@ -877,7 +877,7 @@ body .ace-jsoneditor .ace_fold-widget:hover,body .ace-jsoneditor .ace_fold-widge
|
|
|
877
877
|
--t42-caption-bar-button-close-hover-background: var(--io-red-700);
|
|
878
878
|
--t42-caption-bar-button-close-hover-text: var(--io-neutrals-0);
|
|
879
879
|
|
|
880
|
-
--t42-sizing-border-group-color:
|
|
880
|
+
--t42-sizing-border-group-color: var(--window-header-background);
|
|
881
881
|
--t42-hover-sizing-border-group-color: var(--io-blue-600);
|
|
882
882
|
--t42-active-sizing-border-group-color: var(--io-blue-700);
|
|
883
883
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@interopio/groups-ui-react",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.1",
|
|
4
4
|
"description": "React library for building a Web Group App for io.Connect Desktop.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"interop",
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
"clean": ""
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
+
"@interopio/components-react": "^0.8.2",
|
|
35
36
|
"@interopio/theme": "3.1.0",
|
|
36
37
|
"callback-registry": "^2.7.2",
|
|
37
38
|
"color2k": "^2.0.0",
|
|
@@ -92,4 +93,4 @@
|
|
|
92
93
|
"publishConfig": {
|
|
93
94
|
"access": "public"
|
|
94
95
|
}
|
|
95
|
-
}
|
|
96
|
+
}
|