@openfin/node-adapter 36.78.5 → 36.78.7
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/node-adapter-alpha.d.ts +151 -16
- package/out/node-adapter-beta.d.ts +151 -16
- package/out/node-adapter-public.d.ts +151 -16
- package/out/node-adapter.d.ts +151 -16
- package/out/node-adapter.js +75 -0
- package/package.json +1 -1
@@ -111,6 +111,13 @@ declare type ApiClient<T extends Record<any, any>> = {
|
|
111
111
|
[key in keyof PickOfType<T, Function>]: (...args: Parameters<T[key]>) => ReturnType<T[key]> extends Promise<any> ? ReturnType<T[key]> : Promise<ReturnType<T[key]>>;
|
112
112
|
};
|
113
113
|
|
114
|
+
/**
|
115
|
+
* @interface
|
116
|
+
*/
|
117
|
+
declare type ApiInjection = {
|
118
|
+
fin: InjectionType;
|
119
|
+
};
|
120
|
+
|
114
121
|
/**
|
115
122
|
* Generated when a new Platform's API becomes responsive.
|
116
123
|
* @interface
|
@@ -774,6 +781,72 @@ declare class Application extends EmitterBase<OpenFin.ApplicationEvent> {
|
|
774
781
|
* ```
|
775
782
|
*/
|
776
783
|
getFileDownloadLocation(): Promise<string>;
|
784
|
+
/**
|
785
|
+
* Shows a menu on the tray icon. Use with tray-icon-clicked event.
|
786
|
+
* @param options
|
787
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
788
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
789
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
790
|
+
* these with a "reducer" pattern.
|
791
|
+
* @throws if the application has no tray icon set
|
792
|
+
* @throws if the system tray is currently hidden
|
793
|
+
* @example
|
794
|
+
*
|
795
|
+
* ```js
|
796
|
+
* const iconUrl = 'http://cdn.openfin.co/assets/testing/icons/circled-digit-one.png';
|
797
|
+
* const app = fin.Application.getCurrentSync();
|
798
|
+
*
|
799
|
+
* await app.setTrayIcon(iconUrl);
|
800
|
+
*
|
801
|
+
* const template = [
|
802
|
+
* {
|
803
|
+
* label: 'Menu Item 1',
|
804
|
+
* data: 'hello from item 1'
|
805
|
+
* },
|
806
|
+
* { type: 'separator' },
|
807
|
+
* {
|
808
|
+
* label: 'Menu Item 2',
|
809
|
+
* type: 'checkbox',
|
810
|
+
* checked: true,
|
811
|
+
* data: 'The user clicked the checkbox'
|
812
|
+
* },
|
813
|
+
* {
|
814
|
+
* label: 'see more',
|
815
|
+
* enabled: false,
|
816
|
+
* submenu: [
|
817
|
+
* { label: 'submenu 1', data: 'hello from submenu' }
|
818
|
+
* ]
|
819
|
+
* }
|
820
|
+
* ];
|
821
|
+
*
|
822
|
+
* app.addListener('tray-icon-clicked', (event) => {
|
823
|
+
* // right-click
|
824
|
+
* if (event.button === 2) {
|
825
|
+
* app.showTrayIconPopupMenu({ template }).then(r => {
|
826
|
+
* if (r.result === 'closed') {
|
827
|
+
* console.log('nothing happened');
|
828
|
+
* } else {
|
829
|
+
* console.log(r.data);
|
830
|
+
* }
|
831
|
+
* });
|
832
|
+
* }
|
833
|
+
* });
|
834
|
+
* ```
|
835
|
+
*/
|
836
|
+
showTrayIconPopupMenu<Data>(options: OpenFin.ShowTrayIconPopupMenuOptions<Data>): Promise<OpenFin.MenuResult<Data>>;
|
837
|
+
/**
|
838
|
+
* CLoses the tray icon menu.
|
839
|
+
*
|
840
|
+
* @throws if the application has no tray icon set
|
841
|
+
* @example
|
842
|
+
*
|
843
|
+
* ```js
|
844
|
+
* const app = fin.Application.getCurrentSync();
|
845
|
+
*
|
846
|
+
* await app.closeTrayIconPopupMenu();
|
847
|
+
* ```
|
848
|
+
*/
|
849
|
+
closeTrayIconPopupMenu(): Promise<void>;
|
777
850
|
}
|
778
851
|
|
779
852
|
/**
|
@@ -1178,10 +1251,13 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
|
|
1178
1251
|
*/
|
1179
1252
|
apiDiagnostics: boolean;
|
1180
1253
|
/**
|
1181
|
-
*
|
1182
|
-
* See [here](https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads) for more details.
|
1254
|
+
* @deprecated Please use {@link domainSettings} instead
|
1183
1255
|
*/
|
1184
1256
|
defaultDomainSettings: DefaultDomainSettings;
|
1257
|
+
/**
|
1258
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
1259
|
+
*/
|
1260
|
+
domainSettings: DomainSettings;
|
1185
1261
|
/**
|
1186
1262
|
* @defaultValue false
|
1187
1263
|
*
|
@@ -3480,9 +3556,13 @@ declare type ConstViewOptions = {
|
|
3480
3556
|
/**
|
3481
3557
|
* Controls interaction of the view with its parent window's download shelf.
|
3482
3558
|
*/
|
3483
|
-
downloadShelf
|
3559
|
+
downloadShelf: {
|
3484
3560
|
/**
|
3485
|
-
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow
|
3561
|
+
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow.
|
3562
|
+
*
|
3563
|
+
* @remarks If `enabled: true`, downloads from this view will cause the download shelf to display
|
3564
|
+
* on the parent window even if that parent window's {@link DownloadShelfOptions} specify
|
3565
|
+
* `enabled: false`.
|
3486
3566
|
*/
|
3487
3567
|
enabled: boolean;
|
3488
3568
|
};
|
@@ -3598,6 +3678,12 @@ declare type ConstWindowOptions = {
|
|
3598
3678
|
* launches in favor of the cached value.
|
3599
3679
|
*/
|
3600
3680
|
defaultWidth: number;
|
3681
|
+
/**
|
3682
|
+
* Controls the styling and behavior of the window download shelf.
|
3683
|
+
*
|
3684
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
3685
|
+
* triggered by the window itself, or a view targeting the window.
|
3686
|
+
*/
|
3601
3687
|
downloadShelf: DownloadShelfOptions;
|
3602
3688
|
height: number;
|
3603
3689
|
layout: any;
|
@@ -4435,21 +4521,15 @@ declare type CustomRequestHeaders = {
|
|
4435
4521
|
declare type DataChannelReadyState = RTCDataChannel['readyState'];
|
4436
4522
|
|
4437
4523
|
/**
|
4524
|
+
* @deprecated Use {@link OpenFin.DomainSettings} instead.
|
4438
4525
|
* @interface
|
4439
4526
|
*/
|
4440
|
-
declare type DefaultDomainSettings =
|
4441
|
-
rules: DefaultDomainSettingsRule[];
|
4442
|
-
};
|
4527
|
+
declare type DefaultDomainSettings = DomainSettings;
|
4443
4528
|
|
4444
4529
|
/**
|
4445
|
-
* @
|
4530
|
+
* @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
|
4446
4531
|
*/
|
4447
|
-
declare type DefaultDomainSettingsRule =
|
4448
|
-
match: string[];
|
4449
|
-
options: {
|
4450
|
-
downloadSettings: FileDownloadSettings;
|
4451
|
-
};
|
4452
|
-
};
|
4532
|
+
declare type DefaultDomainSettingsRule = DomainSettingsRule;
|
4453
4533
|
|
4454
4534
|
declare interface DesktopAgent {
|
4455
4535
|
open(app: TargetApp, context?: Context): Promise<void>;
|
@@ -4694,6 +4774,25 @@ declare type DisplayMetadata_3 = {
|
|
4694
4774
|
readonly glyph?: string;
|
4695
4775
|
};
|
4696
4776
|
|
4777
|
+
/**
|
4778
|
+
* @interface
|
4779
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
4780
|
+
*/
|
4781
|
+
declare type DomainSettings = {
|
4782
|
+
rules: DomainSettingsRule[];
|
4783
|
+
};
|
4784
|
+
|
4785
|
+
/**
|
4786
|
+
* @interface
|
4787
|
+
*/
|
4788
|
+
declare type DomainSettingsRule = {
|
4789
|
+
match: string[];
|
4790
|
+
options: {
|
4791
|
+
downloadSettings?: FileDownloadSettings;
|
4792
|
+
api?: ApiInjection;
|
4793
|
+
};
|
4794
|
+
};
|
4795
|
+
|
4697
4796
|
/**
|
4698
4797
|
* Metadata returned from a preload script download request.
|
4699
4798
|
*
|
@@ -4738,14 +4837,24 @@ declare type DownloadRule = {
|
|
4738
4837
|
* @interface
|
4739
4838
|
*
|
4740
4839
|
* Controls the styling and behavior of the window download shelf.
|
4840
|
+
*
|
4841
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
4842
|
+
* triggered by the window itself, or a view targeting the window.
|
4741
4843
|
*/
|
4742
4844
|
declare type DownloadShelfOptions = {
|
4743
4845
|
/**
|
4744
|
-
* Whether downloads in this window trigger
|
4846
|
+
* Whether downloads in this window trigger display of the download shelf.
|
4847
|
+
*
|
4848
|
+
* @remarks Setting this to false will *not* prevent the download shelf from opening if a child view
|
4849
|
+
* with `downloadShelf: { enabled: true }` initiates a download.
|
4745
4850
|
*/
|
4746
4851
|
enabled: boolean;
|
4747
4852
|
/**
|
4748
4853
|
* Styling options for the download shelf border.
|
4854
|
+
*
|
4855
|
+
* @remarks These apply regardless of whether download shelf display was
|
4856
|
+
* triggered by this window itself, or a view targeting the window. Individual views
|
4857
|
+
* cannot control the rendering of their parent window's download shelf.
|
4749
4858
|
*/
|
4750
4859
|
border?: {
|
4751
4860
|
/**
|
@@ -6568,6 +6677,11 @@ declare type InitPlatformOptions = {
|
|
6568
6677
|
interopOverride?: OverrideCallback<InteropBroker> | ConstructorOverride<InteropBroker>[];
|
6569
6678
|
};
|
6570
6679
|
|
6680
|
+
/**
|
6681
|
+
* * 'none': The `fin` API will be not available from within this context.
|
6682
|
+
* * 'global': The entire `fin` API will be available from within this context.
|
6683
|
+
* @defaultValue 'global'
|
6684
|
+
*/
|
6571
6685
|
declare type InjectionType = 'none' | 'global';
|
6572
6686
|
|
6573
6687
|
/**
|
@@ -8823,7 +8937,7 @@ declare type LayoutOptions = {
|
|
8823
8937
|
declare type LayoutPosition = 'top' | 'bottom' | 'left' | 'right';
|
8824
8938
|
|
8825
8939
|
/**
|
8826
|
-
*
|
8940
|
+
* Layout preset type.
|
8827
8941
|
*/
|
8828
8942
|
declare type LayoutPresetType = 'columns' | 'grid' | 'rows' | 'tabs';
|
8829
8943
|
|
@@ -9869,11 +9983,15 @@ declare namespace OpenFin {
|
|
9869
9983
|
ClosedMenuResult,
|
9870
9984
|
MenuResult,
|
9871
9985
|
ShowPopupMenuOptions,
|
9986
|
+
ShowTrayIconPopupMenuOptions,
|
9872
9987
|
MenuItemTemplate,
|
9873
9988
|
NativeWindowIntegrationProviderAuthorization,
|
9874
9989
|
RuntimeInfo,
|
9875
9990
|
DefaultDomainSettings,
|
9876
9991
|
DefaultDomainSettingsRule,
|
9992
|
+
DomainSettings,
|
9993
|
+
ApiInjection,
|
9994
|
+
DomainSettingsRule,
|
9877
9995
|
FileDownloadBehaviorNames,
|
9878
9996
|
FileDownloadSettings,
|
9879
9997
|
DownloadRule,
|
@@ -13104,6 +13222,23 @@ declare type ShowRequestedEvent = BaseEvent_5 & {
|
|
13104
13222
|
type: 'show-requested';
|
13105
13223
|
};
|
13106
13224
|
|
13225
|
+
/**
|
13226
|
+
* Options for showing a tray icon popup menu
|
13227
|
+
*
|
13228
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
13229
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
13230
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
13231
|
+
* these with a "reducer" pattern.
|
13232
|
+
*
|
13233
|
+
* @interface
|
13234
|
+
*/
|
13235
|
+
declare type ShowTrayIconPopupMenuOptions<Data extends unknown = unknown> = {
|
13236
|
+
/**
|
13237
|
+
* An array describing the menu to show.
|
13238
|
+
*/
|
13239
|
+
template: MenuItemTemplate<Data>[];
|
13240
|
+
};
|
13241
|
+
|
13107
13242
|
/**
|
13108
13243
|
* _Platform Windows Only_. Enables views to be shown when a Platform Window is being resized by the user.
|
13109
13244
|
*
|
@@ -111,6 +111,13 @@ declare type ApiClient<T extends Record<any, any>> = {
|
|
111
111
|
[key in keyof PickOfType<T, Function>]: (...args: Parameters<T[key]>) => ReturnType<T[key]> extends Promise<any> ? ReturnType<T[key]> : Promise<ReturnType<T[key]>>;
|
112
112
|
};
|
113
113
|
|
114
|
+
/**
|
115
|
+
* @interface
|
116
|
+
*/
|
117
|
+
declare type ApiInjection = {
|
118
|
+
fin: InjectionType;
|
119
|
+
};
|
120
|
+
|
114
121
|
/**
|
115
122
|
* Generated when a new Platform's API becomes responsive.
|
116
123
|
* @interface
|
@@ -774,6 +781,72 @@ declare class Application extends EmitterBase<OpenFin.ApplicationEvent> {
|
|
774
781
|
* ```
|
775
782
|
*/
|
776
783
|
getFileDownloadLocation(): Promise<string>;
|
784
|
+
/**
|
785
|
+
* Shows a menu on the tray icon. Use with tray-icon-clicked event.
|
786
|
+
* @param options
|
787
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
788
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
789
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
790
|
+
* these with a "reducer" pattern.
|
791
|
+
* @throws if the application has no tray icon set
|
792
|
+
* @throws if the system tray is currently hidden
|
793
|
+
* @example
|
794
|
+
*
|
795
|
+
* ```js
|
796
|
+
* const iconUrl = 'http://cdn.openfin.co/assets/testing/icons/circled-digit-one.png';
|
797
|
+
* const app = fin.Application.getCurrentSync();
|
798
|
+
*
|
799
|
+
* await app.setTrayIcon(iconUrl);
|
800
|
+
*
|
801
|
+
* const template = [
|
802
|
+
* {
|
803
|
+
* label: 'Menu Item 1',
|
804
|
+
* data: 'hello from item 1'
|
805
|
+
* },
|
806
|
+
* { type: 'separator' },
|
807
|
+
* {
|
808
|
+
* label: 'Menu Item 2',
|
809
|
+
* type: 'checkbox',
|
810
|
+
* checked: true,
|
811
|
+
* data: 'The user clicked the checkbox'
|
812
|
+
* },
|
813
|
+
* {
|
814
|
+
* label: 'see more',
|
815
|
+
* enabled: false,
|
816
|
+
* submenu: [
|
817
|
+
* { label: 'submenu 1', data: 'hello from submenu' }
|
818
|
+
* ]
|
819
|
+
* }
|
820
|
+
* ];
|
821
|
+
*
|
822
|
+
* app.addListener('tray-icon-clicked', (event) => {
|
823
|
+
* // right-click
|
824
|
+
* if (event.button === 2) {
|
825
|
+
* app.showTrayIconPopupMenu({ template }).then(r => {
|
826
|
+
* if (r.result === 'closed') {
|
827
|
+
* console.log('nothing happened');
|
828
|
+
* } else {
|
829
|
+
* console.log(r.data);
|
830
|
+
* }
|
831
|
+
* });
|
832
|
+
* }
|
833
|
+
* });
|
834
|
+
* ```
|
835
|
+
*/
|
836
|
+
showTrayIconPopupMenu<Data>(options: OpenFin.ShowTrayIconPopupMenuOptions<Data>): Promise<OpenFin.MenuResult<Data>>;
|
837
|
+
/**
|
838
|
+
* CLoses the tray icon menu.
|
839
|
+
*
|
840
|
+
* @throws if the application has no tray icon set
|
841
|
+
* @example
|
842
|
+
*
|
843
|
+
* ```js
|
844
|
+
* const app = fin.Application.getCurrentSync();
|
845
|
+
*
|
846
|
+
* await app.closeTrayIconPopupMenu();
|
847
|
+
* ```
|
848
|
+
*/
|
849
|
+
closeTrayIconPopupMenu(): Promise<void>;
|
777
850
|
}
|
778
851
|
|
779
852
|
/**
|
@@ -1178,10 +1251,13 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
|
|
1178
1251
|
*/
|
1179
1252
|
apiDiagnostics: boolean;
|
1180
1253
|
/**
|
1181
|
-
*
|
1182
|
-
* See [here](https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads) for more details.
|
1254
|
+
* @deprecated Please use {@link domainSettings} instead
|
1183
1255
|
*/
|
1184
1256
|
defaultDomainSettings: DefaultDomainSettings;
|
1257
|
+
/**
|
1258
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
1259
|
+
*/
|
1260
|
+
domainSettings: DomainSettings;
|
1185
1261
|
/**
|
1186
1262
|
* @defaultValue false
|
1187
1263
|
*
|
@@ -3480,9 +3556,13 @@ declare type ConstViewOptions = {
|
|
3480
3556
|
/**
|
3481
3557
|
* Controls interaction of the view with its parent window's download shelf.
|
3482
3558
|
*/
|
3483
|
-
downloadShelf
|
3559
|
+
downloadShelf: {
|
3484
3560
|
/**
|
3485
|
-
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow
|
3561
|
+
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow.
|
3562
|
+
*
|
3563
|
+
* @remarks If `enabled: true`, downloads from this view will cause the download shelf to display
|
3564
|
+
* on the parent window even if that parent window's {@link DownloadShelfOptions} specify
|
3565
|
+
* `enabled: false`.
|
3486
3566
|
*/
|
3487
3567
|
enabled: boolean;
|
3488
3568
|
};
|
@@ -3598,6 +3678,12 @@ declare type ConstWindowOptions = {
|
|
3598
3678
|
* launches in favor of the cached value.
|
3599
3679
|
*/
|
3600
3680
|
defaultWidth: number;
|
3681
|
+
/**
|
3682
|
+
* Controls the styling and behavior of the window download shelf.
|
3683
|
+
*
|
3684
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
3685
|
+
* triggered by the window itself, or a view targeting the window.
|
3686
|
+
*/
|
3601
3687
|
downloadShelf: DownloadShelfOptions;
|
3602
3688
|
height: number;
|
3603
3689
|
layout: any;
|
@@ -4435,21 +4521,15 @@ declare type CustomRequestHeaders = {
|
|
4435
4521
|
declare type DataChannelReadyState = RTCDataChannel['readyState'];
|
4436
4522
|
|
4437
4523
|
/**
|
4524
|
+
* @deprecated Use {@link OpenFin.DomainSettings} instead.
|
4438
4525
|
* @interface
|
4439
4526
|
*/
|
4440
|
-
declare type DefaultDomainSettings =
|
4441
|
-
rules: DefaultDomainSettingsRule[];
|
4442
|
-
};
|
4527
|
+
declare type DefaultDomainSettings = DomainSettings;
|
4443
4528
|
|
4444
4529
|
/**
|
4445
|
-
* @
|
4530
|
+
* @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
|
4446
4531
|
*/
|
4447
|
-
declare type DefaultDomainSettingsRule =
|
4448
|
-
match: string[];
|
4449
|
-
options: {
|
4450
|
-
downloadSettings: FileDownloadSettings;
|
4451
|
-
};
|
4452
|
-
};
|
4532
|
+
declare type DefaultDomainSettingsRule = DomainSettingsRule;
|
4453
4533
|
|
4454
4534
|
declare interface DesktopAgent {
|
4455
4535
|
open(app: TargetApp, context?: Context): Promise<void>;
|
@@ -4694,6 +4774,25 @@ declare type DisplayMetadata_3 = {
|
|
4694
4774
|
readonly glyph?: string;
|
4695
4775
|
};
|
4696
4776
|
|
4777
|
+
/**
|
4778
|
+
* @interface
|
4779
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
4780
|
+
*/
|
4781
|
+
declare type DomainSettings = {
|
4782
|
+
rules: DomainSettingsRule[];
|
4783
|
+
};
|
4784
|
+
|
4785
|
+
/**
|
4786
|
+
* @interface
|
4787
|
+
*/
|
4788
|
+
declare type DomainSettingsRule = {
|
4789
|
+
match: string[];
|
4790
|
+
options: {
|
4791
|
+
downloadSettings?: FileDownloadSettings;
|
4792
|
+
api?: ApiInjection;
|
4793
|
+
};
|
4794
|
+
};
|
4795
|
+
|
4697
4796
|
/**
|
4698
4797
|
* Metadata returned from a preload script download request.
|
4699
4798
|
*
|
@@ -4738,14 +4837,24 @@ declare type DownloadRule = {
|
|
4738
4837
|
* @interface
|
4739
4838
|
*
|
4740
4839
|
* Controls the styling and behavior of the window download shelf.
|
4840
|
+
*
|
4841
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
4842
|
+
* triggered by the window itself, or a view targeting the window.
|
4741
4843
|
*/
|
4742
4844
|
declare type DownloadShelfOptions = {
|
4743
4845
|
/**
|
4744
|
-
* Whether downloads in this window trigger
|
4846
|
+
* Whether downloads in this window trigger display of the download shelf.
|
4847
|
+
*
|
4848
|
+
* @remarks Setting this to false will *not* prevent the download shelf from opening if a child view
|
4849
|
+
* with `downloadShelf: { enabled: true }` initiates a download.
|
4745
4850
|
*/
|
4746
4851
|
enabled: boolean;
|
4747
4852
|
/**
|
4748
4853
|
* Styling options for the download shelf border.
|
4854
|
+
*
|
4855
|
+
* @remarks These apply regardless of whether download shelf display was
|
4856
|
+
* triggered by this window itself, or a view targeting the window. Individual views
|
4857
|
+
* cannot control the rendering of their parent window's download shelf.
|
4749
4858
|
*/
|
4750
4859
|
border?: {
|
4751
4860
|
/**
|
@@ -6568,6 +6677,11 @@ declare type InitPlatformOptions = {
|
|
6568
6677
|
interopOverride?: OverrideCallback<InteropBroker> | ConstructorOverride<InteropBroker>[];
|
6569
6678
|
};
|
6570
6679
|
|
6680
|
+
/**
|
6681
|
+
* * 'none': The `fin` API will be not available from within this context.
|
6682
|
+
* * 'global': The entire `fin` API will be available from within this context.
|
6683
|
+
* @defaultValue 'global'
|
6684
|
+
*/
|
6571
6685
|
declare type InjectionType = 'none' | 'global';
|
6572
6686
|
|
6573
6687
|
/**
|
@@ -8823,7 +8937,7 @@ declare type LayoutOptions = {
|
|
8823
8937
|
declare type LayoutPosition = 'top' | 'bottom' | 'left' | 'right';
|
8824
8938
|
|
8825
8939
|
/**
|
8826
|
-
*
|
8940
|
+
* Layout preset type.
|
8827
8941
|
*/
|
8828
8942
|
declare type LayoutPresetType = 'columns' | 'grid' | 'rows' | 'tabs';
|
8829
8943
|
|
@@ -9869,11 +9983,15 @@ declare namespace OpenFin {
|
|
9869
9983
|
ClosedMenuResult,
|
9870
9984
|
MenuResult,
|
9871
9985
|
ShowPopupMenuOptions,
|
9986
|
+
ShowTrayIconPopupMenuOptions,
|
9872
9987
|
MenuItemTemplate,
|
9873
9988
|
NativeWindowIntegrationProviderAuthorization,
|
9874
9989
|
RuntimeInfo,
|
9875
9990
|
DefaultDomainSettings,
|
9876
9991
|
DefaultDomainSettingsRule,
|
9992
|
+
DomainSettings,
|
9993
|
+
ApiInjection,
|
9994
|
+
DomainSettingsRule,
|
9877
9995
|
FileDownloadBehaviorNames,
|
9878
9996
|
FileDownloadSettings,
|
9879
9997
|
DownloadRule,
|
@@ -13104,6 +13222,23 @@ declare type ShowRequestedEvent = BaseEvent_5 & {
|
|
13104
13222
|
type: 'show-requested';
|
13105
13223
|
};
|
13106
13224
|
|
13225
|
+
/**
|
13226
|
+
* Options for showing a tray icon popup menu
|
13227
|
+
*
|
13228
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
13229
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
13230
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
13231
|
+
* these with a "reducer" pattern.
|
13232
|
+
*
|
13233
|
+
* @interface
|
13234
|
+
*/
|
13235
|
+
declare type ShowTrayIconPopupMenuOptions<Data extends unknown = unknown> = {
|
13236
|
+
/**
|
13237
|
+
* An array describing the menu to show.
|
13238
|
+
*/
|
13239
|
+
template: MenuItemTemplate<Data>[];
|
13240
|
+
};
|
13241
|
+
|
13107
13242
|
/**
|
13108
13243
|
* _Platform Windows Only_. Enables views to be shown when a Platform Window is being resized by the user.
|
13109
13244
|
*
|
@@ -111,6 +111,13 @@ declare type ApiClient<T extends Record<any, any>> = {
|
|
111
111
|
[key in keyof PickOfType<T, Function>]: (...args: Parameters<T[key]>) => ReturnType<T[key]> extends Promise<any> ? ReturnType<T[key]> : Promise<ReturnType<T[key]>>;
|
112
112
|
};
|
113
113
|
|
114
|
+
/**
|
115
|
+
* @interface
|
116
|
+
*/
|
117
|
+
declare type ApiInjection = {
|
118
|
+
fin: InjectionType;
|
119
|
+
};
|
120
|
+
|
114
121
|
/**
|
115
122
|
* Generated when a new Platform's API becomes responsive.
|
116
123
|
* @interface
|
@@ -774,6 +781,72 @@ declare class Application extends EmitterBase<OpenFin.ApplicationEvent> {
|
|
774
781
|
* ```
|
775
782
|
*/
|
776
783
|
getFileDownloadLocation(): Promise<string>;
|
784
|
+
/**
|
785
|
+
* Shows a menu on the tray icon. Use with tray-icon-clicked event.
|
786
|
+
* @param options
|
787
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
788
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
789
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
790
|
+
* these with a "reducer" pattern.
|
791
|
+
* @throws if the application has no tray icon set
|
792
|
+
* @throws if the system tray is currently hidden
|
793
|
+
* @example
|
794
|
+
*
|
795
|
+
* ```js
|
796
|
+
* const iconUrl = 'http://cdn.openfin.co/assets/testing/icons/circled-digit-one.png';
|
797
|
+
* const app = fin.Application.getCurrentSync();
|
798
|
+
*
|
799
|
+
* await app.setTrayIcon(iconUrl);
|
800
|
+
*
|
801
|
+
* const template = [
|
802
|
+
* {
|
803
|
+
* label: 'Menu Item 1',
|
804
|
+
* data: 'hello from item 1'
|
805
|
+
* },
|
806
|
+
* { type: 'separator' },
|
807
|
+
* {
|
808
|
+
* label: 'Menu Item 2',
|
809
|
+
* type: 'checkbox',
|
810
|
+
* checked: true,
|
811
|
+
* data: 'The user clicked the checkbox'
|
812
|
+
* },
|
813
|
+
* {
|
814
|
+
* label: 'see more',
|
815
|
+
* enabled: false,
|
816
|
+
* submenu: [
|
817
|
+
* { label: 'submenu 1', data: 'hello from submenu' }
|
818
|
+
* ]
|
819
|
+
* }
|
820
|
+
* ];
|
821
|
+
*
|
822
|
+
* app.addListener('tray-icon-clicked', (event) => {
|
823
|
+
* // right-click
|
824
|
+
* if (event.button === 2) {
|
825
|
+
* app.showTrayIconPopupMenu({ template }).then(r => {
|
826
|
+
* if (r.result === 'closed') {
|
827
|
+
* console.log('nothing happened');
|
828
|
+
* } else {
|
829
|
+
* console.log(r.data);
|
830
|
+
* }
|
831
|
+
* });
|
832
|
+
* }
|
833
|
+
* });
|
834
|
+
* ```
|
835
|
+
*/
|
836
|
+
showTrayIconPopupMenu<Data>(options: OpenFin.ShowTrayIconPopupMenuOptions<Data>): Promise<OpenFin.MenuResult<Data>>;
|
837
|
+
/**
|
838
|
+
* CLoses the tray icon menu.
|
839
|
+
*
|
840
|
+
* @throws if the application has no tray icon set
|
841
|
+
* @example
|
842
|
+
*
|
843
|
+
* ```js
|
844
|
+
* const app = fin.Application.getCurrentSync();
|
845
|
+
*
|
846
|
+
* await app.closeTrayIconPopupMenu();
|
847
|
+
* ```
|
848
|
+
*/
|
849
|
+
closeTrayIconPopupMenu(): Promise<void>;
|
777
850
|
}
|
778
851
|
|
779
852
|
/**
|
@@ -1178,10 +1251,13 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
|
|
1178
1251
|
*/
|
1179
1252
|
apiDiagnostics: boolean;
|
1180
1253
|
/**
|
1181
|
-
*
|
1182
|
-
* See [here](https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads) for more details.
|
1254
|
+
* @deprecated Please use {@link domainSettings} instead
|
1183
1255
|
*/
|
1184
1256
|
defaultDomainSettings: DefaultDomainSettings;
|
1257
|
+
/**
|
1258
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
1259
|
+
*/
|
1260
|
+
domainSettings: DomainSettings;
|
1185
1261
|
/**
|
1186
1262
|
* @defaultValue false
|
1187
1263
|
*
|
@@ -3480,9 +3556,13 @@ declare type ConstViewOptions = {
|
|
3480
3556
|
/**
|
3481
3557
|
* Controls interaction of the view with its parent window's download shelf.
|
3482
3558
|
*/
|
3483
|
-
downloadShelf
|
3559
|
+
downloadShelf: {
|
3484
3560
|
/**
|
3485
|
-
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow
|
3561
|
+
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow.
|
3562
|
+
*
|
3563
|
+
* @remarks If `enabled: true`, downloads from this view will cause the download shelf to display
|
3564
|
+
* on the parent window even if that parent window's {@link DownloadShelfOptions} specify
|
3565
|
+
* `enabled: false`.
|
3486
3566
|
*/
|
3487
3567
|
enabled: boolean;
|
3488
3568
|
};
|
@@ -3598,6 +3678,12 @@ declare type ConstWindowOptions = {
|
|
3598
3678
|
* launches in favor of the cached value.
|
3599
3679
|
*/
|
3600
3680
|
defaultWidth: number;
|
3681
|
+
/**
|
3682
|
+
* Controls the styling and behavior of the window download shelf.
|
3683
|
+
*
|
3684
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
3685
|
+
* triggered by the window itself, or a view targeting the window.
|
3686
|
+
*/
|
3601
3687
|
downloadShelf: DownloadShelfOptions;
|
3602
3688
|
height: number;
|
3603
3689
|
layout: any;
|
@@ -4435,21 +4521,15 @@ declare type CustomRequestHeaders = {
|
|
4435
4521
|
declare type DataChannelReadyState = RTCDataChannel['readyState'];
|
4436
4522
|
|
4437
4523
|
/**
|
4524
|
+
* @deprecated Use {@link OpenFin.DomainSettings} instead.
|
4438
4525
|
* @interface
|
4439
4526
|
*/
|
4440
|
-
declare type DefaultDomainSettings =
|
4441
|
-
rules: DefaultDomainSettingsRule[];
|
4442
|
-
};
|
4527
|
+
declare type DefaultDomainSettings = DomainSettings;
|
4443
4528
|
|
4444
4529
|
/**
|
4445
|
-
* @
|
4530
|
+
* @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
|
4446
4531
|
*/
|
4447
|
-
declare type DefaultDomainSettingsRule =
|
4448
|
-
match: string[];
|
4449
|
-
options: {
|
4450
|
-
downloadSettings: FileDownloadSettings;
|
4451
|
-
};
|
4452
|
-
};
|
4532
|
+
declare type DefaultDomainSettingsRule = DomainSettingsRule;
|
4453
4533
|
|
4454
4534
|
declare interface DesktopAgent {
|
4455
4535
|
open(app: TargetApp, context?: Context): Promise<void>;
|
@@ -4694,6 +4774,25 @@ declare type DisplayMetadata_3 = {
|
|
4694
4774
|
readonly glyph?: string;
|
4695
4775
|
};
|
4696
4776
|
|
4777
|
+
/**
|
4778
|
+
* @interface
|
4779
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
4780
|
+
*/
|
4781
|
+
declare type DomainSettings = {
|
4782
|
+
rules: DomainSettingsRule[];
|
4783
|
+
};
|
4784
|
+
|
4785
|
+
/**
|
4786
|
+
* @interface
|
4787
|
+
*/
|
4788
|
+
declare type DomainSettingsRule = {
|
4789
|
+
match: string[];
|
4790
|
+
options: {
|
4791
|
+
downloadSettings?: FileDownloadSettings;
|
4792
|
+
api?: ApiInjection;
|
4793
|
+
};
|
4794
|
+
};
|
4795
|
+
|
4697
4796
|
/**
|
4698
4797
|
* Metadata returned from a preload script download request.
|
4699
4798
|
*
|
@@ -4738,14 +4837,24 @@ declare type DownloadRule = {
|
|
4738
4837
|
* @interface
|
4739
4838
|
*
|
4740
4839
|
* Controls the styling and behavior of the window download shelf.
|
4840
|
+
*
|
4841
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
4842
|
+
* triggered by the window itself, or a view targeting the window.
|
4741
4843
|
*/
|
4742
4844
|
declare type DownloadShelfOptions = {
|
4743
4845
|
/**
|
4744
|
-
* Whether downloads in this window trigger
|
4846
|
+
* Whether downloads in this window trigger display of the download shelf.
|
4847
|
+
*
|
4848
|
+
* @remarks Setting this to false will *not* prevent the download shelf from opening if a child view
|
4849
|
+
* with `downloadShelf: { enabled: true }` initiates a download.
|
4745
4850
|
*/
|
4746
4851
|
enabled: boolean;
|
4747
4852
|
/**
|
4748
4853
|
* Styling options for the download shelf border.
|
4854
|
+
*
|
4855
|
+
* @remarks These apply regardless of whether download shelf display was
|
4856
|
+
* triggered by this window itself, or a view targeting the window. Individual views
|
4857
|
+
* cannot control the rendering of their parent window's download shelf.
|
4749
4858
|
*/
|
4750
4859
|
border?: {
|
4751
4860
|
/**
|
@@ -6568,6 +6677,11 @@ declare type InitPlatformOptions = {
|
|
6568
6677
|
interopOverride?: OverrideCallback<InteropBroker> | ConstructorOverride<InteropBroker>[];
|
6569
6678
|
};
|
6570
6679
|
|
6680
|
+
/**
|
6681
|
+
* * 'none': The `fin` API will be not available from within this context.
|
6682
|
+
* * 'global': The entire `fin` API will be available from within this context.
|
6683
|
+
* @defaultValue 'global'
|
6684
|
+
*/
|
6571
6685
|
declare type InjectionType = 'none' | 'global';
|
6572
6686
|
|
6573
6687
|
/**
|
@@ -8823,7 +8937,7 @@ declare type LayoutOptions = {
|
|
8823
8937
|
declare type LayoutPosition = 'top' | 'bottom' | 'left' | 'right';
|
8824
8938
|
|
8825
8939
|
/**
|
8826
|
-
*
|
8940
|
+
* Layout preset type.
|
8827
8941
|
*/
|
8828
8942
|
declare type LayoutPresetType = 'columns' | 'grid' | 'rows' | 'tabs';
|
8829
8943
|
|
@@ -9869,11 +9983,15 @@ declare namespace OpenFin {
|
|
9869
9983
|
ClosedMenuResult,
|
9870
9984
|
MenuResult,
|
9871
9985
|
ShowPopupMenuOptions,
|
9986
|
+
ShowTrayIconPopupMenuOptions,
|
9872
9987
|
MenuItemTemplate,
|
9873
9988
|
NativeWindowIntegrationProviderAuthorization,
|
9874
9989
|
RuntimeInfo,
|
9875
9990
|
DefaultDomainSettings,
|
9876
9991
|
DefaultDomainSettingsRule,
|
9992
|
+
DomainSettings,
|
9993
|
+
ApiInjection,
|
9994
|
+
DomainSettingsRule,
|
9877
9995
|
FileDownloadBehaviorNames,
|
9878
9996
|
FileDownloadSettings,
|
9879
9997
|
DownloadRule,
|
@@ -13104,6 +13222,23 @@ declare type ShowRequestedEvent = BaseEvent_5 & {
|
|
13104
13222
|
type: 'show-requested';
|
13105
13223
|
};
|
13106
13224
|
|
13225
|
+
/**
|
13226
|
+
* Options for showing a tray icon popup menu
|
13227
|
+
*
|
13228
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
13229
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
13230
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
13231
|
+
* these with a "reducer" pattern.
|
13232
|
+
*
|
13233
|
+
* @interface
|
13234
|
+
*/
|
13235
|
+
declare type ShowTrayIconPopupMenuOptions<Data extends unknown = unknown> = {
|
13236
|
+
/**
|
13237
|
+
* An array describing the menu to show.
|
13238
|
+
*/
|
13239
|
+
template: MenuItemTemplate<Data>[];
|
13240
|
+
};
|
13241
|
+
|
13107
13242
|
/**
|
13108
13243
|
* _Platform Windows Only_. Enables views to be shown when a Platform Window is being resized by the user.
|
13109
13244
|
*
|
package/out/node-adapter.d.ts
CHANGED
@@ -111,6 +111,13 @@ declare type ApiClient<T extends Record<any, any>> = {
|
|
111
111
|
[key in keyof PickOfType<T, Function>]: (...args: Parameters<T[key]>) => ReturnType<T[key]> extends Promise<any> ? ReturnType<T[key]> : Promise<ReturnType<T[key]>>;
|
112
112
|
};
|
113
113
|
|
114
|
+
/**
|
115
|
+
* @interface
|
116
|
+
*/
|
117
|
+
declare type ApiInjection = {
|
118
|
+
fin: InjectionType;
|
119
|
+
};
|
120
|
+
|
114
121
|
/**
|
115
122
|
* Generated when a new Platform's API becomes responsive.
|
116
123
|
* @interface
|
@@ -780,6 +787,72 @@ declare class Application extends EmitterBase<OpenFin.ApplicationEvent> {
|
|
780
787
|
* ```
|
781
788
|
*/
|
782
789
|
getFileDownloadLocation(): Promise<string>;
|
790
|
+
/**
|
791
|
+
* Shows a menu on the tray icon. Use with tray-icon-clicked event.
|
792
|
+
* @param options
|
793
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
794
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
795
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
796
|
+
* these with a "reducer" pattern.
|
797
|
+
* @throws if the application has no tray icon set
|
798
|
+
* @throws if the system tray is currently hidden
|
799
|
+
* @example
|
800
|
+
*
|
801
|
+
* ```js
|
802
|
+
* const iconUrl = 'http://cdn.openfin.co/assets/testing/icons/circled-digit-one.png';
|
803
|
+
* const app = fin.Application.getCurrentSync();
|
804
|
+
*
|
805
|
+
* await app.setTrayIcon(iconUrl);
|
806
|
+
*
|
807
|
+
* const template = [
|
808
|
+
* {
|
809
|
+
* label: 'Menu Item 1',
|
810
|
+
* data: 'hello from item 1'
|
811
|
+
* },
|
812
|
+
* { type: 'separator' },
|
813
|
+
* {
|
814
|
+
* label: 'Menu Item 2',
|
815
|
+
* type: 'checkbox',
|
816
|
+
* checked: true,
|
817
|
+
* data: 'The user clicked the checkbox'
|
818
|
+
* },
|
819
|
+
* {
|
820
|
+
* label: 'see more',
|
821
|
+
* enabled: false,
|
822
|
+
* submenu: [
|
823
|
+
* { label: 'submenu 1', data: 'hello from submenu' }
|
824
|
+
* ]
|
825
|
+
* }
|
826
|
+
* ];
|
827
|
+
*
|
828
|
+
* app.addListener('tray-icon-clicked', (event) => {
|
829
|
+
* // right-click
|
830
|
+
* if (event.button === 2) {
|
831
|
+
* app.showTrayIconPopupMenu({ template }).then(r => {
|
832
|
+
* if (r.result === 'closed') {
|
833
|
+
* console.log('nothing happened');
|
834
|
+
* } else {
|
835
|
+
* console.log(r.data);
|
836
|
+
* }
|
837
|
+
* });
|
838
|
+
* }
|
839
|
+
* });
|
840
|
+
* ```
|
841
|
+
*/
|
842
|
+
showTrayIconPopupMenu<Data>(options: OpenFin.ShowTrayIconPopupMenuOptions<Data>): Promise<OpenFin.MenuResult<Data>>;
|
843
|
+
/**
|
844
|
+
* CLoses the tray icon menu.
|
845
|
+
*
|
846
|
+
* @throws if the application has no tray icon set
|
847
|
+
* @example
|
848
|
+
*
|
849
|
+
* ```js
|
850
|
+
* const app = fin.Application.getCurrentSync();
|
851
|
+
*
|
852
|
+
* await app.closeTrayIconPopupMenu();
|
853
|
+
* ```
|
854
|
+
*/
|
855
|
+
closeTrayIconPopupMenu(): Promise<void>;
|
783
856
|
}
|
784
857
|
|
785
858
|
/**
|
@@ -1184,10 +1257,13 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
|
|
1184
1257
|
*/
|
1185
1258
|
apiDiagnostics: boolean;
|
1186
1259
|
/**
|
1187
|
-
*
|
1188
|
-
* See [here](https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads) for more details.
|
1260
|
+
* @deprecated Please use {@link domainSettings} instead
|
1189
1261
|
*/
|
1190
1262
|
defaultDomainSettings: DefaultDomainSettings;
|
1263
|
+
/**
|
1264
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
1265
|
+
*/
|
1266
|
+
domainSettings: DomainSettings;
|
1191
1267
|
/**
|
1192
1268
|
* @defaultValue false
|
1193
1269
|
*
|
@@ -3523,9 +3599,13 @@ declare type ConstViewOptions = {
|
|
3523
3599
|
/**
|
3524
3600
|
* Controls interaction of the view with its parent window's download shelf.
|
3525
3601
|
*/
|
3526
|
-
downloadShelf
|
3602
|
+
downloadShelf: {
|
3527
3603
|
/**
|
3528
|
-
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow
|
3604
|
+
* Whether downloads in this view trigger opening the download shelf on its parent BrowserWindow.
|
3605
|
+
*
|
3606
|
+
* @remarks If `enabled: true`, downloads from this view will cause the download shelf to display
|
3607
|
+
* on the parent window even if that parent window's {@link DownloadShelfOptions} specify
|
3608
|
+
* `enabled: false`.
|
3529
3609
|
*/
|
3530
3610
|
enabled: boolean;
|
3531
3611
|
};
|
@@ -3641,6 +3721,12 @@ declare type ConstWindowOptions = {
|
|
3641
3721
|
* launches in favor of the cached value.
|
3642
3722
|
*/
|
3643
3723
|
defaultWidth: number;
|
3724
|
+
/**
|
3725
|
+
* Controls the styling and behavior of the window download shelf.
|
3726
|
+
*
|
3727
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
3728
|
+
* triggered by the window itself, or a view targeting the window.
|
3729
|
+
*/
|
3644
3730
|
downloadShelf: DownloadShelfOptions;
|
3645
3731
|
height: number;
|
3646
3732
|
layout: any;
|
@@ -4478,21 +4564,15 @@ declare type CustomRequestHeaders = {
|
|
4478
4564
|
declare type DataChannelReadyState = RTCDataChannel['readyState'];
|
4479
4565
|
|
4480
4566
|
/**
|
4567
|
+
* @deprecated Use {@link OpenFin.DomainSettings} instead.
|
4481
4568
|
* @interface
|
4482
4569
|
*/
|
4483
|
-
declare type DefaultDomainSettings =
|
4484
|
-
rules: DefaultDomainSettingsRule[];
|
4485
|
-
};
|
4570
|
+
declare type DefaultDomainSettings = DomainSettings;
|
4486
4571
|
|
4487
4572
|
/**
|
4488
|
-
* @
|
4573
|
+
* @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
|
4489
4574
|
*/
|
4490
|
-
declare type DefaultDomainSettingsRule =
|
4491
|
-
match: string[];
|
4492
|
-
options: {
|
4493
|
-
downloadSettings: FileDownloadSettings;
|
4494
|
-
};
|
4495
|
-
};
|
4575
|
+
declare type DefaultDomainSettingsRule = DomainSettingsRule;
|
4496
4576
|
|
4497
4577
|
declare interface DesktopAgent {
|
4498
4578
|
open(app: TargetApp, context?: Context): Promise<void>;
|
@@ -4737,6 +4817,25 @@ declare type DisplayMetadata_3 = {
|
|
4737
4817
|
readonly glyph?: string;
|
4738
4818
|
};
|
4739
4819
|
|
4820
|
+
/**
|
4821
|
+
* @interface
|
4822
|
+
* Define the {@link https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads file download rules} and domain-based api injection rules.
|
4823
|
+
*/
|
4824
|
+
declare type DomainSettings = {
|
4825
|
+
rules: DomainSettingsRule[];
|
4826
|
+
};
|
4827
|
+
|
4828
|
+
/**
|
4829
|
+
* @interface
|
4830
|
+
*/
|
4831
|
+
declare type DomainSettingsRule = {
|
4832
|
+
match: string[];
|
4833
|
+
options: {
|
4834
|
+
downloadSettings?: FileDownloadSettings;
|
4835
|
+
api?: ApiInjection;
|
4836
|
+
};
|
4837
|
+
};
|
4838
|
+
|
4740
4839
|
/**
|
4741
4840
|
* Metadata returned from a preload script download request.
|
4742
4841
|
*
|
@@ -4781,14 +4880,24 @@ declare type DownloadRule = {
|
|
4781
4880
|
* @interface
|
4782
4881
|
*
|
4783
4882
|
* Controls the styling and behavior of the window download shelf.
|
4883
|
+
*
|
4884
|
+
* @remarks This will control the styling for the download shelf regardless of whether its display was
|
4885
|
+
* triggered by the window itself, or a view targeting the window.
|
4784
4886
|
*/
|
4785
4887
|
declare type DownloadShelfOptions = {
|
4786
4888
|
/**
|
4787
|
-
* Whether downloads in this window trigger
|
4889
|
+
* Whether downloads in this window trigger display of the download shelf.
|
4890
|
+
*
|
4891
|
+
* @remarks Setting this to false will *not* prevent the download shelf from opening if a child view
|
4892
|
+
* with `downloadShelf: { enabled: true }` initiates a download.
|
4788
4893
|
*/
|
4789
4894
|
enabled: boolean;
|
4790
4895
|
/**
|
4791
4896
|
* Styling options for the download shelf border.
|
4897
|
+
*
|
4898
|
+
* @remarks These apply regardless of whether download shelf display was
|
4899
|
+
* triggered by this window itself, or a view targeting the window. Individual views
|
4900
|
+
* cannot control the rendering of their parent window's download shelf.
|
4792
4901
|
*/
|
4793
4902
|
border?: {
|
4794
4903
|
/**
|
@@ -6668,6 +6777,11 @@ declare type InitPlatformOptions = {
|
|
6668
6777
|
interopOverride?: OverrideCallback<InteropBroker> | ConstructorOverride<InteropBroker>[];
|
6669
6778
|
};
|
6670
6779
|
|
6780
|
+
/**
|
6781
|
+
* * 'none': The `fin` API will be not available from within this context.
|
6782
|
+
* * 'global': The entire `fin` API will be available from within this context.
|
6783
|
+
* @defaultValue 'global'
|
6784
|
+
*/
|
6671
6785
|
declare type InjectionType = 'none' | 'global';
|
6672
6786
|
|
6673
6787
|
/**
|
@@ -9122,7 +9236,7 @@ declare type LayoutOptions = {
|
|
9122
9236
|
declare type LayoutPosition = 'top' | 'bottom' | 'left' | 'right';
|
9123
9237
|
|
9124
9238
|
/**
|
9125
|
-
*
|
9239
|
+
* Layout preset type.
|
9126
9240
|
*/
|
9127
9241
|
declare type LayoutPresetType = 'columns' | 'grid' | 'rows' | 'tabs';
|
9128
9242
|
|
@@ -10186,11 +10300,15 @@ declare namespace OpenFin {
|
|
10186
10300
|
ClosedMenuResult,
|
10187
10301
|
MenuResult,
|
10188
10302
|
ShowPopupMenuOptions,
|
10303
|
+
ShowTrayIconPopupMenuOptions,
|
10189
10304
|
MenuItemTemplate,
|
10190
10305
|
NativeWindowIntegrationProviderAuthorization,
|
10191
10306
|
RuntimeInfo,
|
10192
10307
|
DefaultDomainSettings,
|
10193
10308
|
DefaultDomainSettingsRule,
|
10309
|
+
DomainSettings,
|
10310
|
+
ApiInjection,
|
10311
|
+
DomainSettingsRule,
|
10194
10312
|
FileDownloadBehaviorNames,
|
10195
10313
|
FileDownloadSettings,
|
10196
10314
|
DownloadRule,
|
@@ -13499,6 +13617,23 @@ declare type ShowRequestedEvent = BaseEvent_5 & {
|
|
13499
13617
|
type: 'show-requested';
|
13500
13618
|
};
|
13501
13619
|
|
13620
|
+
/**
|
13621
|
+
* Options for showing a tray icon popup menu
|
13622
|
+
*
|
13623
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
13624
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
13625
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
13626
|
+
* these with a "reducer" pattern.
|
13627
|
+
*
|
13628
|
+
* @interface
|
13629
|
+
*/
|
13630
|
+
declare type ShowTrayIconPopupMenuOptions<Data extends unknown = unknown> = {
|
13631
|
+
/**
|
13632
|
+
* An array describing the menu to show.
|
13633
|
+
*/
|
13634
|
+
template: MenuItemTemplate<Data>[];
|
13635
|
+
};
|
13636
|
+
|
13502
13637
|
/**
|
13503
13638
|
* _Platform Windows Only_. Enables views to be shown when a Platform Window is being resized by the user.
|
13504
13639
|
*
|
package/out/node-adapter.js
CHANGED
@@ -3720,6 +3720,81 @@ function requireInstance$1 () {
|
|
3720
3720
|
const { payload: { data } } = await this.wire.sendAction('get-file-download-location', this.identity);
|
3721
3721
|
return data;
|
3722
3722
|
}
|
3723
|
+
/**
|
3724
|
+
* Shows a menu on the tray icon. Use with tray-icon-clicked event.
|
3725
|
+
* @param options
|
3726
|
+
* @typeParam Data User-defined shape for data returned upon menu item click. Should be a
|
3727
|
+
* [union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types)
|
3728
|
+
* of all possible data shapes for the entire menu, and the click handler should process
|
3729
|
+
* these with a "reducer" pattern.
|
3730
|
+
* @throws if the application has no tray icon set
|
3731
|
+
* @throws if the system tray is currently hidden
|
3732
|
+
* @example
|
3733
|
+
*
|
3734
|
+
* ```js
|
3735
|
+
* const iconUrl = 'http://cdn.openfin.co/assets/testing/icons/circled-digit-one.png';
|
3736
|
+
* const app = fin.Application.getCurrentSync();
|
3737
|
+
*
|
3738
|
+
* await app.setTrayIcon(iconUrl);
|
3739
|
+
*
|
3740
|
+
* const template = [
|
3741
|
+
* {
|
3742
|
+
* label: 'Menu Item 1',
|
3743
|
+
* data: 'hello from item 1'
|
3744
|
+
* },
|
3745
|
+
* { type: 'separator' },
|
3746
|
+
* {
|
3747
|
+
* label: 'Menu Item 2',
|
3748
|
+
* type: 'checkbox',
|
3749
|
+
* checked: true,
|
3750
|
+
* data: 'The user clicked the checkbox'
|
3751
|
+
* },
|
3752
|
+
* {
|
3753
|
+
* label: 'see more',
|
3754
|
+
* enabled: false,
|
3755
|
+
* submenu: [
|
3756
|
+
* { label: 'submenu 1', data: 'hello from submenu' }
|
3757
|
+
* ]
|
3758
|
+
* }
|
3759
|
+
* ];
|
3760
|
+
*
|
3761
|
+
* app.addListener('tray-icon-clicked', (event) => {
|
3762
|
+
* // right-click
|
3763
|
+
* if (event.button === 2) {
|
3764
|
+
* app.showTrayIconPopupMenu({ template }).then(r => {
|
3765
|
+
* if (r.result === 'closed') {
|
3766
|
+
* console.log('nothing happened');
|
3767
|
+
* } else {
|
3768
|
+
* console.log(r.data);
|
3769
|
+
* }
|
3770
|
+
* });
|
3771
|
+
* }
|
3772
|
+
* });
|
3773
|
+
* ```
|
3774
|
+
*/
|
3775
|
+
async showTrayIconPopupMenu(options) {
|
3776
|
+
const { name } = this.wire.me;
|
3777
|
+
const entityIdentity = { uuid: this.identity.uuid, name };
|
3778
|
+
const { payload } = await this.wire.sendAction('show-tray-icon-popup-menu', { ...entityIdentity, options });
|
3779
|
+
return payload.data;
|
3780
|
+
}
|
3781
|
+
/**
|
3782
|
+
* CLoses the tray icon menu.
|
3783
|
+
*
|
3784
|
+
* @throws if the application has no tray icon set
|
3785
|
+
* @example
|
3786
|
+
*
|
3787
|
+
* ```js
|
3788
|
+
* const app = fin.Application.getCurrentSync();
|
3789
|
+
*
|
3790
|
+
* await app.closeTrayIconPopupMenu();
|
3791
|
+
* ```
|
3792
|
+
*/
|
3793
|
+
async closeTrayIconPopupMenu() {
|
3794
|
+
const { name } = this.wire.me;
|
3795
|
+
const entityIdentity = { uuid: this.identity.uuid, name };
|
3796
|
+
await this.wire.sendAction('close-tray-icon-popup-menu', { ...entityIdentity });
|
3797
|
+
}
|
3723
3798
|
}
|
3724
3799
|
Instance$6.Application = Application;
|
3725
3800
|
return Instance$6;
|