@openfin/fdc3-api 45.100.113 → 45.100.115
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/out/fdc3-api-alpha.d.ts +285 -21
- package/out/fdc3-api-beta.d.ts +285 -21
- package/out/fdc3-api-public.d.ts +285 -21
- package/out/fdc3-api.d.ts +309 -36
- package/out/fdc3-api.js +13 -10
- package/package.json +1 -1
package/out/fdc3-api.d.ts
CHANGED
|
@@ -929,6 +929,21 @@ declare class Application extends EmitterBase<OpenFin.ApplicationEvent> {
|
|
|
929
929
|
* ```
|
|
930
930
|
*/
|
|
931
931
|
closeTrayIconPopupMenu(): Promise<void>;
|
|
932
|
+
/**
|
|
933
|
+
* @experimental
|
|
934
|
+
* Retrieves a performance snapshot for all Windows, Views and Frames in the Application.
|
|
935
|
+
*
|
|
936
|
+
* By default, all custom marks and measures are collected, along with navigation/paint entries
|
|
937
|
+
* and resource timing (`resources` defaults to `true`). Pass `include` to restrict custom
|
|
938
|
+
* marks/measures to matching names (string substring or RegExp). Pass `browser: true` to also
|
|
939
|
+
* include hereio internal runtime metrics.
|
|
940
|
+
*
|
|
941
|
+
* See also [MDN | Performance Mark API](https://developer.mozilla.org/en-US/docs/Web/API/Performance/mark)
|
|
942
|
+
*
|
|
943
|
+
* Note - only currently running WebContents will be captured, and performance entries can only be
|
|
944
|
+
* captured for the current navigation of each.
|
|
945
|
+
*/
|
|
946
|
+
getPerformanceStats: (options?: OpenFin.GetPerformanceStatsOptions) => Promise<OpenFin.PerformanceStatsResult>;
|
|
932
947
|
}
|
|
933
948
|
|
|
934
949
|
/**
|
|
@@ -1380,6 +1395,7 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
|
|
|
1380
1395
|
declare type ApplicationPermissions = {
|
|
1381
1396
|
setFileDownloadLocation: boolean;
|
|
1382
1397
|
getFileDownloadLocation: boolean;
|
|
1398
|
+
getPerformanceStats: boolean;
|
|
1383
1399
|
};
|
|
1384
1400
|
|
|
1385
1401
|
/**
|
|
@@ -2195,6 +2211,15 @@ declare type ByType_8<Type extends EventType_8> = Payload_10<Type>;
|
|
|
2195
2211
|
*/
|
|
2196
2212
|
declare type ByType_9<Type extends EventType_9> = Payload_11<Type>;
|
|
2197
2213
|
|
|
2214
|
+
/** Minimal V8 CallSite shape — js-adapter does not include @types/node. */
|
|
2215
|
+
declare interface CallSite {
|
|
2216
|
+
getFileName(): string | null;
|
|
2217
|
+
toString(): string;
|
|
2218
|
+
}
|
|
2219
|
+
|
|
2220
|
+
/** V8 CallSite objects, or native stack-frame strings from browsers that ignore Error.prepareStackTrace. */
|
|
2221
|
+
declare type CapturedStack = CallSite[] | string[];
|
|
2222
|
+
|
|
2198
2223
|
/**
|
|
2199
2224
|
* Configuration for page capture.
|
|
2200
2225
|
*
|
|
@@ -3176,23 +3201,6 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
|
|
|
3176
3201
|
childOptions: OpenFin.WindowOptions;
|
|
3177
3202
|
};
|
|
3178
3203
|
|
|
3179
|
-
/**
|
|
3180
|
-
* End of Interop Client Events
|
|
3181
|
-
*/
|
|
3182
|
-
/**
|
|
3183
|
-
* Client-side handle for the chrome-browser feature.
|
|
3184
|
-
*
|
|
3185
|
-
* For extension integration to be active on a window, that window must be
|
|
3186
|
-
* created with `chromeBrowser: true` in its window options.
|
|
3187
|
-
*
|
|
3188
|
-
* @remarks
|
|
3189
|
-
* This namespace is intended for internal experimentation only. Enabling the
|
|
3190
|
-
* `chromeBrowser` window option changes how the runtime manages content and standard
|
|
3191
|
-
* OpenFin content behavior is not guaranteed.
|
|
3192
|
-
*
|
|
3193
|
-
* @internal
|
|
3194
|
-
* @experimental This API is under active development and may change or be removed without notice.
|
|
3195
|
-
*/
|
|
3196
3204
|
declare interface ChromeBrowser {
|
|
3197
3205
|
/**
|
|
3198
3206
|
* Extension action surface — observe and invoke installed Chrome extension actions.
|
|
@@ -4200,6 +4208,32 @@ declare type ConstWindowOptions = {
|
|
|
4200
4208
|
width: number;
|
|
4201
4209
|
x: number;
|
|
4202
4210
|
y: number;
|
|
4211
|
+
/**
|
|
4212
|
+
* Experimental window options. These options are not yet stable and may change without notice.
|
|
4213
|
+
*
|
|
4214
|
+
* Supported properties:
|
|
4215
|
+
*
|
|
4216
|
+
* - **`layoutEngine`** `'v1' | 'v2'` — Selects the layout engine used to render
|
|
4217
|
+
* layouts in this window. `'v1'` is the legacy engine, `'v2'` is the modernized engine.
|
|
4218
|
+
* Defaults to `'v1'`.
|
|
4219
|
+
*
|
|
4220
|
+
* - **`showFavicons`** `boolean` — When `true`, displays favicon icons on layout tabs.
|
|
4221
|
+
*
|
|
4222
|
+
* - **`defaultFaviconUrl`** `string` — URL of a fallback favicon to display when a view does not
|
|
4223
|
+
* provide its own.
|
|
4224
|
+
*
|
|
4225
|
+
* - **`windowLogLevel`** `string` — Sets the log level for layout-related window logging
|
|
4226
|
+
* (e.g. `'verbose'`, `'warn'`, `'error'`).
|
|
4227
|
+
*
|
|
4228
|
+
* - **`enableLayoutCollapsing`** `boolean` — When `true`, enables the Golden Layout restacking
|
|
4229
|
+
* feature by preserving minimum item dimensions.
|
|
4230
|
+
*
|
|
4231
|
+
* - **`showViewsOnResize`** `{ enabled: boolean; delayMs?: number }` — Controls whether views
|
|
4232
|
+
* are shown during window resize operations. Deprecated in favor of
|
|
4233
|
+
* `viewVisibility.showViewsOnWindowResize`.
|
|
4234
|
+
*
|
|
4235
|
+
* @internal
|
|
4236
|
+
*/
|
|
4203
4237
|
experimental?: any;
|
|
4204
4238
|
fdc3InteropApi?: string;
|
|
4205
4239
|
/**
|
|
@@ -4523,6 +4557,8 @@ declare type CopyPermissions = {
|
|
|
4523
4557
|
};
|
|
4524
4558
|
};
|
|
4525
4559
|
|
|
4560
|
+
declare type CorePerformanceEntry = Omit<PerformanceEntry, 'toJSON'>;
|
|
4561
|
+
|
|
4526
4562
|
/**
|
|
4527
4563
|
* Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
|
|
4528
4564
|
* average of _height_ and _width_.
|
|
@@ -4675,6 +4711,32 @@ declare type CreateLayoutOptions = {
|
|
|
4675
4711
|
* @experimental
|
|
4676
4712
|
*/
|
|
4677
4713
|
renderCustomHeaderControls?: (controlsElement: HTMLElement, context: HeaderControlsContext) => (() => void) | void;
|
|
4714
|
+
/**
|
|
4715
|
+
* Callback invoked once per tab after core has finished building the tab DOM.
|
|
4716
|
+
* Use this to inject custom controls (e.g. action icons) into view tab hats.
|
|
4717
|
+
*
|
|
4718
|
+
* Optionally return a cleanup function that will be called when the tab is destroyed.
|
|
4719
|
+
*
|
|
4720
|
+
* Custom controls are not serialized into snapshots since callbacks are not
|
|
4721
|
+
* serializable. The callback is re-invoked when tabs are recreated.
|
|
4722
|
+
*
|
|
4723
|
+
* **NOTE**: This feature is only supported with layout engine `'v2'` (GL2) and
|
|
4724
|
+
* `settings.tabOverflowBehavior: 'scroll'`.
|
|
4725
|
+
*
|
|
4726
|
+
* Optionally add the `lm_tab_custom_control` class to each injected control as a direct child of
|
|
4727
|
+
* `tabElement`. That opts the control into {@link LayoutAccessibilityOptions} keyboard
|
|
4728
|
+
* navigation (roving tabindex, arrow keys in DOM order, Enter/Space without switching tabs),
|
|
4729
|
+
* pointer isolation so clicks do not activate or close the tab (press-and-drag still
|
|
4730
|
+
* reorders/tears out tab, matching the close button), and default 20×20 flex sizing
|
|
4731
|
+
* (override using `--layout-tab-custom-control-size`).
|
|
4732
|
+
*
|
|
4733
|
+
* @param tabElement The `.lm_tab` DOM element for the view tab.
|
|
4734
|
+
* @param context Context object with DOM anchors for the tab.
|
|
4735
|
+
* @returns A callback to be called when the rendered elements need to be cleaned up.
|
|
4736
|
+
*
|
|
4737
|
+
* @experimental
|
|
4738
|
+
*/
|
|
4739
|
+
renderCustomTabControls?: (tabElement: HTMLElement, context: CustomTabControlsContext) => (() => void) | void;
|
|
4678
4740
|
/**
|
|
4679
4741
|
* Accessibility options for the layout. Controls ARIA attributes and keyboard navigation.
|
|
4680
4742
|
*/
|
|
@@ -4764,6 +4826,19 @@ declare type CustomRequestHeaders = {
|
|
|
4764
4826
|
headers: WebRequestHeader[];
|
|
4765
4827
|
};
|
|
4766
4828
|
|
|
4829
|
+
/**
|
|
4830
|
+
* @interface @experimental
|
|
4831
|
+
*/
|
|
4832
|
+
declare type CustomTabControlsContext = {
|
|
4833
|
+
viewIdentity: Identity_4;
|
|
4834
|
+
/** Anchor for inserting controls adjacent to the tab text. */
|
|
4835
|
+
titleElement: HTMLElement;
|
|
4836
|
+
/** Anchor for the trailing outer edge. Absent when the view is not closable. */
|
|
4837
|
+
closeElement?: HTMLElement;
|
|
4838
|
+
/** The favicon element. Hidden when favicons are disabled. */
|
|
4839
|
+
faviconElement?: HTMLElement;
|
|
4840
|
+
};
|
|
4841
|
+
|
|
4767
4842
|
declare type DataChannelReadyState = RTCDataChannel['readyState'];
|
|
4768
4843
|
|
|
4769
4844
|
/**
|
|
@@ -6843,6 +6918,32 @@ declare type GetLogRequestType = {
|
|
|
6843
6918
|
name: string;
|
|
6844
6919
|
};
|
|
6845
6920
|
|
|
6921
|
+
/**
|
|
6922
|
+
* End of Interop Client Events
|
|
6923
|
+
*/
|
|
6924
|
+
/**
|
|
6925
|
+
* Performance Entry Types
|
|
6926
|
+
*/
|
|
6927
|
+
declare type GetPerformanceStatsOptions = {
|
|
6928
|
+
/**
|
|
6929
|
+
* Optional filter for custom performance marks and measures.
|
|
6930
|
+
* When omitted, all custom marks and measures are collected.
|
|
6931
|
+
* When specified, only entries whose names match one of the filters are collected.
|
|
6932
|
+
* Strings match by substring; RegExp matches by test.
|
|
6933
|
+
*/
|
|
6934
|
+
include?: (string | RegExp)[];
|
|
6935
|
+
/**
|
|
6936
|
+
* Include `resource` timing entries from each View / Frame / Window.
|
|
6937
|
+
* Defaults to `true`. Pass `false` to omit them.
|
|
6938
|
+
*/
|
|
6939
|
+
resources?: boolean;
|
|
6940
|
+
/**
|
|
6941
|
+
* Whether to include hereio internal runtime metrics.
|
|
6942
|
+
* Defaults to `false`. Pass `true` to include.
|
|
6943
|
+
*/
|
|
6944
|
+
browser?: boolean;
|
|
6945
|
+
};
|
|
6946
|
+
|
|
6846
6947
|
declare type GetterCall<T> = ApiCall<void, T>;
|
|
6847
6948
|
|
|
6848
6949
|
/**
|
|
@@ -7536,17 +7637,19 @@ declare type InteropActionLoggingOption = {
|
|
|
7536
7637
|
* "interopBrokerConfiguration": {
|
|
7537
7638
|
* "contextGroups": [
|
|
7538
7639
|
* {
|
|
7539
|
-
* "id": "
|
|
7640
|
+
* "id": "fdc3.channel.4",
|
|
7540
7641
|
* "displayMetadata": {
|
|
7541
|
-
* "color": "
|
|
7542
|
-
* "name": "
|
|
7642
|
+
* "color": "green",
|
|
7643
|
+
* "name": "Channel 4",
|
|
7644
|
+
* "glyph": "4"
|
|
7543
7645
|
* }
|
|
7544
7646
|
* },
|
|
7545
7647
|
* {
|
|
7546
|
-
* "id": "
|
|
7648
|
+
* "id": "fdc3.channel.8",
|
|
7547
7649
|
* "displayMetadata": {
|
|
7548
|
-
* "color": "
|
|
7549
|
-
* "name": "
|
|
7650
|
+
* "color": "purple",
|
|
7651
|
+
* "name": "Channel 8",
|
|
7652
|
+
* "glyph": "8"
|
|
7550
7653
|
* }
|
|
7551
7654
|
* },
|
|
7552
7655
|
* ]
|
|
@@ -7683,7 +7786,7 @@ declare class InteropBroker extends Base {
|
|
|
7683
7786
|
* @param joinContextGroupOptions - Id of the Context Group and identity of the entity to join to the group.
|
|
7684
7787
|
* @param senderIdentity - Identity of the client sender.
|
|
7685
7788
|
*/
|
|
7686
|
-
joinContextGroup({ contextGroupId, target }: {
|
|
7789
|
+
joinContextGroup({ contextGroupId: requestedContextGroupId, target }: {
|
|
7687
7790
|
contextGroupId: string;
|
|
7688
7791
|
target?: OpenFin.ClientIdentity | OpenFin.Identity;
|
|
7689
7792
|
}, senderIdentity: OpenFin.ClientIdentity): Promise<void>;
|
|
@@ -7694,7 +7797,7 @@ declare class InteropBroker extends Base {
|
|
|
7694
7797
|
* @param addClientToContextGroupOptions - Contains the contextGroupId
|
|
7695
7798
|
* @param clientIdentity - Identity of the client sender.
|
|
7696
7799
|
*/
|
|
7697
|
-
addClientToContextGroup({ contextGroupId }: {
|
|
7800
|
+
addClientToContextGroup({ contextGroupId: requestedContextGroupId }: {
|
|
7698
7801
|
contextGroupId: string;
|
|
7699
7802
|
}, clientIdentity: OpenFin.ClientIdentity): Promise<void>;
|
|
7700
7803
|
/**
|
|
@@ -8107,6 +8210,8 @@ declare class InteropBroker extends Base {
|
|
|
8107
8210
|
};
|
|
8108
8211
|
private getClientState;
|
|
8109
8212
|
private static toObject;
|
|
8213
|
+
private normalizeContextGroupStates;
|
|
8214
|
+
private normalizeContextGroupId;
|
|
8110
8215
|
static checkContextIntegrity: (context: OpenFin.Context) => {
|
|
8111
8216
|
isValid: true;
|
|
8112
8217
|
} | {
|
|
@@ -8337,7 +8442,7 @@ declare class InteropClient extends Base {
|
|
|
8337
8442
|
*
|
|
8338
8443
|
* getLastFocusedView()
|
|
8339
8444
|
* .then(lastFocusedViewIdentity => {
|
|
8340
|
-
* joinViewToContextGroup('
|
|
8445
|
+
* joinViewToContextGroup('fdc3.channel.1', lastFocusedViewIdentity)
|
|
8341
8446
|
* })
|
|
8342
8447
|
* ```
|
|
8343
8448
|
*/
|
|
@@ -8372,7 +8477,7 @@ declare class InteropClient extends Base {
|
|
|
8372
8477
|
*
|
|
8373
8478
|
* @example
|
|
8374
8479
|
* ```js
|
|
8375
|
-
* fin.me.interop.getAllClientsInContextGroup('
|
|
8480
|
+
* fin.me.interop.getAllClientsInContextGroup('fdc3.channel.1')
|
|
8376
8481
|
* .then(clientsInContextGroup => {
|
|
8377
8482
|
* console.log(clientsInContextGroup)
|
|
8378
8483
|
* })
|
|
@@ -8387,7 +8492,7 @@ declare class InteropClient extends Base {
|
|
|
8387
8492
|
*
|
|
8388
8493
|
* @example
|
|
8389
8494
|
* ```js
|
|
8390
|
-
* fin.me.interop.getInfoForContextGroup('
|
|
8495
|
+
* fin.me.interop.getInfoForContextGroup('fdc3.channel.1')
|
|
8391
8496
|
* .then(contextGroupInfo => {
|
|
8392
8497
|
* console.log(contextGroupInfo.displayMetadata.name)
|
|
8393
8498
|
* console.log(contextGroupInfo.displayMetadata.color)
|
|
@@ -8444,12 +8549,12 @@ declare class InteropClient extends Base {
|
|
|
8444
8549
|
*
|
|
8445
8550
|
* @example
|
|
8446
8551
|
* ```js
|
|
8447
|
-
* await fin.me.interop.joinContextGroup('
|
|
8552
|
+
* await fin.me.interop.joinContextGroup('fdc3.channel.3');
|
|
8448
8553
|
* await fin.me.interop.setContext({ type: 'instrument', id: { ticker: 'FOO' }});
|
|
8449
8554
|
* const currentContext = await fin.me.interop.getCurrentContext();
|
|
8450
8555
|
*
|
|
8451
8556
|
* // with a specific context
|
|
8452
|
-
* await fin.me.interop.joinContextGroup('
|
|
8557
|
+
* await fin.me.interop.joinContextGroup('fdc3.channel.3');
|
|
8453
8558
|
* await fin.me.interop.setContext({ type: 'country', id: { ISOALPHA3: 'US' }});
|
|
8454
8559
|
* await fin.me.interop.setContext({ type: 'instrument', id: { ticker: 'FOO' }});
|
|
8455
8560
|
* const currentContext = await fin.me.interop.getCurrentContext('country');
|
|
@@ -8616,7 +8721,7 @@ declare type InteropClientOnDisconnectionListener = (InteropBrokerDisconnectionE
|
|
|
8616
8721
|
*/
|
|
8617
8722
|
declare type InteropConfig = {
|
|
8618
8723
|
/**
|
|
8619
|
-
* Context Group for the client
|
|
8724
|
+
* Context Group ID for the client (for example, `fdc3.channel.4`).
|
|
8620
8725
|
*/
|
|
8621
8726
|
currentContextGroup?: string | null;
|
|
8622
8727
|
/**
|
|
@@ -8665,7 +8770,7 @@ declare class InteropModule extends Base {
|
|
|
8665
8770
|
* @example
|
|
8666
8771
|
* ```js
|
|
8667
8772
|
* const interopConfig = {
|
|
8668
|
-
* currentContextGroup: '
|
|
8773
|
+
* currentContextGroup: 'fdc3.channel.4'
|
|
8669
8774
|
* }
|
|
8670
8775
|
*
|
|
8671
8776
|
* const interopBroker = await fin.Interop.init('openfin');
|
|
@@ -9887,8 +9992,26 @@ declare type LayoutOptions = {
|
|
|
9887
9992
|
content?: LayoutContent;
|
|
9888
9993
|
dimensions?: {
|
|
9889
9994
|
borderWidth?: number;
|
|
9995
|
+
/**
|
|
9996
|
+
* Minimum height a layout item can be resized to, in pixels.
|
|
9997
|
+
* On web layouts this is mapped to Golden Layout 2 `defaultMinItemHeight`.
|
|
9998
|
+
*/
|
|
9890
9999
|
minItemHeight?: number;
|
|
10000
|
+
/**
|
|
10001
|
+
* Minimum width a layout item can be resized to, in pixels.
|
|
10002
|
+
* On web layouts this is mapped to Golden Layout 2 `defaultMinItemWidth`.
|
|
10003
|
+
*/
|
|
9891
10004
|
minItemWidth?: number;
|
|
10005
|
+
/**
|
|
10006
|
+
* Minimum height a layout item can be resized to (CSS size, e.g. `'500px'`).
|
|
10007
|
+
* Web layouts only. Takes precedence over {@link LayoutOptions.dimensions.minItemHeight} when both are set.
|
|
10008
|
+
*/
|
|
10009
|
+
defaultMinItemHeight?: string;
|
|
10010
|
+
/**
|
|
10011
|
+
* Minimum width a layout item can be resized to (CSS size, e.g. `'500px'`).
|
|
10012
|
+
* Web layouts only. Takes precedence over {@link LayoutOptions.dimensions.minItemWidth} when both are set.
|
|
10013
|
+
*/
|
|
10014
|
+
defaultMinItemWidth?: string;
|
|
9892
10015
|
headerHeight?: number;
|
|
9893
10016
|
};
|
|
9894
10017
|
};
|
|
@@ -10145,6 +10268,10 @@ declare type Manifest = {
|
|
|
10145
10268
|
experimentalExtensionPolicyBlockedHosts?: {
|
|
10146
10269
|
hosts: string[];
|
|
10147
10270
|
};
|
|
10271
|
+
/**
|
|
10272
|
+
* Chromium extensions to install and enable for this application.
|
|
10273
|
+
*/
|
|
10274
|
+
extensions?: ManifestExtension[];
|
|
10148
10275
|
licenseKey: string;
|
|
10149
10276
|
offlineAccess?: boolean;
|
|
10150
10277
|
platform?: PlatformOptions;
|
|
@@ -10198,6 +10325,27 @@ declare type ManifestChangedEvent = BaseEvents.IdentityEvent & {
|
|
|
10198
10325
|
type: 'manifest-changed';
|
|
10199
10326
|
};
|
|
10200
10327
|
|
|
10328
|
+
/**
|
|
10329
|
+
* Chromium extension entry in an application configuration.
|
|
10330
|
+
*
|
|
10331
|
+
* @interface
|
|
10332
|
+
*/
|
|
10333
|
+
declare type ManifestExtension = {
|
|
10334
|
+
/** Chromium extension ID. */
|
|
10335
|
+
id: string;
|
|
10336
|
+
/** Extension server URL used to install the extension. */
|
|
10337
|
+
serverURL: string;
|
|
10338
|
+
/**
|
|
10339
|
+
* Rules declaring where this extension may inject content scripts into
|
|
10340
|
+
* non-tab surfaces (for example the AI Center). Omit or leave empty to keep
|
|
10341
|
+
* the extension restricted to browser tabs — identical to historic
|
|
10342
|
+
* behavior. A wildcard pattern in `match` grants blanket coverage.
|
|
10343
|
+
* `matchOptions` behaves as it does for domain settings. Intended for
|
|
10344
|
+
* security extensions rather than extensions that add visible UI.
|
|
10345
|
+
*/
|
|
10346
|
+
nonTabInjections?: NonTabInjectionRule[];
|
|
10347
|
+
};
|
|
10348
|
+
|
|
10201
10349
|
/**
|
|
10202
10350
|
* @interface
|
|
10203
10351
|
*/
|
|
@@ -10530,6 +10678,24 @@ declare type MutableViewOptions = {
|
|
|
10530
10678
|
* Used by Workspace to store custom data. Overwriting or modifying this field may impact the functionality of Workspace
|
|
10531
10679
|
*/
|
|
10532
10680
|
_internalWorkspaceData: any;
|
|
10681
|
+
/**
|
|
10682
|
+
* @internal
|
|
10683
|
+
* Used by Workspace to store platform-specific options (including `viewTab`). Overwriting or modifying this field may impact the functionality of Workspace.
|
|
10684
|
+
* Persisted on create, {@link View.View#updateOptions updateOptions}, snapshot, and {@link View.View#getOptions getOptions} — the same way windows persist `workspacePlatform`.
|
|
10685
|
+
*/
|
|
10686
|
+
workspacePlatform?: WorkspacePlatformOptions;
|
|
10687
|
+
/**
|
|
10688
|
+
* Per-view tab icon. Exception to `showFavicons` / `defaultFaviconUrl`.
|
|
10689
|
+
*
|
|
10690
|
+
* Distinct from Window `icon` (taskbar).
|
|
10691
|
+
*
|
|
10692
|
+
* - Omitted / `''` / `'unset'`: inherit — if `showFavicons`, page favicon then `defaultFaviconUrl`, else hide
|
|
10693
|
+
* - URL string: always show that URL, even when `showFavicons` is false. Load failure uses `defaultFaviconUrl`
|
|
10694
|
+
* - `'hide'`: always hide, even when `showFavicons` is true
|
|
10695
|
+
*
|
|
10696
|
+
* On `updateOptions`, omitted keys are a no-op; set `'unset'` to return to inherit.
|
|
10697
|
+
*/
|
|
10698
|
+
icon?: ViewTabIcon;
|
|
10533
10699
|
/**
|
|
10534
10700
|
* {@inheritDoc ViewThrottling}
|
|
10535
10701
|
*
|
|
@@ -11000,6 +11166,32 @@ declare type NonPropagatedWebContentsEvent = never;
|
|
|
11000
11166
|
*/
|
|
11001
11167
|
declare type NonPropagatedWindowEvent = never;
|
|
11002
11168
|
|
|
11169
|
+
/**
|
|
11170
|
+
* Rule permitting a Chromium extension to inject content scripts into non-tab
|
|
11171
|
+
* web content whose URL matches the given patterns.
|
|
11172
|
+
*
|
|
11173
|
+
* Match patterns use the same Chromium
|
|
11174
|
+
* [match pattern](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns)
|
|
11175
|
+
* syntax as {@link DomainSettingsRule}. Omitting `matchOptions` uses the same
|
|
11176
|
+
* default scheme-matching behavior as domain settings.
|
|
11177
|
+
*
|
|
11178
|
+
* @interface
|
|
11179
|
+
*/
|
|
11180
|
+
declare type NonTabInjectionRule = {
|
|
11181
|
+
/**
|
|
11182
|
+
* Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns)
|
|
11183
|
+
* specifying the content locations where the extension may inject outside
|
|
11184
|
+
* browser tabs. An empty array grants no permission. A wildcard grants
|
|
11185
|
+
* blanket coverage of all content locations.
|
|
11186
|
+
*/
|
|
11187
|
+
match: string[];
|
|
11188
|
+
/**
|
|
11189
|
+
* Options to use when comparing URIs to the `match` patterns. Behaves as
|
|
11190
|
+
* {@link DomainSettingsRule.matchOptions} / {@link RuleMatchOptions}.
|
|
11191
|
+
*/
|
|
11192
|
+
matchOptions?: RuleMatchOptions;
|
|
11193
|
+
};
|
|
11194
|
+
|
|
11003
11195
|
/**
|
|
11004
11196
|
* @internal
|
|
11005
11197
|
*
|
|
@@ -11268,6 +11460,7 @@ declare namespace OpenFin {
|
|
|
11268
11460
|
ViewInfo,
|
|
11269
11461
|
WindowThrottling,
|
|
11270
11462
|
ViewThrottling,
|
|
11463
|
+
ViewTabIcon,
|
|
11271
11464
|
UpdatableViewOptions,
|
|
11272
11465
|
ViewCreationOptions,
|
|
11273
11466
|
MutableViewOptions,
|
|
@@ -11321,6 +11514,8 @@ declare namespace OpenFin {
|
|
|
11321
11514
|
ThemeColorsMap,
|
|
11322
11515
|
ThemeColorId,
|
|
11323
11516
|
ThemePalette,
|
|
11517
|
+
NonTabInjectionRule,
|
|
11518
|
+
ManifestExtension,
|
|
11324
11519
|
Manifest,
|
|
11325
11520
|
LayoutContent,
|
|
11326
11521
|
LayoutItemConfig,
|
|
@@ -11438,6 +11633,7 @@ declare namespace OpenFin {
|
|
|
11438
11633
|
ScreenCaptureBehavior,
|
|
11439
11634
|
DomainSettingsPreloadScripts,
|
|
11440
11635
|
PerDomainSettings,
|
|
11636
|
+
UrlRestoreSettings,
|
|
11441
11637
|
CopyPermissions,
|
|
11442
11638
|
PastePermissions,
|
|
11443
11639
|
ClipboardPermissions,
|
|
@@ -11505,6 +11701,7 @@ declare namespace OpenFin {
|
|
|
11505
11701
|
LayoutManagerOverride,
|
|
11506
11702
|
LayoutManager,
|
|
11507
11703
|
HeaderControlsContext,
|
|
11704
|
+
CustomTabControlsContext,
|
|
11508
11705
|
CreateLayoutOptions,
|
|
11509
11706
|
MultiInstanceViewBehavior,
|
|
11510
11707
|
LayoutAccessibilityOptions,
|
|
@@ -11578,6 +11775,12 @@ declare namespace OpenFin {
|
|
|
11578
11775
|
InteropClientEvent,
|
|
11579
11776
|
ClientChangedContextGroup,
|
|
11580
11777
|
InteropClientEvents,
|
|
11778
|
+
GetPerformanceStatsOptions,
|
|
11779
|
+
SerializedPerformanceOptions,
|
|
11780
|
+
CorePerformanceEntry,
|
|
11781
|
+
WebContentPerformanceStats,
|
|
11782
|
+
WindowPerformanceStats,
|
|
11783
|
+
PerformanceStatsResult,
|
|
11581
11784
|
ChromeBrowser,
|
|
11582
11785
|
LanguageInfo,
|
|
11583
11786
|
PageTranslateOptions,
|
|
@@ -11862,6 +12065,12 @@ declare type PerDomainSettings = {
|
|
|
11862
12065
|
* See also {@link AppLogLevel} for more information.
|
|
11863
12066
|
*/
|
|
11864
12067
|
appLogLevel?: AppLogLevel;
|
|
12068
|
+
/**
|
|
12069
|
+
* When the live URL matches this rule, remap inbound
|
|
12070
|
+
* {@link View.ViewModule.navigate View.navigate} / {@link Window.WindowModule.navigate Window.navigate}
|
|
12071
|
+
* to {@link UrlRestoreSettings.url}.
|
|
12072
|
+
*/
|
|
12073
|
+
urlRestore?: UrlRestoreSettings;
|
|
11865
12074
|
};
|
|
11866
12075
|
|
|
11867
12076
|
/**
|
|
@@ -11872,6 +12081,15 @@ declare type PerformanceReportEvent = Performance & BaseEvent_5 & {
|
|
|
11872
12081
|
type: 'performance-report';
|
|
11873
12082
|
};
|
|
11874
12083
|
|
|
12084
|
+
declare type PerformanceStatsResult = {
|
|
12085
|
+
mainWindow: WindowPerformanceStats;
|
|
12086
|
+
childWindows: WindowPerformanceStats[];
|
|
12087
|
+
browser?: {
|
|
12088
|
+
timeOrigin: number;
|
|
12089
|
+
entries: CorePerformanceEntry[];
|
|
12090
|
+
};
|
|
12091
|
+
};
|
|
12092
|
+
|
|
11875
12093
|
/**
|
|
11876
12094
|
* @interface
|
|
11877
12095
|
*
|
|
@@ -14081,6 +14299,11 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
|
|
|
14081
14299
|
response: OpenFin.MenuResult;
|
|
14082
14300
|
};
|
|
14083
14301
|
'close-tray-icon-popup-menu': IdentityCall<{}, void>;
|
|
14302
|
+
'get-application-performance-stats': ApplicationIdentityCall<OpenFin.SerializedPerformanceOptions, OpenFin.PerformanceStatsResult> & {
|
|
14303
|
+
secure: true;
|
|
14304
|
+
namespace: 'Application';
|
|
14305
|
+
apiPath: '.getPerformanceStats';
|
|
14306
|
+
};
|
|
14084
14307
|
'create-application': ApiCall<OpenFin.ApplicationCreationOptions, void>;
|
|
14085
14308
|
'run-applications': ApiCall<{
|
|
14086
14309
|
applications: Array<OpenFin.ManifestInfo>;
|
|
@@ -15466,6 +15689,16 @@ declare type SentMessage<Value> = Promise<Value> & {
|
|
|
15466
15689
|
messageId: ReturnType<Environment['getNextMessageId']>;
|
|
15467
15690
|
};
|
|
15468
15691
|
|
|
15692
|
+
declare type SerializedFilter = string | {
|
|
15693
|
+
type: 'regex';
|
|
15694
|
+
expression: string;
|
|
15695
|
+
flags?: string;
|
|
15696
|
+
};
|
|
15697
|
+
|
|
15698
|
+
declare type SerializedPerformanceOptions = Omit<GetPerformanceStatsOptions, 'include'> & {
|
|
15699
|
+
include?: SerializedFilter[];
|
|
15700
|
+
};
|
|
15701
|
+
|
|
15469
15702
|
declare type ServeAssetOptions = AppAssetServeRequest | PathServeRequest;
|
|
15470
15703
|
|
|
15471
15704
|
declare type ServedAssetInfo = {
|
|
@@ -18373,7 +18606,7 @@ declare class Transport<MeType extends EntityType = EntityType> extends EventEmi
|
|
|
18373
18606
|
connectByPort(config: ExistingConnectConfig): Promise<void>;
|
|
18374
18607
|
private authorize;
|
|
18375
18608
|
sendAction<T extends keyof ProtocolMap>(action: T, payload?: ProtocolMap[T]['request'], uncorrelated?: boolean): SentMessage<SendActionResponse<T>>;
|
|
18376
|
-
protected nackHandler(payloadOrMessage: RuntimeErrorPayload | string, reject: Function, callSites?:
|
|
18609
|
+
protected nackHandler(payloadOrMessage: RuntimeErrorPayload | string, reject: Function, callSites?: CapturedStack): void;
|
|
18377
18610
|
ferryAction(origData: any): Promise<Message<any>>;
|
|
18378
18611
|
registerMessageHandler(handler: MessageHandler): void;
|
|
18379
18612
|
protected addWireListener(id: number, resolve: Function, handleNack: NackHandler, uncorrelated: boolean): void;
|
|
@@ -18479,6 +18712,16 @@ declare type UrlChangedEvent = BaseUrlEvent & ({
|
|
|
18479
18712
|
httpStatusText: string;
|
|
18480
18713
|
});
|
|
18481
18714
|
|
|
18715
|
+
/**
|
|
18716
|
+
* Domain-settings policy that replaces a matched live URL with a configured start URI.
|
|
18717
|
+
*/
|
|
18718
|
+
declare type UrlRestoreSettings = {
|
|
18719
|
+
/**
|
|
18720
|
+
* Absolute replacement URL. Full URL replace, not prefix rewrite.
|
|
18721
|
+
*/
|
|
18722
|
+
url: string;
|
|
18723
|
+
};
|
|
18724
|
+
|
|
18482
18725
|
/**
|
|
18483
18726
|
* @interface
|
|
18484
18727
|
*/
|
|
@@ -19429,10 +19672,10 @@ declare type ViewTabAccessibilityOptions = {
|
|
|
19429
19672
|
* Uses roving tabindex pattern - only one element focusable at a time.
|
|
19430
19673
|
* @default ['active-tab', 'add-tab-button']
|
|
19431
19674
|
*/
|
|
19432
|
-
tabNavigation?: ViewTabElements[];
|
|
19675
|
+
tabNavigation?: Exclude<ViewTabElements, 'active-tab-custom-control' | 'inactive-tab-custom-control'>[];
|
|
19433
19676
|
/**
|
|
19434
19677
|
* Controls which elements are navigable via Arrow keys.
|
|
19435
|
-
* @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button']
|
|
19678
|
+
* @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button', 'active-tab-custom-control', 'inactive-tab-custom-control']
|
|
19436
19679
|
*/
|
|
19437
19680
|
arrowNavigation?: ViewTabElements[];
|
|
19438
19681
|
/**
|
|
@@ -19464,7 +19707,14 @@ declare type ViewTabAccessibilityOptions = {
|
|
|
19464
19707
|
/**
|
|
19465
19708
|
* Elements that can be navigated in view tabs.
|
|
19466
19709
|
*/
|
|
19467
|
-
declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button';
|
|
19710
|
+
declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button' | 'active-tab-custom-control' | 'inactive-tab-custom-control';
|
|
19711
|
+
|
|
19712
|
+
/**
|
|
19713
|
+
* Per-view tab icon. A URL, or the reserved sentinels `'hide'` / `'unset'`.
|
|
19714
|
+
*
|
|
19715
|
+
* `'hide'` and `'unset'` are not URLs. `''` is also unset (inherit) and is the default.
|
|
19716
|
+
*/
|
|
19717
|
+
declare type ViewTabIcon = string | 'hide' | 'unset';
|
|
19468
19718
|
|
|
19469
19719
|
/**
|
|
19470
19720
|
* View throttling state.
|
|
@@ -19518,6 +19768,22 @@ declare type VoidCall = ApiCall<void, void>;
|
|
|
19518
19768
|
|
|
19519
19769
|
declare type WebContent = View_2 | _Window;
|
|
19520
19770
|
|
|
19771
|
+
declare type WebContentPerformanceStatBase = {
|
|
19772
|
+
name: string;
|
|
19773
|
+
entries: CorePerformanceEntry[];
|
|
19774
|
+
navigation: {
|
|
19775
|
+
historyLength: number;
|
|
19776
|
+
timeOrigin: number;
|
|
19777
|
+
};
|
|
19778
|
+
url: string;
|
|
19779
|
+
frames: WebContentPerformanceStats[];
|
|
19780
|
+
};
|
|
19781
|
+
|
|
19782
|
+
declare type WebContentPerformanceStats = WebContentPerformanceStatBase | {
|
|
19783
|
+
error: string;
|
|
19784
|
+
url: string;
|
|
19785
|
+
};
|
|
19786
|
+
|
|
19521
19787
|
declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
|
|
19522
19788
|
identity: OpenFin.Identity;
|
|
19523
19789
|
entityType: 'window' | 'view';
|
|
@@ -22128,6 +22394,13 @@ declare type WindowOptionsChangedEvent = OpenFin.WindowEvents.WindowOptionsChang
|
|
|
22128
22394
|
*/
|
|
22129
22395
|
declare type WindowOptionsChangedEvent_2 = OptionsChangedEvent;
|
|
22130
22396
|
|
|
22397
|
+
declare type WindowPerformanceStats = (WebContentPerformanceStatBase & {
|
|
22398
|
+
views: WebContentPerformanceStats[];
|
|
22399
|
+
}) | {
|
|
22400
|
+
error: string;
|
|
22401
|
+
url: string;
|
|
22402
|
+
};
|
|
22403
|
+
|
|
22131
22404
|
declare type WindowPrintOptions = PrintOptions | ScreenshotPrintOptions | WindowViewsPrintOptions;
|
|
22132
22405
|
|
|
22133
22406
|
/**
|
package/out/fdc3-api.js
CHANGED
|
@@ -900,7 +900,7 @@ class InteropClient extends Base {
|
|
|
900
900
|
*
|
|
901
901
|
* getLastFocusedView()
|
|
902
902
|
* .then(lastFocusedViewIdentity => {
|
|
903
|
-
* joinViewToContextGroup('
|
|
903
|
+
* joinViewToContextGroup('fdc3.channel.1', lastFocusedViewIdentity)
|
|
904
904
|
* })
|
|
905
905
|
* ```
|
|
906
906
|
*/
|
|
@@ -950,7 +950,7 @@ class InteropClient extends Base {
|
|
|
950
950
|
*
|
|
951
951
|
* @example
|
|
952
952
|
* ```js
|
|
953
|
-
* fin.me.interop.getAllClientsInContextGroup('
|
|
953
|
+
* fin.me.interop.getAllClientsInContextGroup('fdc3.channel.1')
|
|
954
954
|
* .then(clientsInContextGroup => {
|
|
955
955
|
* console.log(clientsInContextGroup)
|
|
956
956
|
* })
|
|
@@ -974,7 +974,7 @@ class InteropClient extends Base {
|
|
|
974
974
|
*
|
|
975
975
|
* @example
|
|
976
976
|
* ```js
|
|
977
|
-
* fin.me.interop.getInfoForContextGroup('
|
|
977
|
+
* fin.me.interop.getInfoForContextGroup('fdc3.channel.1')
|
|
978
978
|
* .then(contextGroupInfo => {
|
|
979
979
|
* console.log(contextGroupInfo.displayMetadata.name)
|
|
980
980
|
* console.log(contextGroupInfo.displayMetadata.color)
|
|
@@ -1063,12 +1063,12 @@ class InteropClient extends Base {
|
|
|
1063
1063
|
*
|
|
1064
1064
|
* @example
|
|
1065
1065
|
* ```js
|
|
1066
|
-
* await fin.me.interop.joinContextGroup('
|
|
1066
|
+
* await fin.me.interop.joinContextGroup('fdc3.channel.3');
|
|
1067
1067
|
* await fin.me.interop.setContext({ type: 'instrument', id: { ticker: 'FOO' }});
|
|
1068
1068
|
* const currentContext = await fin.me.interop.getCurrentContext();
|
|
1069
1069
|
*
|
|
1070
1070
|
* // with a specific context
|
|
1071
|
-
* await fin.me.interop.joinContextGroup('
|
|
1071
|
+
* await fin.me.interop.joinContextGroup('fdc3.channel.3');
|
|
1072
1072
|
* await fin.me.interop.setContext({ type: 'country', id: { ISOALPHA3: 'US' }});
|
|
1073
1073
|
* await fin.me.interop.setContext({ type: 'instrument', id: { ticker: 'FOO' }});
|
|
1074
1074
|
* const currentContext = await fin.me.interop.getCurrentContext('country');
|
|
@@ -1374,15 +1374,18 @@ class FDC3ModuleBase {
|
|
|
1374
1374
|
async joinChannel(channelId) {
|
|
1375
1375
|
this.wire.recordAnalytic('fdc3-join-channel');
|
|
1376
1376
|
try {
|
|
1377
|
+
const contextGroup = await this.client.getInfoForContextGroup(channelId);
|
|
1378
|
+
if (!contextGroup) {
|
|
1379
|
+
console.error(`No User Channel was found with the ID "${channelId}". If this is an App Channel, use getOrCreateChannel instead.`);
|
|
1380
|
+
throw new Error(ChannelError.NoChannelFound);
|
|
1381
|
+
}
|
|
1377
1382
|
return await this.client.joinContextGroup(channelId);
|
|
1378
1383
|
}
|
|
1379
1384
|
catch (error) {
|
|
1380
|
-
if (error.message ===
|
|
1381
|
-
|
|
1382
|
-
}
|
|
1383
|
-
else {
|
|
1384
|
-
console.error(error.message);
|
|
1385
|
+
if (error.message === ChannelError.NoChannelFound) {
|
|
1386
|
+
throw new Error(ChannelError.NoChannelFound);
|
|
1385
1387
|
}
|
|
1388
|
+
console.error(error.message);
|
|
1386
1389
|
if (error.message.startsWith('Attempting to join a context group that does not exist')) {
|
|
1387
1390
|
throw new Error(ChannelError.NoChannelFound);
|
|
1388
1391
|
}
|