@openfin/core 41.100.105 → 41.100.108

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.
@@ -1830,10 +1830,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1830
1830
  isMainFrame: boolean;
1831
1831
  };
1832
1832
 
1833
- declare type BaseStructuredContentBehavior = {
1834
- behavior: BaseContentBehavior;
1835
- };
1836
-
1837
1833
  declare type BaseUrlEvent = NamedEvent & {
1838
1834
  type: 'url-changed';
1839
1835
  url: string;
@@ -1934,11 +1930,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1934
1930
 
1935
1931
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1936
1932
 
1933
+ /**
1934
+ * Opens matched URLs in the browser.
1935
+ *
1936
+ * @interface
1937
+ */
1937
1938
  declare type BrowserContentBehavior = {
1938
1939
  behavior: 'browser';
1939
1940
  /**
1940
- * Additional property that can be specified when setting the behavior to browser.
1941
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1941
+ * When true, closes the window or view that initiated the navigation.
1942
1942
  */
1943
1943
  closeExisting?: boolean;
1944
1944
  };
@@ -3249,6 +3249,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3249
3249
 
3250
3250
  /**
3251
3251
  * Clipboard Permissions
3252
+ * @interface
3252
3253
  */
3253
3254
  declare type ClipboardPermissions = {
3254
3255
  copy?: CopyPermissions;
@@ -3808,7 +3809,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3808
3809
  };
3809
3810
 
3810
3811
  /**
3811
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3812
+ * Behavior when displaying content from matched URLs.
3812
3813
  *
3813
3814
  * 'allow': The content url is allowed.
3814
3815
  * 'block': The content url is blocked.
@@ -4045,6 +4046,7 @@ declare type CopyBlockedEventReason = 'disabled';
4045
4046
 
4046
4047
  /**
4047
4048
  * Control copy operations for a matched URL.
4049
+ * @interface
4048
4050
  */
4049
4051
  declare type CopyPermissions = {
4050
4052
  /**
@@ -4297,6 +4299,7 @@ declare type DefaultDomainSettings = DomainSettings;
4297
4299
 
4298
4300
  /**
4299
4301
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4302
+ * @interface
4300
4303
  */
4301
4304
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4302
4305
 
@@ -4493,19 +4496,22 @@ declare type DomainSettings = {
4493
4496
  * more information, see the documentation for the individual properties.
4494
4497
  */
4495
4498
  default?: PerDomainSettings;
4499
+ /**
4500
+ * {@inheritDoc MultipleDomainMatchBehavior}
4501
+ */
4502
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4496
4503
  };
4497
4504
 
4498
4505
  /**
4499
- * @interface
4500
- *
4501
4506
  * Defines domain-conditional settings for an OpenFin application.
4507
+ * @interface
4502
4508
  */
4503
4509
  declare type DomainSettingsRule = {
4504
4510
  /**
4505
4511
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4506
4512
  * the domain(s) for which the rule applies.
4507
4513
  */
4508
- match?: string[];
4514
+ match: string[];
4509
4515
  /**
4510
4516
  * Settings applied when a webcontents has been navigated to a matched domain.
4511
4517
  */
@@ -5456,6 +5462,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5456
5462
  * Domain-conditional rules for file downloads.
5457
5463
  *
5458
5464
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5465
+ * @interface
5459
5466
  */
5460
5467
  declare type FileDownloadSettings = {
5461
5468
  /**
@@ -8902,6 +8909,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin_2.MonitorInfo & {
8902
8909
  */
8903
8910
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
8904
8911
 
8912
+ /**
8913
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
8914
+ */
8915
+ declare type MultipleDomainMatchBehavior =
8916
+ /**
8917
+ * Apply only the first matching rule in the list.
8918
+ */
8919
+ 'pick-first'
8920
+ /**
8921
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
8922
+ */
8923
+ | 'deep-merge';
8924
+
8905
8925
  /**
8906
8926
  * @interface
8907
8927
  */
@@ -9646,12 +9666,12 @@ declare namespace OpenFin_2 {
9646
9666
  RuntimeInfo,
9647
9667
  DefaultDomainSettings,
9648
9668
  DefaultDomainSettingsRule,
9669
+ MultipleDomainMatchBehavior,
9649
9670
  DomainSettings,
9650
9671
  ApiInjection,
9651
9672
  DomainApiSettings,
9652
9673
  BaseContentBehavior,
9653
9674
  ContentBehavior,
9654
- BaseStructuredContentBehavior,
9655
9675
  BrowserContentBehavior,
9656
9676
  StructuredContentBehavior,
9657
9677
  StructuredContentPermissions,
@@ -9851,6 +9871,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
9851
9871
 
9852
9872
  /**
9853
9873
  * Control copy operations for a matched URL.
9874
+ * @interface
9854
9875
  */
9855
9876
  declare type PastePermissions = {
9856
9877
  /**
@@ -10016,6 +10037,16 @@ declare type PerDomainSettings = {
10016
10037
  * {@inheritdoc ClipboardPermissions}
10017
10038
  */
10018
10039
  clipboard?: ClipboardPermissions;
10040
+ /**
10041
+ * Whether the content can be printed.
10042
+ * Defaults to 'allow'.
10043
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10044
+ */
10045
+ print?: 'allow' | 'block';
10046
+ /**
10047
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10048
+ */
10049
+ drag?: 'allow' | 'block';
10019
10050
  };
10020
10051
  };
10021
10052
 
@@ -11411,6 +11442,14 @@ declare interface PlatformProvider {
11411
11442
  * ```
11412
11443
  */
11413
11444
  handleFailedViewCreation(viewIdentity: OpenFin_2.Identity, error: Error): Promise<OpenFin_2.ViewCreationSuccess | void>;
11445
+ /**
11446
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11447
+ * This method is called when checking if closing a window should trigger application termination.
11448
+ *
11449
+ * @param windowIdentity - The identity of the window being checked.
11450
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11451
+ */
11452
+ shouldWindowPreventQuit(windowIdentity: OpenFin_2.Identity): Promise<boolean>;
11414
11453
  }
11415
11454
 
11416
11455
  /**
@@ -13201,7 +13240,6 @@ declare type RvmLaunchOptions = {
13201
13240
  };
13202
13241
 
13203
13242
  /**
13204
- * @interface
13205
13243
  * Controls whether this content should be allowed or blocked when capturing the screen.
13206
13244
  */
13207
13245
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -13693,12 +13731,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13693
13731
  };
13694
13732
 
13695
13733
  /**
13696
- * Allows more control over content behaviors
13734
+ * Behavior when displaying content from matched URLs.
13697
13735
  */
13698
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13736
+ declare type StructuredContentBehavior = {
13737
+ behavior: BaseContentBehavior;
13738
+ } | BrowserContentBehavior;
13699
13739
 
13700
13740
  /**
13701
- * Specify rules for specific actions.
13741
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
13742
+ * @interface
13702
13743
  */
13703
13744
  declare type StructuredContentPermissions = {
13704
13745
  /**
@@ -1830,10 +1830,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1830
1830
  isMainFrame: boolean;
1831
1831
  };
1832
1832
 
1833
- declare type BaseStructuredContentBehavior = {
1834
- behavior: BaseContentBehavior;
1835
- };
1836
-
1837
1833
  declare type BaseUrlEvent = NamedEvent & {
1838
1834
  type: 'url-changed';
1839
1835
  url: string;
@@ -1934,11 +1930,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1934
1930
 
1935
1931
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1936
1932
 
1933
+ /**
1934
+ * Opens matched URLs in the browser.
1935
+ *
1936
+ * @interface
1937
+ */
1937
1938
  declare type BrowserContentBehavior = {
1938
1939
  behavior: 'browser';
1939
1940
  /**
1940
- * Additional property that can be specified when setting the behavior to browser.
1941
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1941
+ * When true, closes the window or view that initiated the navigation.
1942
1942
  */
1943
1943
  closeExisting?: boolean;
1944
1944
  };
@@ -3249,6 +3249,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3249
3249
 
3250
3250
  /**
3251
3251
  * Clipboard Permissions
3252
+ * @interface
3252
3253
  */
3253
3254
  declare type ClipboardPermissions = {
3254
3255
  copy?: CopyPermissions;
@@ -3808,7 +3809,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3808
3809
  };
3809
3810
 
3810
3811
  /**
3811
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3812
+ * Behavior when displaying content from matched URLs.
3812
3813
  *
3813
3814
  * 'allow': The content url is allowed.
3814
3815
  * 'block': The content url is blocked.
@@ -4045,6 +4046,7 @@ declare type CopyBlockedEventReason = 'disabled';
4045
4046
 
4046
4047
  /**
4047
4048
  * Control copy operations for a matched URL.
4049
+ * @interface
4048
4050
  */
4049
4051
  declare type CopyPermissions = {
4050
4052
  /**
@@ -4297,6 +4299,7 @@ declare type DefaultDomainSettings = DomainSettings;
4297
4299
 
4298
4300
  /**
4299
4301
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4302
+ * @interface
4300
4303
  */
4301
4304
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4302
4305
 
@@ -4493,19 +4496,22 @@ declare type DomainSettings = {
4493
4496
  * more information, see the documentation for the individual properties.
4494
4497
  */
4495
4498
  default?: PerDomainSettings;
4499
+ /**
4500
+ * {@inheritDoc MultipleDomainMatchBehavior}
4501
+ */
4502
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4496
4503
  };
4497
4504
 
4498
4505
  /**
4499
- * @interface
4500
- *
4501
4506
  * Defines domain-conditional settings for an OpenFin application.
4507
+ * @interface
4502
4508
  */
4503
4509
  declare type DomainSettingsRule = {
4504
4510
  /**
4505
4511
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4506
4512
  * the domain(s) for which the rule applies.
4507
4513
  */
4508
- match?: string[];
4514
+ match: string[];
4509
4515
  /**
4510
4516
  * Settings applied when a webcontents has been navigated to a matched domain.
4511
4517
  */
@@ -5456,6 +5462,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5456
5462
  * Domain-conditional rules for file downloads.
5457
5463
  *
5458
5464
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5465
+ * @interface
5459
5466
  */
5460
5467
  declare type FileDownloadSettings = {
5461
5468
  /**
@@ -8902,6 +8909,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin_2.MonitorInfo & {
8902
8909
  */
8903
8910
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
8904
8911
 
8912
+ /**
8913
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
8914
+ */
8915
+ declare type MultipleDomainMatchBehavior =
8916
+ /**
8917
+ * Apply only the first matching rule in the list.
8918
+ */
8919
+ 'pick-first'
8920
+ /**
8921
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
8922
+ */
8923
+ | 'deep-merge';
8924
+
8905
8925
  /**
8906
8926
  * @interface
8907
8927
  */
@@ -9646,12 +9666,12 @@ declare namespace OpenFin_2 {
9646
9666
  RuntimeInfo,
9647
9667
  DefaultDomainSettings,
9648
9668
  DefaultDomainSettingsRule,
9669
+ MultipleDomainMatchBehavior,
9649
9670
  DomainSettings,
9650
9671
  ApiInjection,
9651
9672
  DomainApiSettings,
9652
9673
  BaseContentBehavior,
9653
9674
  ContentBehavior,
9654
- BaseStructuredContentBehavior,
9655
9675
  BrowserContentBehavior,
9656
9676
  StructuredContentBehavior,
9657
9677
  StructuredContentPermissions,
@@ -9851,6 +9871,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
9851
9871
 
9852
9872
  /**
9853
9873
  * Control copy operations for a matched URL.
9874
+ * @interface
9854
9875
  */
9855
9876
  declare type PastePermissions = {
9856
9877
  /**
@@ -10016,6 +10037,16 @@ declare type PerDomainSettings = {
10016
10037
  * {@inheritdoc ClipboardPermissions}
10017
10038
  */
10018
10039
  clipboard?: ClipboardPermissions;
10040
+ /**
10041
+ * Whether the content can be printed.
10042
+ * Defaults to 'allow'.
10043
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10044
+ */
10045
+ print?: 'allow' | 'block';
10046
+ /**
10047
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10048
+ */
10049
+ drag?: 'allow' | 'block';
10019
10050
  };
10020
10051
  };
10021
10052
 
@@ -11411,6 +11442,14 @@ declare interface PlatformProvider {
11411
11442
  * ```
11412
11443
  */
11413
11444
  handleFailedViewCreation(viewIdentity: OpenFin_2.Identity, error: Error): Promise<OpenFin_2.ViewCreationSuccess | void>;
11445
+ /**
11446
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11447
+ * This method is called when checking if closing a window should trigger application termination.
11448
+ *
11449
+ * @param windowIdentity - The identity of the window being checked.
11450
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11451
+ */
11452
+ shouldWindowPreventQuit(windowIdentity: OpenFin_2.Identity): Promise<boolean>;
11414
11453
  }
11415
11454
 
11416
11455
  /**
@@ -13201,7 +13240,6 @@ declare type RvmLaunchOptions = {
13201
13240
  };
13202
13241
 
13203
13242
  /**
13204
- * @interface
13205
13243
  * Controls whether this content should be allowed or blocked when capturing the screen.
13206
13244
  */
13207
13245
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -13693,12 +13731,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13693
13731
  };
13694
13732
 
13695
13733
  /**
13696
- * Allows more control over content behaviors
13734
+ * Behavior when displaying content from matched URLs.
13697
13735
  */
13698
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13736
+ declare type StructuredContentBehavior = {
13737
+ behavior: BaseContentBehavior;
13738
+ } | BrowserContentBehavior;
13699
13739
 
13700
13740
  /**
13701
- * Specify rules for specific actions.
13741
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
13742
+ * @interface
13702
13743
  */
13703
13744
  declare type StructuredContentPermissions = {
13704
13745
  /**
@@ -1830,10 +1830,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1830
1830
  isMainFrame: boolean;
1831
1831
  };
1832
1832
 
1833
- declare type BaseStructuredContentBehavior = {
1834
- behavior: BaseContentBehavior;
1835
- };
1836
-
1837
1833
  declare type BaseUrlEvent = NamedEvent & {
1838
1834
  type: 'url-changed';
1839
1835
  url: string;
@@ -1934,11 +1930,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1934
1930
 
1935
1931
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1936
1932
 
1933
+ /**
1934
+ * Opens matched URLs in the browser.
1935
+ *
1936
+ * @interface
1937
+ */
1937
1938
  declare type BrowserContentBehavior = {
1938
1939
  behavior: 'browser';
1939
1940
  /**
1940
- * Additional property that can be specified when setting the behavior to browser.
1941
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1941
+ * When true, closes the window or view that initiated the navigation.
1942
1942
  */
1943
1943
  closeExisting?: boolean;
1944
1944
  };
@@ -3249,6 +3249,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3249
3249
 
3250
3250
  /**
3251
3251
  * Clipboard Permissions
3252
+ * @interface
3252
3253
  */
3253
3254
  declare type ClipboardPermissions = {
3254
3255
  copy?: CopyPermissions;
@@ -3808,7 +3809,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3808
3809
  };
3809
3810
 
3810
3811
  /**
3811
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3812
+ * Behavior when displaying content from matched URLs.
3812
3813
  *
3813
3814
  * 'allow': The content url is allowed.
3814
3815
  * 'block': The content url is blocked.
@@ -4045,6 +4046,7 @@ declare type CopyBlockedEventReason = 'disabled';
4045
4046
 
4046
4047
  /**
4047
4048
  * Control copy operations for a matched URL.
4049
+ * @interface
4048
4050
  */
4049
4051
  declare type CopyPermissions = {
4050
4052
  /**
@@ -4297,6 +4299,7 @@ declare type DefaultDomainSettings = DomainSettings;
4297
4299
 
4298
4300
  /**
4299
4301
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4302
+ * @interface
4300
4303
  */
4301
4304
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4302
4305
 
@@ -4493,19 +4496,22 @@ declare type DomainSettings = {
4493
4496
  * more information, see the documentation for the individual properties.
4494
4497
  */
4495
4498
  default?: PerDomainSettings;
4499
+ /**
4500
+ * {@inheritDoc MultipleDomainMatchBehavior}
4501
+ */
4502
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4496
4503
  };
4497
4504
 
4498
4505
  /**
4499
- * @interface
4500
- *
4501
4506
  * Defines domain-conditional settings for an OpenFin application.
4507
+ * @interface
4502
4508
  */
4503
4509
  declare type DomainSettingsRule = {
4504
4510
  /**
4505
4511
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4506
4512
  * the domain(s) for which the rule applies.
4507
4513
  */
4508
- match?: string[];
4514
+ match: string[];
4509
4515
  /**
4510
4516
  * Settings applied when a webcontents has been navigated to a matched domain.
4511
4517
  */
@@ -5456,6 +5462,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5456
5462
  * Domain-conditional rules for file downloads.
5457
5463
  *
5458
5464
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5465
+ * @interface
5459
5466
  */
5460
5467
  declare type FileDownloadSettings = {
5461
5468
  /**
@@ -8902,6 +8909,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin_2.MonitorInfo & {
8902
8909
  */
8903
8910
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
8904
8911
 
8912
+ /**
8913
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
8914
+ */
8915
+ declare type MultipleDomainMatchBehavior =
8916
+ /**
8917
+ * Apply only the first matching rule in the list.
8918
+ */
8919
+ 'pick-first'
8920
+ /**
8921
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
8922
+ */
8923
+ | 'deep-merge';
8924
+
8905
8925
  /**
8906
8926
  * @interface
8907
8927
  */
@@ -9646,12 +9666,12 @@ declare namespace OpenFin_2 {
9646
9666
  RuntimeInfo,
9647
9667
  DefaultDomainSettings,
9648
9668
  DefaultDomainSettingsRule,
9669
+ MultipleDomainMatchBehavior,
9649
9670
  DomainSettings,
9650
9671
  ApiInjection,
9651
9672
  DomainApiSettings,
9652
9673
  BaseContentBehavior,
9653
9674
  ContentBehavior,
9654
- BaseStructuredContentBehavior,
9655
9675
  BrowserContentBehavior,
9656
9676
  StructuredContentBehavior,
9657
9677
  StructuredContentPermissions,
@@ -9851,6 +9871,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
9851
9871
 
9852
9872
  /**
9853
9873
  * Control copy operations for a matched URL.
9874
+ * @interface
9854
9875
  */
9855
9876
  declare type PastePermissions = {
9856
9877
  /**
@@ -10016,6 +10037,16 @@ declare type PerDomainSettings = {
10016
10037
  * {@inheritdoc ClipboardPermissions}
10017
10038
  */
10018
10039
  clipboard?: ClipboardPermissions;
10040
+ /**
10041
+ * Whether the content can be printed.
10042
+ * Defaults to 'allow'.
10043
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10044
+ */
10045
+ print?: 'allow' | 'block';
10046
+ /**
10047
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10048
+ */
10049
+ drag?: 'allow' | 'block';
10019
10050
  };
10020
10051
  };
10021
10052
 
@@ -11411,6 +11442,14 @@ declare interface PlatformProvider {
11411
11442
  * ```
11412
11443
  */
11413
11444
  handleFailedViewCreation(viewIdentity: OpenFin_2.Identity, error: Error): Promise<OpenFin_2.ViewCreationSuccess | void>;
11445
+ /**
11446
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11447
+ * This method is called when checking if closing a window should trigger application termination.
11448
+ *
11449
+ * @param windowIdentity - The identity of the window being checked.
11450
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11451
+ */
11452
+ shouldWindowPreventQuit(windowIdentity: OpenFin_2.Identity): Promise<boolean>;
11414
11453
  }
11415
11454
 
11416
11455
  /**
@@ -13201,7 +13240,6 @@ declare type RvmLaunchOptions = {
13201
13240
  };
13202
13241
 
13203
13242
  /**
13204
- * @interface
13205
13243
  * Controls whether this content should be allowed or blocked when capturing the screen.
13206
13244
  */
13207
13245
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -13693,12 +13731,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13693
13731
  };
13694
13732
 
13695
13733
  /**
13696
- * Allows more control over content behaviors
13734
+ * Behavior when displaying content from matched URLs.
13697
13735
  */
13698
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13736
+ declare type StructuredContentBehavior = {
13737
+ behavior: BaseContentBehavior;
13738
+ } | BrowserContentBehavior;
13699
13739
 
13700
13740
  /**
13701
- * Specify rules for specific actions.
13741
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
13742
+ * @interface
13702
13743
  */
13703
13744
  declare type StructuredContentPermissions = {
13704
13745
  /**
package/out/stub.d.ts CHANGED
@@ -1862,10 +1862,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1862
1862
  isMainFrame: boolean;
1863
1863
  };
1864
1864
 
1865
- declare type BaseStructuredContentBehavior = {
1866
- behavior: BaseContentBehavior;
1867
- };
1868
-
1869
1865
  declare type BaseUrlEvent = NamedEvent & {
1870
1866
  type: 'url-changed';
1871
1867
  url: string;
@@ -1966,11 +1962,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1966
1962
 
1967
1963
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1968
1964
 
1965
+ /**
1966
+ * Opens matched URLs in the browser.
1967
+ *
1968
+ * @interface
1969
+ */
1969
1970
  declare type BrowserContentBehavior = {
1970
1971
  behavior: 'browser';
1971
1972
  /**
1972
- * Additional property that can be specified when setting the behavior to browser.
1973
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1973
+ * When true, closes the window or view that initiated the navigation.
1974
1974
  */
1975
1975
  closeExisting?: boolean;
1976
1976
  };
@@ -3305,6 +3305,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3305
3305
 
3306
3306
  /**
3307
3307
  * Clipboard Permissions
3308
+ * @interface
3308
3309
  */
3309
3310
  declare type ClipboardPermissions = {
3310
3311
  copy?: CopyPermissions;
@@ -3867,7 +3868,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3867
3868
  };
3868
3869
 
3869
3870
  /**
3870
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3871
+ * Behavior when displaying content from matched URLs.
3871
3872
  *
3872
3873
  * 'allow': The content url is allowed.
3873
3874
  * 'block': The content url is blocked.
@@ -4104,6 +4105,7 @@ declare type CopyBlockedEventReason = 'disabled';
4104
4105
 
4105
4106
  /**
4106
4107
  * Control copy operations for a matched URL.
4108
+ * @interface
4107
4109
  */
4108
4110
  declare type CopyPermissions = {
4109
4111
  /**
@@ -4356,6 +4358,7 @@ declare type DefaultDomainSettings = DomainSettings;
4356
4358
 
4357
4359
  /**
4358
4360
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4361
+ * @interface
4359
4362
  */
4360
4363
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4361
4364
 
@@ -4552,19 +4555,22 @@ declare type DomainSettings = {
4552
4555
  * more information, see the documentation for the individual properties.
4553
4556
  */
4554
4557
  default?: PerDomainSettings;
4558
+ /**
4559
+ * {@inheritDoc MultipleDomainMatchBehavior}
4560
+ */
4561
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4555
4562
  };
4556
4563
 
4557
4564
  /**
4558
- * @interface
4559
- *
4560
4565
  * Defines domain-conditional settings for an OpenFin application.
4566
+ * @interface
4561
4567
  */
4562
4568
  declare type DomainSettingsRule = {
4563
4569
  /**
4564
4570
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4565
4571
  * the domain(s) for which the rule applies.
4566
4572
  */
4567
- match?: string[];
4573
+ match: string[];
4568
4574
  /**
4569
4575
  * Settings applied when a webcontents has been navigated to a matched domain.
4570
4576
  */
@@ -5541,6 +5547,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5541
5547
  * Domain-conditional rules for file downloads.
5542
5548
  *
5543
5549
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5550
+ * @interface
5544
5551
  */
5545
5552
  declare type FileDownloadSettings = {
5546
5553
  /**
@@ -9198,6 +9205,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin_2.MonitorInfo & {
9198
9205
  */
9199
9206
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
9200
9207
 
9208
+ /**
9209
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
9210
+ */
9211
+ declare type MultipleDomainMatchBehavior =
9212
+ /**
9213
+ * Apply only the first matching rule in the list.
9214
+ */
9215
+ 'pick-first'
9216
+ /**
9217
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
9218
+ */
9219
+ | 'deep-merge';
9220
+
9201
9221
  /**
9202
9222
  * @interface
9203
9223
  */
@@ -9964,12 +9984,12 @@ declare namespace OpenFin_2 {
9964
9984
  RuntimeInfo,
9965
9985
  DefaultDomainSettings,
9966
9986
  DefaultDomainSettingsRule,
9987
+ MultipleDomainMatchBehavior,
9967
9988
  DomainSettings,
9968
9989
  ApiInjection,
9969
9990
  DomainApiSettings,
9970
9991
  BaseContentBehavior,
9971
9992
  ContentBehavior,
9972
- BaseStructuredContentBehavior,
9973
9993
  BrowserContentBehavior,
9974
9994
  StructuredContentBehavior,
9975
9995
  StructuredContentPermissions,
@@ -10169,6 +10189,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
10169
10189
 
10170
10190
  /**
10171
10191
  * Control copy operations for a matched URL.
10192
+ * @interface
10172
10193
  */
10173
10194
  declare type PastePermissions = {
10174
10195
  /**
@@ -10334,6 +10355,16 @@ declare type PerDomainSettings = {
10334
10355
  * {@inheritdoc ClipboardPermissions}
10335
10356
  */
10336
10357
  clipboard?: ClipboardPermissions;
10358
+ /**
10359
+ * Whether the content can be printed.
10360
+ * Defaults to 'allow'.
10361
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10362
+ */
10363
+ print?: 'allow' | 'block';
10364
+ /**
10365
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10366
+ */
10367
+ drag?: 'allow' | 'block';
10337
10368
  };
10338
10369
  };
10339
10370
 
@@ -11812,6 +11843,14 @@ declare interface PlatformProvider {
11812
11843
  * ```
11813
11844
  */
11814
11845
  handleFailedViewCreation(viewIdentity: OpenFin_2.Identity, error: Error): Promise<OpenFin_2.ViewCreationSuccess | void>;
11846
+ /**
11847
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11848
+ * This method is called when checking if closing a window should trigger application termination.
11849
+ *
11850
+ * @param windowIdentity - The identity of the window being checked.
11851
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11852
+ */
11853
+ shouldWindowPreventQuit(windowIdentity: OpenFin_2.Identity): Promise<boolean>;
11815
11854
  }
11816
11855
 
11817
11856
  /**
@@ -13602,7 +13641,6 @@ declare type RvmLaunchOptions = {
13602
13641
  };
13603
13642
 
13604
13643
  /**
13605
- * @interface
13606
13644
  * Controls whether this content should be allowed or blocked when capturing the screen.
13607
13645
  */
13608
13646
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -14097,12 +14135,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
14097
14135
  };
14098
14136
 
14099
14137
  /**
14100
- * Allows more control over content behaviors
14138
+ * Behavior when displaying content from matched URLs.
14101
14139
  */
14102
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
14140
+ declare type StructuredContentBehavior = {
14141
+ behavior: BaseContentBehavior;
14142
+ } | BrowserContentBehavior;
14103
14143
 
14104
14144
  /**
14105
- * Specify rules for specific actions.
14145
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
14146
+ * @interface
14106
14147
  */
14107
14148
  declare type StructuredContentPermissions = {
14108
14149
  /**
package/out/stub.js CHANGED
@@ -15953,7 +15953,13 @@ PrivateChannelClient$1.PrivateChannelClient = PrivateChannelClient;
15953
15953
  const getResultPromise = new Promise((resolve, reject) => {
15954
15954
  fin.InterApplicationBus.subscribe({ uuid: '*' }, guid, (intentResult) => {
15955
15955
  resolve(intentResult);
15956
- }).catch(() => reject(new Error('getResult is not supported in this environment')));
15956
+ }).catch(() => {
15957
+ // not supported in web, suppress the error
15958
+ if (interopModule.wire.environment.type === 'other') {
15959
+ resolve(undefined);
15960
+ }
15961
+ reject(new Error('getResult is not supported in this environment'));
15962
+ });
15957
15963
  });
15958
15964
  // Adding the intentResolutionResultId to the intentObj. Because fireIntent only accepts a single arg, we have to slap it in here.
15959
15965
  const metadata = app ? { target: app, intentResolutionResultId: guid } : { intentResolutionResultId: guid };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openfin/core",
3
- "version": "41.100.105",
3
+ "version": "41.100.108",
4
4
  "description": "The core renderer entry point of OpenFin",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "main": "out/stub.js",