@openfin/workspace 23.0.0 → 23.0.1-alpha.0966d5cc
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/client-api/src/notifications.d.ts +2 -2
- package/client-api/src/shapes/index.d.ts +1 -1
- package/client-api/src/shapes/notifications.d.ts +1 -1
- package/client-api-platform/src/api/app-directory.d.ts +1 -1
- package/client-api-platform/src/api/controllers/theme-storage-controller-store.d.ts +16 -2
- package/client-api-platform/src/api/controllers/theme-storage-controller.d.ts +26 -23
- package/client-api-platform/src/api/dock.d.ts +3 -3
- package/client-api-platform/src/api/theming.d.ts +3 -2
- package/client-api-platform/src/api/utils.d.ts +11 -0
- package/client-api-platform/src/init/override-callback/view-components.d.ts +1 -1
- package/client-api-platform/src/init/override-callback/view-defaults.d.ts +2 -1
- package/client-api-platform/src/init/theming.d.ts +5 -2
- package/client-api-platform/src/shapes.d.ts +128 -16
- package/common/src/api/protocol/notifications.d.ts +8 -0
- package/common/src/api/protocol/workspace-platform.d.ts +5 -2
- package/common/src/api/protocol/workspace.d.ts +2 -2
- package/common/src/api/shapes/notifications.d.ts +1 -0
- package/common/src/api/theming.d.ts +27 -14
- package/common/src/utils/application.d.ts +7 -0
- package/common/src/utils/env.d.ts +1 -1
- package/common/src/utils/find-in-page/findInPageChannel.d.ts +37 -0
- package/common/src/utils/find-in-page/showFindInPageHandler.d.ts +2 -0
- package/common/src/utils/global-context-menu.d.ts +7 -0
- package/common/src/utils/landing-page.d.ts +1 -1
- package/common/src/utils/layout.d.ts +37 -8
- package/common/src/utils/logger.d.ts +110 -1
- package/common/src/utils/menu-window-provider.d.ts +7 -3
- package/common/src/utils/merge-deep.d.ts +1 -0
- package/common/src/utils/namespaced-local-storage.d.ts +4 -3
- package/common/src/utils/popup-window.d.ts +1 -0
- package/common/src/utils/route.d.ts +5 -1
- package/common/src/utils/theming.d.ts +6 -0
- package/common/src/utils/window.d.ts +12 -9
- package/dock3/src/api/protocol.d.ts +3 -0
- package/dock3/src/api/utils.d.ts +11 -0
- package/dock3/src/shapes/enterprise.d.ts +22 -0
- package/dock3/src/shapes/shapes.d.ts +4 -0
- package/externals.report.json +31 -72
- package/home.js +1 -1485
- package/home.js.map +1 -1
- package/index.js +1 -1485
- package/index.js.map +1 -1
- package/notifications.js +1 -1485
- package/notifications.js.map +1 -1
- package/package.json +6 -12
- package/search-api/src/provider/remote/info.d.ts +1 -1
- package/store.js +1 -1485
- package/store.js.map +1 -1
- package/common/src/brand/default-brand.d.ts +0 -8
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type FindInPageChannelMessagePayload = {
|
|
2
|
+
type: 'close';
|
|
3
|
+
} | {
|
|
4
|
+
type: 'find-text-changed';
|
|
5
|
+
value: string;
|
|
6
|
+
} | {
|
|
7
|
+
type: 'focus-input';
|
|
8
|
+
} | {
|
|
9
|
+
type: 'hide-from-search-menu';
|
|
10
|
+
} | {
|
|
11
|
+
type: 'next-result';
|
|
12
|
+
} | {
|
|
13
|
+
type: 'previous-result';
|
|
14
|
+
} | {
|
|
15
|
+
type: 'show';
|
|
16
|
+
} | {
|
|
17
|
+
type: 'update-state';
|
|
18
|
+
currentResultIndex?: number | null;
|
|
19
|
+
totalResults?: number | null;
|
|
20
|
+
value?: string | null;
|
|
21
|
+
} | {
|
|
22
|
+
type: 'view-ready';
|
|
23
|
+
} | {
|
|
24
|
+
type: 'window-ready';
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Closes the find in page channel
|
|
28
|
+
*/
|
|
29
|
+
export declare const closeFindInPageChannel: (channel: BroadcastChannel) => void;
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new find in page channel
|
|
32
|
+
*/
|
|
33
|
+
export declare const createFindInPageChannel: (windowName?: string) => Promise<BroadcastChannel>;
|
|
34
|
+
/**
|
|
35
|
+
* Sends a message via the find in page channel
|
|
36
|
+
*/
|
|
37
|
+
export declare const sendFindInPageMessage: (channel: BroadcastChannel, message: FindInPageChannelMessagePayload) => void;
|
|
@@ -74,6 +74,13 @@ export declare const manageDesktopSignals: () => {
|
|
|
74
74
|
type: WP.GlobalContextMenuOptionType;
|
|
75
75
|
};
|
|
76
76
|
};
|
|
77
|
+
export declare const findInPage: () => {
|
|
78
|
+
type: MenuItemType;
|
|
79
|
+
label: string;
|
|
80
|
+
data: {
|
|
81
|
+
type: WP.GlobalContextMenuOptionType;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
77
84
|
export declare const renameWorkspace: () => {
|
|
78
85
|
type: MenuItemType;
|
|
79
86
|
label: string;
|
|
@@ -12,5 +12,5 @@ export declare const getNewLandingTabViewOptions: (target: OpenFin.Identity) =>
|
|
|
12
12
|
* If winIdentity is specified, it uses the newPageUrl defined by the browser window options.
|
|
13
13
|
* Otherwise, if the platform is Enterprise, it will use the landing page URL.
|
|
14
14
|
*/
|
|
15
|
-
export declare const makeNewLandingPage: (winIdentity?: OpenFin.Identity) => Promise<import("@client-platform/
|
|
15
|
+
export declare const makeNewLandingPage: (winIdentity?: OpenFin.Identity) => Promise<import("@client-platform/index").PageWithUpdatableRuntimeAttribs>;
|
|
16
16
|
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type OpenFin from '@openfin/core';
|
|
2
2
|
import { WindowIdentity } from '../../../common/src/utils/window';
|
|
3
|
-
import { AttachedPageInternal } from '../../../common/src/api/pages/shapes';
|
|
4
3
|
import { AttachedPage, PageLayout } from '../../../client-api-platform/src/shapes';
|
|
5
4
|
export type LayoutDOMEventType =
|
|
6
5
|
/**
|
|
@@ -11,12 +10,22 @@ export type LayoutDOMEventType =
|
|
|
11
10
|
* Fired when a tab is created in a container. (Emmitted by core)
|
|
12
11
|
*/
|
|
13
12
|
| 'tab-created'
|
|
13
|
+
/**
|
|
14
|
+
* Fired when a new container/stack is created. (Emitted by Golden Layout)
|
|
15
|
+
*/
|
|
16
|
+
| 'container-created'
|
|
14
17
|
/**
|
|
15
18
|
* Fired when the layout container is ready to be used. (Emitted by us)
|
|
16
19
|
*/
|
|
17
|
-
| 'container-resized'
|
|
20
|
+
| 'container-resized'
|
|
21
|
+
/**
|
|
22
|
+
* Fired when a view item container is resized (e.g., via separator drag). (Emitted by us)
|
|
23
|
+
*/
|
|
24
|
+
| 'view-container-resized' | 'tab-closed';
|
|
18
25
|
export type LayoutDOMEvent = {
|
|
19
26
|
type: Extract<LayoutDOMEventType, 'container-resized'>;
|
|
27
|
+
} | {
|
|
28
|
+
type: Extract<LayoutDOMEventType, 'view-container-resized'>;
|
|
20
29
|
} | {
|
|
21
30
|
type: Extract<LayoutDOMEventType, 'tab-created' | 'tab-closed'>;
|
|
22
31
|
detail: {
|
|
@@ -30,12 +39,21 @@ export type LayoutDOMEvent = {
|
|
|
30
39
|
};
|
|
31
40
|
isInitialized: boolean;
|
|
32
41
|
target: HTMLElement;
|
|
42
|
+
} | {
|
|
43
|
+
type: Extract<LayoutDOMEventType, 'container-created'>;
|
|
44
|
+
detail?: {
|
|
45
|
+
containerSelector?: string;
|
|
46
|
+
[key: string]: any;
|
|
47
|
+
};
|
|
48
|
+
target?: HTMLElement;
|
|
49
|
+
originalElement?: HTMLElement;
|
|
33
50
|
} | {
|
|
34
51
|
type: Extract<LayoutDOMEventType, 'tabs-list-resized'>;
|
|
35
52
|
};
|
|
36
53
|
export type LayoutDOMEventListener = (ev: LayoutDOMEvent) => void;
|
|
37
54
|
export declare const VIEW_NAME_PREFIX: "internal-generated-view-";
|
|
38
|
-
export declare const
|
|
55
|
+
export declare const getViewNameFromTabId: (tabId: string) => string;
|
|
56
|
+
export declare const getFirstActiveViewFromLayout: (identity: OpenFin.LayoutIdentity) => OpenFin.Identity | undefined;
|
|
39
57
|
/**
|
|
40
58
|
* Recursively clones a layout object, calling a passed callback on each `componentState` in the tree.
|
|
41
59
|
* @param node Either the layout object itself, or one of the items in its tree.
|
|
@@ -43,6 +61,13 @@ export declare const getFirstActiveViewFromLayout: (identity: OpenFin.LayoutIden
|
|
|
43
61
|
* @returns A mapped copy of the layout
|
|
44
62
|
*/
|
|
45
63
|
export declare const mapLayoutViewComponents: (node: any, callback: (arg0: any) => any) => any;
|
|
64
|
+
/**
|
|
65
|
+
* Recursively clones a layout object, calling a passed async callback on each `componentState` in the tree.
|
|
66
|
+
* @param node Either the layout object itself, or one of the items in its tree.
|
|
67
|
+
* @param callback Async callback to be called on each component's `componentState`
|
|
68
|
+
* @returns A Promise resolving to a mapped copy of the layout
|
|
69
|
+
*/
|
|
70
|
+
export declare const mapLayoutViewComponentsAsync: (node: any, callback: (arg0: any) => Promise<any>) => Promise<any>;
|
|
46
71
|
/**
|
|
47
72
|
* Copies the componentState and generates a name if it's not there
|
|
48
73
|
* @param componentState view's componentState in the layout object, corresponds to View options
|
|
@@ -62,9 +87,9 @@ export declare const generateViewNameAndIdentifierNameIfNotExists: <T extends {
|
|
|
62
87
|
/**
|
|
63
88
|
* Deep clones a layout and converts view options (add names if necessary, apply defaults).
|
|
64
89
|
* @param layout The Layout to be cloned
|
|
65
|
-
* @returns A copy of the layout with view options converted
|
|
90
|
+
* @returns A Promise resolving to a copy of the layout with view options converted
|
|
66
91
|
*/
|
|
67
|
-
export declare const cloneLayoutAndConvertViewOptions: (layout: PageLayout, initViewOptions?: Partial<OpenFin.ViewOptions>) =>
|
|
92
|
+
export declare const cloneLayoutAndConvertViewOptions: (layout: PageLayout, initViewOptions?: Partial<OpenFin.ViewOptions>) => Promise<PageLayout>;
|
|
68
93
|
export declare const cloneViewComponentWithoutName: (componentState: any) => any;
|
|
69
94
|
/**
|
|
70
95
|
* Deep clones a layout and removes view names.
|
|
@@ -85,6 +110,13 @@ export declare const isLayoutTabActive: (tabSelector: string) => boolean;
|
|
|
85
110
|
export declare const containerId = "layout_container";
|
|
86
111
|
export declare const viewTabslistSelectors = ".lm_tabs";
|
|
87
112
|
export declare const addLayoutEventListener: (event: LayoutDOMEventType, listener: LayoutDOMEventListener) => void;
|
|
113
|
+
export declare const removeLayoutEventListener: (event: LayoutDOMEventType, listener: LayoutDOMEventListener) => void;
|
|
114
|
+
/**
|
|
115
|
+
* Cleans up ResizeObservers and event listeners for a specific layout.
|
|
116
|
+
* Should be called when a layout is destroyed to prevent memory leaks.
|
|
117
|
+
* @param layoutName The layoutName/layoutContainerKey to cleanup
|
|
118
|
+
*/
|
|
119
|
+
export declare const cleanupLayoutObservers: (layoutName: string) => void;
|
|
88
120
|
/**
|
|
89
121
|
* Initialize the layout for the current OF window.
|
|
90
122
|
*/
|
|
@@ -119,9 +151,6 @@ export declare const findViewInLayout: (node: any, viewId: OpenFin.Identity) =>
|
|
|
119
151
|
*/
|
|
120
152
|
export declare const countViews: (node: OpenFin.LayoutContent) => number;
|
|
121
153
|
export declare const getLayoutConfig: (layoutContainerKey: string) => Promise<any>;
|
|
122
|
-
export declare const updateTabStateBasedOnViewCount: (page: AttachedPageInternal, viewCount: number) => Promise<void>;
|
|
123
|
-
export declare const updatePageForViewCount: (activePage: AttachedPageInternal | undefined) => Promise<void>;
|
|
124
|
-
export declare const debouncedUpdatePageForViewCount: import("lodash").DebouncedFunc<(activePage: AttachedPageInternal | undefined) => Promise<void>>;
|
|
125
154
|
export declare const findPageForView: (viewName: string, browserWindowIdentity?: WindowIdentity) => Promise<AttachedPage | undefined>;
|
|
126
155
|
/**
|
|
127
156
|
* Only show the view tab icon when not on the landing page
|
|
@@ -1,6 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Utility for OpenFin Workspace Monorepo
|
|
3
|
+
*
|
|
4
|
+
* Provides structured, contextual logging with consistent formatting
|
|
5
|
+
* across all workspaces and modules.
|
|
6
|
+
*/
|
|
7
|
+
export interface LogData {
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export interface Logger {
|
|
11
|
+
debug: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
12
|
+
info: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
13
|
+
warn: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
14
|
+
error: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Configuration for the logger
|
|
18
|
+
*/
|
|
19
|
+
export interface LoggerConfig {
|
|
20
|
+
/** Include timestamp in logs (default: true) */
|
|
21
|
+
includeTimestamp?: boolean;
|
|
22
|
+
/** Custom prefix for logs */
|
|
23
|
+
customPrefix?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Stringify log data before passing to console (default: true).
|
|
26
|
+
* When true, objects are serialized as JSON strings for safer logging.
|
|
27
|
+
* When false, raw objects are passed to console, allowing expandable/inspectable
|
|
28
|
+
* objects in browser dev tools.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* To disable safe stringify for local development, you can:
|
|
32
|
+
* 1. Set this option per-logger: createLogger('MyContext', { stringifyData: false })
|
|
33
|
+
* 2. Or call setGlobalStringifyEnabled(false) once at app startup
|
|
34
|
+
*/
|
|
35
|
+
stringifyData?: boolean;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Enable or disable safe stringify globally for all loggers.
|
|
39
|
+
* Useful for local development when you want expandable objects in browser dev tools.
|
|
40
|
+
*
|
|
41
|
+
* This overrides the build-time LOG_STRINGIFY setting at runtime.
|
|
42
|
+
* Individual logger config (stringifyData option) takes precedence over this setting.
|
|
43
|
+
*
|
|
44
|
+
* @param enabled - Whether to stringify log data
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* // Override build-time setting at runtime:
|
|
49
|
+
* import { setGlobalStringifyEnabled } from 'common/src/utils/logger';
|
|
50
|
+
*
|
|
51
|
+
* // Disable stringify to get expandable objects in console
|
|
52
|
+
* setGlobalStringifyEnabled(false);
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare const setGlobalStringifyEnabled: (enabled: boolean) => void;
|
|
56
|
+
/**
|
|
57
|
+
* Get the current global stringify setting.
|
|
58
|
+
*/
|
|
59
|
+
export declare const getGlobalStringifyEnabled: () => boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Create a structured logger for a specific context
|
|
62
|
+
*
|
|
63
|
+
* @param context - The context identifier (workspace, module, or component name)
|
|
64
|
+
* @param config - Optional configuration for the logger
|
|
65
|
+
* @returns Enhanced logger instance
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* const logger = createLogger('browser.TabList');
|
|
70
|
+
*
|
|
71
|
+
* logger.info('addTab', 'Adding new tab', { pageId: '123' });
|
|
72
|
+
* logger.error('addTab', 'Failed to add tab', { error: err.message });
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare const createLogger: (context: string, config?: LoggerConfig) => Logger;
|
|
76
|
+
/**
|
|
77
|
+
* Create a logger with performance monitoring capabilities
|
|
78
|
+
* Useful for tracking execution times and performance metrics
|
|
79
|
+
*/
|
|
80
|
+
export declare const createPerformanceLogger: (context: string, config?: LoggerConfig) => {
|
|
81
|
+
/**
|
|
82
|
+
* Start a performance timer
|
|
83
|
+
*/
|
|
84
|
+
startTimer: (timerId: string, method: string, message: string, data?: LogData) => void;
|
|
85
|
+
/**
|
|
86
|
+
* Clear a specific timer without logging
|
|
87
|
+
*/
|
|
88
|
+
clearTimer: (timerId: string) => void;
|
|
89
|
+
/**
|
|
90
|
+
* End a performance timer and log the duration
|
|
91
|
+
*/
|
|
92
|
+
endTimer: (timerId: string, method: string, message: string, data?: LogData) => void;
|
|
93
|
+
debug: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
94
|
+
info: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
95
|
+
warn: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
96
|
+
error: (method: string, message: string, data?: LogData | (() => LogData)) => void;
|
|
97
|
+
};
|
|
98
|
+
export type EnhancedLogger = ReturnType<typeof createPerformanceLogger>;
|
|
99
|
+
/**
|
|
100
|
+
* Middleware function for wrapping async operations with logging
|
|
101
|
+
*/
|
|
102
|
+
export declare const withLogging: <T extends any[], R>(logger: Logger, method: string, operation: (...args: T) => Promise<R> | R) => (...args: T) => Promise<R>;
|
|
103
|
+
/**
|
|
104
|
+
* Legacy logger instance for backwards compatibility.
|
|
105
|
+
* Use `createLogger` for new code to get structured, contextual logging.
|
|
106
|
+
*
|
|
107
|
+
* @deprecated Use createLogger() instead for new code
|
|
108
|
+
*/
|
|
1
109
|
export declare const log: {
|
|
2
110
|
/**
|
|
3
|
-
* Calls console.debug with provided parameters and stringifies JS objects prior to logging
|
|
111
|
+
* Calls console.debug with provided parameters and stringifies JS objects prior to logging.
|
|
112
|
+
* Only logs when LOG_DEBUG is enabled.
|
|
4
113
|
*/
|
|
5
114
|
debug: (...args: unknown[]) => void;
|
|
6
115
|
/**
|
|
@@ -2,9 +2,13 @@ import type OpenFin from '@openfin/core';
|
|
|
2
2
|
import { ResponseModalContent } from '../../../common/src/utils/menu-config';
|
|
3
3
|
import type { OptionalExceptFor } from '../../../common/src/utils/types';
|
|
4
4
|
type MenuEventTypes = {
|
|
5
|
-
response: [ModalResponseEvent];
|
|
6
|
-
ready: [OpenFin.Identity];
|
|
7
|
-
update: [string, Partial<OpenFin.Bounds>, string];
|
|
5
|
+
'response': [ModalResponseEvent];
|
|
6
|
+
'ready': [OpenFin.Identity];
|
|
7
|
+
'update': [string, Partial<OpenFin.Bounds>, string];
|
|
8
|
+
'modal-opened': [string];
|
|
9
|
+
'modal-closed': [string];
|
|
10
|
+
'search-menu-opening': [string];
|
|
11
|
+
'search-menu-closed': [string];
|
|
8
12
|
};
|
|
9
13
|
export interface ModalResponseEvent {
|
|
10
14
|
data: {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
+
import LocalStorageKey from './local-storage-key';
|
|
2
|
+
export declare const setItem: (key: LocalStorageKey, value: string) => void;
|
|
3
|
+
export declare const getItem: (key: LocalStorageKey) => string;
|
|
4
|
+
export declare const removeItem: (key: LocalStorageKey) => void;
|
|
1
5
|
export declare const createNamespacedLocalStorage: <TKey extends string>(namespace: string) => Pick<Storage, "setItem" | "getItem" | "removeItem">;
|
|
2
|
-
export declare const setItem: (key: string, value: string) => void;
|
|
3
|
-
export declare const getItem: (key: string) => string | null;
|
|
4
|
-
export declare const removeItem: (key: string) => void;
|
|
@@ -82,6 +82,7 @@ export type BookmarkDialogChannelMessage = BaseEnterpriseMenuChannelMessage & {
|
|
|
82
82
|
export type ZoomControlsDialogPayload = {
|
|
83
83
|
selectedViewIdentity?: OpenFin.Identity;
|
|
84
84
|
zoomPercent?: number;
|
|
85
|
+
openedViaMouseClick?: boolean;
|
|
85
86
|
};
|
|
86
87
|
export type ZoomControlsDialogChannelMessage = BaseEnterpriseMenuChannelMessage & {
|
|
87
88
|
type: EnterpriseMenuType.ZoomControls;
|
|
@@ -29,11 +29,13 @@ declare enum BrowserRoute {
|
|
|
29
29
|
EnterpriseContextMenu = "/context-menu/",
|
|
30
30
|
EnterpriseBookmarkDialog = "/bookmark-dialog/",
|
|
31
31
|
EnterpriseAboutPage = "/popup-menu/about/",
|
|
32
|
+
StorageProxy = "/storage-proxy",
|
|
32
33
|
DropdownMenu = "/dropdown-menu/",
|
|
33
34
|
EnterpriseDock = "/dock/",
|
|
34
35
|
ZoomControlsDialog = "/zoom-controls-dialog/",
|
|
35
36
|
DesktopSignalsModal = "/popup-menu/desktop-signals-modal/",
|
|
36
|
-
IntentsResolverModal = "/popup-menu/intents-resolver-modal/"
|
|
37
|
+
IntentsResolverModal = "/popup-menu/intents-resolver-modal/",
|
|
38
|
+
FindInPageModal = "/popup-menu/find-in-page-modal/"
|
|
37
39
|
}
|
|
38
40
|
declare const PageRoute: {
|
|
39
41
|
Browser: BrowserRoute.Browser;
|
|
@@ -50,11 +52,13 @@ declare const PageRoute: {
|
|
|
50
52
|
EnterpriseContextMenu: BrowserRoute.EnterpriseContextMenu;
|
|
51
53
|
EnterpriseBookmarkDialog: BrowserRoute.EnterpriseBookmarkDialog;
|
|
52
54
|
EnterpriseAboutPage: BrowserRoute.EnterpriseAboutPage;
|
|
55
|
+
StorageProxy: BrowserRoute.StorageProxy;
|
|
53
56
|
DropdownMenu: BrowserRoute.DropdownMenu;
|
|
54
57
|
EnterpriseDock: BrowserRoute.EnterpriseDock;
|
|
55
58
|
ZoomControlsDialog: BrowserRoute.ZoomControlsDialog;
|
|
56
59
|
DesktopSignalsModal: BrowserRoute.DesktopSignalsModal;
|
|
57
60
|
IntentsResolverModal: BrowserRoute.IntentsResolverModal;
|
|
61
|
+
FindInPageModal: BrowserRoute.FindInPageModal;
|
|
58
62
|
Home: WorkspaceRoute.Home;
|
|
59
63
|
HomeSearch: WorkspaceRoute.HomeSearch;
|
|
60
64
|
HomePagesRename: WorkspaceRoute.HomePagesRename;
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
+
import type OpenFin from '@openfin/core';
|
|
1
2
|
import { BackgroundLayers, CustomPaletteSet } from '../../../common/src/api/theming';
|
|
3
|
+
export type ColorSchemeValue = 'light' | 'dark' | 'system';
|
|
4
|
+
export type WorkspaceSchemeSetting = 'light' | 'dark' | 'system';
|
|
5
|
+
export type MediaSchemeValue = 'light' | 'dark';
|
|
6
|
+
/** Maps a color scheme to OpenFin native theme preferences. */
|
|
7
|
+
export declare const mapColorSchemeToNativeTheme: (scheme: ColorSchemeValue) => OpenFin.NativeTheme;
|
|
2
8
|
/**
|
|
3
9
|
* Parses a CSS color string (hex, rgb(a), or hsl(a)) into a structured RGB string and alpha value.
|
|
4
10
|
*
|
|
@@ -6,21 +6,22 @@ export declare enum WindowName {
|
|
|
6
6
|
Dock = "openfin-dock",
|
|
7
7
|
Storefront = "openfin-storefront",
|
|
8
8
|
HomeInternal = "openfin-home-internal",
|
|
9
|
-
BrowserMenu = "openfin-browser-menu",
|
|
10
|
-
BrowserSaveMenu = "openfin-browser-save-menu",
|
|
11
|
-
DockSaveWorkspaceMenu = "openfin-dock3-save-workspace-menu",
|
|
12
9
|
BrowserIndicator = "openfin-browser-indicator",
|
|
13
10
|
BrowserWindow = "internal-generated-window",
|
|
14
11
|
ClassicWindow = "internal-generated-classic-window",
|
|
15
|
-
EnterpriseContextMenu = "openfin-enterprise-context-menu",
|
|
16
12
|
BrowserAddressSearchPrefix = "openfin-browser-menu-address-search-",
|
|
17
|
-
EnterpriseBookmarkDialogWindow = "openfin-enterprise-bookmark-dialog",
|
|
18
|
-
DropdownMenu = "openfin-enterprise-dropdown-menu",
|
|
19
13
|
DockCompanion = "openfin-dock-companion",
|
|
20
14
|
AICompanionPrefix = "openfin-ai-companion-",
|
|
21
|
-
UpdateVersionModal = "here-update-version-modal",
|
|
22
|
-
ZoomControlsDialog = "here-zoom-controls-dialog",
|
|
23
15
|
AboutPageWindow = "here-about-page",
|
|
16
|
+
FindInPageViewPrefix = "here-find-in-page-view-",
|
|
17
|
+
BrowserMenu = "openfin-browser-menu",
|
|
18
|
+
BrowserSaveMenu = "openfin-browser-save-menu",
|
|
19
|
+
DockSaveWorkspaceMenu = "openfin-dock3-save-workspace-menu",
|
|
20
|
+
DropdownMenu = "openfin-enterprise-dropdown-menu",
|
|
21
|
+
EnterpriseContextMenu = "openfin-enterprise-context-menu",
|
|
22
|
+
EnterpriseBookmarkDialogWindow = "openfin-enterprise-bookmark-dialog",
|
|
23
|
+
ZoomControlsDialog = "here-zoom-controls-dialog",
|
|
24
|
+
UpdateVersionModal = "here-update-version-modal",
|
|
24
25
|
DesktopSignalsModal = "here-desktop-signals-modal",
|
|
25
26
|
IntentsResolverModal = "here-intents-resolver-modal"
|
|
26
27
|
}
|
|
@@ -142,6 +143,7 @@ export declare function animateSize(width: number, height: number): Promise<void
|
|
|
142
143
|
* @returns boolean
|
|
143
144
|
*/
|
|
144
145
|
export declare const isBrowserWindow: (identity: OpenFin.Identity) => Promise<any>;
|
|
146
|
+
export declare const isModalWindowExceptZoomDialog: (identity: OpenFin.Identity) => boolean;
|
|
145
147
|
/**
|
|
146
148
|
* Force document body size. Called when resizing or on scaling changes.
|
|
147
149
|
*/
|
|
@@ -155,6 +157,7 @@ export declare function getModalWindows(): Promise<OpenFin.Window[]>;
|
|
|
155
157
|
* Returns true if the OpenFin window for the provided identity is running.
|
|
156
158
|
* */
|
|
157
159
|
export declare const isWindowRunning: (identity: WindowIdentity) => Promise<boolean>;
|
|
160
|
+
export declare const isApplicationRunning: (uuid: string) => Promise<boolean>;
|
|
158
161
|
/**
|
|
159
162
|
* Check if Storefront window is running.
|
|
160
163
|
* @returns true if the Storefront window is running.
|
|
@@ -162,7 +165,7 @@ export declare const isWindowRunning: (identity: WindowIdentity) => Promise<bool
|
|
|
162
165
|
export declare const isStorefrontWindowRunning: () => Promise<boolean>;
|
|
163
166
|
export declare const isDockWindowRunning: () => Promise<boolean>;
|
|
164
167
|
export declare const isHomeWindowRunning: () => Promise<boolean>;
|
|
165
|
-
export declare const
|
|
168
|
+
export declare const isNotificationCenterRunning: () => Promise<boolean>;
|
|
166
169
|
export declare const showAndFocusStorefront: () => Promise<void>;
|
|
167
170
|
export declare const showAndFocusDock: () => Promise<void>;
|
|
168
171
|
export declare const getDisableMultiplePagesOption: (identity: WindowIdentity) => Promise<any>;
|
|
@@ -37,6 +37,9 @@ export type Dock3ChannelProviderChannelActions = {
|
|
|
37
37
|
*/
|
|
38
38
|
export type Dock3ChannelClientChannelActions = {
|
|
39
39
|
'handle-dock-config-updated': (payload: Dock3Config) => void;
|
|
40
|
+
'navigate-content-menu': (payload: {
|
|
41
|
+
targetId: string;
|
|
42
|
+
}) => void;
|
|
40
43
|
};
|
|
41
44
|
/**
|
|
42
45
|
* @internal
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { CompanionDockConfig } from '../shapes/enterprise';
|
|
2
|
+
import type { DockAllowedWindowOptions } from '../shapes/shapes';
|
|
3
|
+
export declare const getSnapZone: (config: CompanionDockConfig | unknown, options?: DockAllowedWindowOptions) => {
|
|
4
|
+
enabled: boolean;
|
|
5
|
+
threshold?: number;
|
|
6
|
+
locationPreference?: Array<"top" | "bottom">;
|
|
7
|
+
} | {
|
|
8
|
+
enabled: boolean;
|
|
9
|
+
threshold: number;
|
|
10
|
+
locationPreference: readonly ["top", "bottom"];
|
|
11
|
+
};
|
|
@@ -6,6 +6,11 @@ export type { EnterpriseDockChannelClient, EnterpriseDockChannelProvider } from
|
|
|
6
6
|
* @internal
|
|
7
7
|
*/
|
|
8
8
|
export type DockCompanionButton = Exclude<Dock3Button, 'store'> | 'bookmarks' | 'searchShortcut' | 'collectionMenu';
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
* Supported context menu template items for the dock companion window
|
|
12
|
+
*/
|
|
13
|
+
export type DockContextMenuItem = 'snapToTop' | 'snapToBottom' | 'inspect';
|
|
9
14
|
/**
|
|
10
15
|
* @internal
|
|
11
16
|
*/
|
|
@@ -21,4 +26,21 @@ export type CompanionDockConfig = Omit<Dock3Config, 'defaultDockButtons'> & {
|
|
|
21
26
|
defaultDockButtons?: DockCompanionButton[];
|
|
22
27
|
windowType?: 'enterprise';
|
|
23
28
|
collectionMenu?: Collection[];
|
|
29
|
+
/**
|
|
30
|
+
* Experimental snapzone configuration for the dock companion
|
|
31
|
+
*/
|
|
32
|
+
experimental?: {
|
|
33
|
+
snapZone?: {
|
|
34
|
+
enabled: boolean;
|
|
35
|
+
threshold?: number;
|
|
36
|
+
locationPreference?: Array<'top' | 'bottom'>;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Context menu options for the dock companion window
|
|
41
|
+
*/
|
|
42
|
+
contextMenuOptions?: {
|
|
43
|
+
enabled: boolean;
|
|
44
|
+
template?: DockContextMenuItem[];
|
|
45
|
+
};
|
|
24
46
|
};
|
|
@@ -83,4 +83,8 @@ export type DockAllowedWindowOptions = Partial<Pick<OpenFin.PlatformWindowOption
|
|
|
83
83
|
locationPreference?: Array<'top' | 'bottom'>;
|
|
84
84
|
};
|
|
85
85
|
};
|
|
86
|
+
contextMenuOptions?: {
|
|
87
|
+
enabled?: boolean;
|
|
88
|
+
template?: Array<'snapToTop' | 'snapToBottom' | 'inspect'>;
|
|
89
|
+
};
|
|
86
90
|
};
|
package/externals.report.json
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"openfin
|
|
2
|
+
"@openfin/notifications": [
|
|
3
3
|
{
|
|
4
|
+
"type": "explicit",
|
|
5
|
+
"version": "2.14.0-alpha-4504",
|
|
4
6
|
"packageName": "client-api/package.json",
|
|
5
7
|
"issuer": "client-api/src/notifications.ts"
|
|
6
8
|
}
|
|
@@ -8,7 +10,7 @@
|
|
|
8
10
|
"@openfin/microsoft365": [
|
|
9
11
|
{
|
|
10
12
|
"type": "explicit",
|
|
11
|
-
"version": "^1.0
|
|
13
|
+
"version": "^1.1.0",
|
|
12
14
|
"packageName": "client-api/package.json",
|
|
13
15
|
"issuer": "client-api/src/integrations/microsoft.ts"
|
|
14
16
|
}
|
|
@@ -21,73 +23,46 @@
|
|
|
21
23
|
"issuer": "client-api/src/internal/providers.ts"
|
|
22
24
|
},
|
|
23
25
|
{
|
|
24
|
-
"type": "
|
|
26
|
+
"type": "explicit",
|
|
25
27
|
"version": "3.0.3",
|
|
26
28
|
"packageName": "common/package.json",
|
|
27
29
|
"issuer": "common/src/utils/color-linking.ts"
|
|
28
30
|
}
|
|
29
31
|
],
|
|
30
|
-
"
|
|
31
|
-
{
|
|
32
|
-
"type": "explicit-peer",
|
|
33
|
-
"version": ">=1.3.2 <2.0.0",
|
|
34
|
-
"rootVersion": "^1.3.2",
|
|
35
|
-
"packageName": "packages/ui-library/package.json",
|
|
36
|
-
"issuer": "packages/ui-library/dist/index.js"
|
|
37
|
-
}
|
|
38
|
-
],
|
|
39
|
-
"framer-motion": [
|
|
40
|
-
{
|
|
41
|
-
"type": "explicit-peer",
|
|
42
|
-
"version": ">=11.13.1 <12.0.0",
|
|
43
|
-
"rootVersion": "11.13.1",
|
|
44
|
-
"packageName": "packages/ui-library/package.json",
|
|
45
|
-
"issuer": "packages/ui-library/dist/index.js"
|
|
46
|
-
}
|
|
47
|
-
],
|
|
48
|
-
"lodash": [
|
|
32
|
+
"lodash.debounce": [
|
|
49
33
|
{
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
34
|
+
"type": "explicit",
|
|
35
|
+
"version": "^4.0.8",
|
|
36
|
+
"packageName": "client-api-platform/package.json",
|
|
37
|
+
"issuer": "client-api-platform/src/init/cleanup.ts"
|
|
38
|
+
},
|
|
55
39
|
{
|
|
56
|
-
"type": "explicit
|
|
57
|
-
"version": "
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"issuer": "packages/ui-library/dist/index.js"
|
|
40
|
+
"type": "explicit",
|
|
41
|
+
"version": "^4.0.8",
|
|
42
|
+
"packageName": "common/package.json",
|
|
43
|
+
"issuer": "common/src/utils/layout.ts"
|
|
61
44
|
}
|
|
62
45
|
],
|
|
63
|
-
"react-
|
|
46
|
+
"react-i18next": [
|
|
64
47
|
{
|
|
65
|
-
"type": "explicit
|
|
66
|
-
"version": "
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"issuer": "packages/ui-library/dist/index.js"
|
|
48
|
+
"type": "explicit",
|
|
49
|
+
"version": "15.4.0",
|
|
50
|
+
"packageName": "common/package.json",
|
|
51
|
+
"issuer": "common/src/api/i18next.ts"
|
|
70
52
|
}
|
|
71
53
|
],
|
|
72
|
-
"
|
|
54
|
+
"i18next": [
|
|
73
55
|
{
|
|
74
|
-
"type": "explicit
|
|
75
|
-
"version": "
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"issuer": "packages/ui-library/dist/index.js"
|
|
56
|
+
"type": "explicit",
|
|
57
|
+
"version": "^23.7.16",
|
|
58
|
+
"packageName": "common/package.json",
|
|
59
|
+
"issuer": "common/src/api/i18next.ts"
|
|
79
60
|
}
|
|
80
61
|
],
|
|
81
|
-
"lodash.
|
|
62
|
+
"lodash.clonedeep": [
|
|
82
63
|
{
|
|
83
64
|
"type": "explicit",
|
|
84
|
-
"version": "
|
|
85
|
-
"packageName": "client-api-platform/package.json",
|
|
86
|
-
"issuer": "client-api-platform/src/init/cleanup.ts"
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
"type": "root-implicit",
|
|
90
|
-
"version": "^4.0.8",
|
|
65
|
+
"version": "4.5.0",
|
|
91
66
|
"packageName": "common/package.json",
|
|
92
67
|
"issuer": "common/src/utils/layout.ts"
|
|
93
68
|
}
|
|
@@ -106,32 +81,16 @@
|
|
|
106
81
|
"issuer": "client-api-platform/src/api/dock/idb.ts"
|
|
107
82
|
},
|
|
108
83
|
{
|
|
109
|
-
"type": "
|
|
84
|
+
"type": "explicit",
|
|
110
85
|
"version": "^4.0.11",
|
|
111
86
|
"packageName": "common/package.json",
|
|
112
|
-
"issuer": "common/src/
|
|
87
|
+
"issuer": "common/src/api/pages/idb.ts"
|
|
113
88
|
},
|
|
114
89
|
{
|
|
115
|
-
"type": "
|
|
90
|
+
"type": "explicit",
|
|
116
91
|
"version": "^4.0.11",
|
|
117
92
|
"packageName": "common/package.json",
|
|
118
|
-
"issuer": "common/src/
|
|
119
|
-
}
|
|
120
|
-
],
|
|
121
|
-
"react-i18next": [
|
|
122
|
-
{
|
|
123
|
-
"type": "root-implicit",
|
|
124
|
-
"version": "15.4.0",
|
|
125
|
-
"packageName": "common/package.json",
|
|
126
|
-
"issuer": "common/src/api/i18next.ts"
|
|
127
|
-
}
|
|
128
|
-
],
|
|
129
|
-
"i18next": [
|
|
130
|
-
{
|
|
131
|
-
"type": "root-implicit",
|
|
132
|
-
"version": "^23.7.16",
|
|
133
|
-
"packageName": "common/package.json",
|
|
134
|
-
"issuer": "common/src/api/i18next.ts"
|
|
93
|
+
"issuer": "common/src/utils/create-and-migrate-ibd-store.ts"
|
|
135
94
|
}
|
|
136
95
|
]
|
|
137
96
|
}
|