@openfin/fdc3-api 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.
@@ -1827,10 +1827,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1827
1827
  isMainFrame: boolean;
1828
1828
  };
1829
1829
 
1830
- declare type BaseStructuredContentBehavior = {
1831
- behavior: BaseContentBehavior;
1832
- };
1833
-
1834
1830
  declare type BaseUrlEvent = NamedEvent & {
1835
1831
  type: 'url-changed';
1836
1832
  url: string;
@@ -1931,11 +1927,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1931
1927
 
1932
1928
  declare type BoundsEvent = BaseEvent_5 & OpenFin.Bounds;
1933
1929
 
1930
+ /**
1931
+ * Opens matched URLs in the browser.
1932
+ *
1933
+ * @interface
1934
+ */
1934
1935
  declare type BrowserContentBehavior = {
1935
1936
  behavior: 'browser';
1936
1937
  /**
1937
- * Additional property that can be specified when setting the behavior to browser.
1938
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1938
+ * When true, closes the window or view that initiated the navigation.
1939
1939
  */
1940
1940
  closeExisting?: boolean;
1941
1941
  };
@@ -3246,6 +3246,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3246
3246
 
3247
3247
  /**
3248
3248
  * Clipboard Permissions
3249
+ * @interface
3249
3250
  */
3250
3251
  declare type ClipboardPermissions = {
3251
3252
  copy?: CopyPermissions;
@@ -3805,7 +3806,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3805
3806
  };
3806
3807
 
3807
3808
  /**
3808
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3809
+ * Behavior when displaying content from matched URLs.
3809
3810
  *
3810
3811
  * 'allow': The content url is allowed.
3811
3812
  * 'block': The content url is blocked.
@@ -4042,6 +4043,7 @@ declare type CopyBlockedEventReason = 'disabled';
4042
4043
 
4043
4044
  /**
4044
4045
  * Control copy operations for a matched URL.
4046
+ * @interface
4045
4047
  */
4046
4048
  declare type CopyPermissions = {
4047
4049
  /**
@@ -4294,6 +4296,7 @@ declare type DefaultDomainSettings = DomainSettings;
4294
4296
 
4295
4297
  /**
4296
4298
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4299
+ * @interface
4297
4300
  */
4298
4301
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4299
4302
 
@@ -4490,19 +4493,22 @@ declare type DomainSettings = {
4490
4493
  * more information, see the documentation for the individual properties.
4491
4494
  */
4492
4495
  default?: PerDomainSettings;
4496
+ /**
4497
+ * {@inheritDoc MultipleDomainMatchBehavior}
4498
+ */
4499
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4493
4500
  };
4494
4501
 
4495
4502
  /**
4496
- * @interface
4497
- *
4498
4503
  * Defines domain-conditional settings for an OpenFin application.
4504
+ * @interface
4499
4505
  */
4500
4506
  declare type DomainSettingsRule = {
4501
4507
  /**
4502
4508
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4503
4509
  * the domain(s) for which the rule applies.
4504
4510
  */
4505
- match?: string[];
4511
+ match: string[];
4506
4512
  /**
4507
4513
  * Settings applied when a webcontents has been navigated to a matched domain.
4508
4514
  */
@@ -5800,6 +5806,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5800
5806
  * Domain-conditional rules for file downloads.
5801
5807
  *
5802
5808
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5809
+ * @interface
5803
5810
  */
5804
5811
  declare type FileDownloadSettings = {
5805
5812
  /**
@@ -9244,6 +9251,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin.MonitorInfo & {
9244
9251
  */
9245
9252
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
9246
9253
 
9254
+ /**
9255
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
9256
+ */
9257
+ declare type MultipleDomainMatchBehavior =
9258
+ /**
9259
+ * Apply only the first matching rule in the list.
9260
+ */
9261
+ 'pick-first'
9262
+ /**
9263
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
9264
+ */
9265
+ | 'deep-merge';
9266
+
9247
9267
  /**
9248
9268
  * @interface
9249
9269
  */
@@ -9988,12 +10008,12 @@ declare namespace OpenFin {
9988
10008
  RuntimeInfo,
9989
10009
  DefaultDomainSettings,
9990
10010
  DefaultDomainSettingsRule,
10011
+ MultipleDomainMatchBehavior,
9991
10012
  DomainSettings,
9992
10013
  ApiInjection,
9993
10014
  DomainApiSettings,
9994
10015
  BaseContentBehavior,
9995
10016
  ContentBehavior,
9996
- BaseStructuredContentBehavior,
9997
10017
  BrowserContentBehavior,
9998
10018
  StructuredContentBehavior,
9999
10019
  StructuredContentPermissions,
@@ -10191,6 +10211,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
10191
10211
 
10192
10212
  /**
10193
10213
  * Control copy operations for a matched URL.
10214
+ * @interface
10194
10215
  */
10195
10216
  declare type PastePermissions = {
10196
10217
  /**
@@ -10356,6 +10377,16 @@ declare type PerDomainSettings = {
10356
10377
  * {@inheritdoc ClipboardPermissions}
10357
10378
  */
10358
10379
  clipboard?: ClipboardPermissions;
10380
+ /**
10381
+ * Whether the content can be printed.
10382
+ * Defaults to 'allow'.
10383
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10384
+ */
10385
+ print?: 'allow' | 'block';
10386
+ /**
10387
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10388
+ */
10389
+ drag?: 'allow' | 'block';
10359
10390
  };
10360
10391
  };
10361
10392
 
@@ -11751,6 +11782,14 @@ declare interface PlatformProvider {
11751
11782
  * ```
11752
11783
  */
11753
11784
  handleFailedViewCreation(viewIdentity: OpenFin.Identity, error: Error): Promise<OpenFin.ViewCreationSuccess | void>;
11785
+ /**
11786
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11787
+ * This method is called when checking if closing a window should trigger application termination.
11788
+ *
11789
+ * @param windowIdentity - The identity of the window being checked.
11790
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11791
+ */
11792
+ shouldWindowPreventQuit(windowIdentity: OpenFin.Identity): Promise<boolean>;
11754
11793
  }
11755
11794
 
11756
11795
  /**
@@ -13541,7 +13580,6 @@ declare type RvmLaunchOptions = {
13541
13580
  };
13542
13581
 
13543
13582
  /**
13544
- * @interface
13545
13583
  * Controls whether this content should be allowed or blocked when capturing the screen.
13546
13584
  */
13547
13585
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -14033,12 +14071,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
14033
14071
  };
14034
14072
 
14035
14073
  /**
14036
- * Allows more control over content behaviors
14074
+ * Behavior when displaying content from matched URLs.
14037
14075
  */
14038
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
14076
+ declare type StructuredContentBehavior = {
14077
+ behavior: BaseContentBehavior;
14078
+ } | BrowserContentBehavior;
14039
14079
 
14040
14080
  /**
14041
- * Specify rules for specific actions.
14081
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
14082
+ * @interface
14042
14083
  */
14043
14084
  declare type StructuredContentPermissions = {
14044
14085
  /**
@@ -1827,10 +1827,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1827
1827
  isMainFrame: boolean;
1828
1828
  };
1829
1829
 
1830
- declare type BaseStructuredContentBehavior = {
1831
- behavior: BaseContentBehavior;
1832
- };
1833
-
1834
1830
  declare type BaseUrlEvent = NamedEvent & {
1835
1831
  type: 'url-changed';
1836
1832
  url: string;
@@ -1931,11 +1927,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1931
1927
 
1932
1928
  declare type BoundsEvent = BaseEvent_5 & OpenFin.Bounds;
1933
1929
 
1930
+ /**
1931
+ * Opens matched URLs in the browser.
1932
+ *
1933
+ * @interface
1934
+ */
1934
1935
  declare type BrowserContentBehavior = {
1935
1936
  behavior: 'browser';
1936
1937
  /**
1937
- * Additional property that can be specified when setting the behavior to browser.
1938
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1938
+ * When true, closes the window or view that initiated the navigation.
1939
1939
  */
1940
1940
  closeExisting?: boolean;
1941
1941
  };
@@ -3246,6 +3246,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3246
3246
 
3247
3247
  /**
3248
3248
  * Clipboard Permissions
3249
+ * @interface
3249
3250
  */
3250
3251
  declare type ClipboardPermissions = {
3251
3252
  copy?: CopyPermissions;
@@ -3805,7 +3806,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3805
3806
  };
3806
3807
 
3807
3808
  /**
3808
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3809
+ * Behavior when displaying content from matched URLs.
3809
3810
  *
3810
3811
  * 'allow': The content url is allowed.
3811
3812
  * 'block': The content url is blocked.
@@ -4042,6 +4043,7 @@ declare type CopyBlockedEventReason = 'disabled';
4042
4043
 
4043
4044
  /**
4044
4045
  * Control copy operations for a matched URL.
4046
+ * @interface
4045
4047
  */
4046
4048
  declare type CopyPermissions = {
4047
4049
  /**
@@ -4294,6 +4296,7 @@ declare type DefaultDomainSettings = DomainSettings;
4294
4296
 
4295
4297
  /**
4296
4298
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4299
+ * @interface
4297
4300
  */
4298
4301
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4299
4302
 
@@ -4490,19 +4493,22 @@ declare type DomainSettings = {
4490
4493
  * more information, see the documentation for the individual properties.
4491
4494
  */
4492
4495
  default?: PerDomainSettings;
4496
+ /**
4497
+ * {@inheritDoc MultipleDomainMatchBehavior}
4498
+ */
4499
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4493
4500
  };
4494
4501
 
4495
4502
  /**
4496
- * @interface
4497
- *
4498
4503
  * Defines domain-conditional settings for an OpenFin application.
4504
+ * @interface
4499
4505
  */
4500
4506
  declare type DomainSettingsRule = {
4501
4507
  /**
4502
4508
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4503
4509
  * the domain(s) for which the rule applies.
4504
4510
  */
4505
- match?: string[];
4511
+ match: string[];
4506
4512
  /**
4507
4513
  * Settings applied when a webcontents has been navigated to a matched domain.
4508
4514
  */
@@ -5800,6 +5806,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5800
5806
  * Domain-conditional rules for file downloads.
5801
5807
  *
5802
5808
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5809
+ * @interface
5803
5810
  */
5804
5811
  declare type FileDownloadSettings = {
5805
5812
  /**
@@ -9244,6 +9251,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin.MonitorInfo & {
9244
9251
  */
9245
9252
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
9246
9253
 
9254
+ /**
9255
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
9256
+ */
9257
+ declare type MultipleDomainMatchBehavior =
9258
+ /**
9259
+ * Apply only the first matching rule in the list.
9260
+ */
9261
+ 'pick-first'
9262
+ /**
9263
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
9264
+ */
9265
+ | 'deep-merge';
9266
+
9247
9267
  /**
9248
9268
  * @interface
9249
9269
  */
@@ -9988,12 +10008,12 @@ declare namespace OpenFin {
9988
10008
  RuntimeInfo,
9989
10009
  DefaultDomainSettings,
9990
10010
  DefaultDomainSettingsRule,
10011
+ MultipleDomainMatchBehavior,
9991
10012
  DomainSettings,
9992
10013
  ApiInjection,
9993
10014
  DomainApiSettings,
9994
10015
  BaseContentBehavior,
9995
10016
  ContentBehavior,
9996
- BaseStructuredContentBehavior,
9997
10017
  BrowserContentBehavior,
9998
10018
  StructuredContentBehavior,
9999
10019
  StructuredContentPermissions,
@@ -10191,6 +10211,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
10191
10211
 
10192
10212
  /**
10193
10213
  * Control copy operations for a matched URL.
10214
+ * @interface
10194
10215
  */
10195
10216
  declare type PastePermissions = {
10196
10217
  /**
@@ -10356,6 +10377,16 @@ declare type PerDomainSettings = {
10356
10377
  * {@inheritdoc ClipboardPermissions}
10357
10378
  */
10358
10379
  clipboard?: ClipboardPermissions;
10380
+ /**
10381
+ * Whether the content can be printed.
10382
+ * Defaults to 'allow'.
10383
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10384
+ */
10385
+ print?: 'allow' | 'block';
10386
+ /**
10387
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10388
+ */
10389
+ drag?: 'allow' | 'block';
10359
10390
  };
10360
10391
  };
10361
10392
 
@@ -11751,6 +11782,14 @@ declare interface PlatformProvider {
11751
11782
  * ```
11752
11783
  */
11753
11784
  handleFailedViewCreation(viewIdentity: OpenFin.Identity, error: Error): Promise<OpenFin.ViewCreationSuccess | void>;
11785
+ /**
11786
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11787
+ * This method is called when checking if closing a window should trigger application termination.
11788
+ *
11789
+ * @param windowIdentity - The identity of the window being checked.
11790
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11791
+ */
11792
+ shouldWindowPreventQuit(windowIdentity: OpenFin.Identity): Promise<boolean>;
11754
11793
  }
11755
11794
 
11756
11795
  /**
@@ -13541,7 +13580,6 @@ declare type RvmLaunchOptions = {
13541
13580
  };
13542
13581
 
13543
13582
  /**
13544
- * @interface
13545
13583
  * Controls whether this content should be allowed or blocked when capturing the screen.
13546
13584
  */
13547
13585
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -14033,12 +14071,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
14033
14071
  };
14034
14072
 
14035
14073
  /**
14036
- * Allows more control over content behaviors
14074
+ * Behavior when displaying content from matched URLs.
14037
14075
  */
14038
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
14076
+ declare type StructuredContentBehavior = {
14077
+ behavior: BaseContentBehavior;
14078
+ } | BrowserContentBehavior;
14039
14079
 
14040
14080
  /**
14041
- * Specify rules for specific actions.
14081
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
14082
+ * @interface
14042
14083
  */
14043
14084
  declare type StructuredContentPermissions = {
14044
14085
  /**
@@ -1827,10 +1827,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1827
1827
  isMainFrame: boolean;
1828
1828
  };
1829
1829
 
1830
- declare type BaseStructuredContentBehavior = {
1831
- behavior: BaseContentBehavior;
1832
- };
1833
-
1834
1830
  declare type BaseUrlEvent = NamedEvent & {
1835
1831
  type: 'url-changed';
1836
1832
  url: string;
@@ -1931,11 +1927,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1931
1927
 
1932
1928
  declare type BoundsEvent = BaseEvent_5 & OpenFin.Bounds;
1933
1929
 
1930
+ /**
1931
+ * Opens matched URLs in the browser.
1932
+ *
1933
+ * @interface
1934
+ */
1934
1935
  declare type BrowserContentBehavior = {
1935
1936
  behavior: 'browser';
1936
1937
  /**
1937
- * Additional property that can be specified when setting the behavior to browser.
1938
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1938
+ * When true, closes the window or view that initiated the navigation.
1939
1939
  */
1940
1940
  closeExisting?: boolean;
1941
1941
  };
@@ -3246,6 +3246,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3246
3246
 
3247
3247
  /**
3248
3248
  * Clipboard Permissions
3249
+ * @interface
3249
3250
  */
3250
3251
  declare type ClipboardPermissions = {
3251
3252
  copy?: CopyPermissions;
@@ -3805,7 +3806,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3805
3806
  };
3806
3807
 
3807
3808
  /**
3808
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3809
+ * Behavior when displaying content from matched URLs.
3809
3810
  *
3810
3811
  * 'allow': The content url is allowed.
3811
3812
  * 'block': The content url is blocked.
@@ -4042,6 +4043,7 @@ declare type CopyBlockedEventReason = 'disabled';
4042
4043
 
4043
4044
  /**
4044
4045
  * Control copy operations for a matched URL.
4046
+ * @interface
4045
4047
  */
4046
4048
  declare type CopyPermissions = {
4047
4049
  /**
@@ -4294,6 +4296,7 @@ declare type DefaultDomainSettings = DomainSettings;
4294
4296
 
4295
4297
  /**
4296
4298
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4299
+ * @interface
4297
4300
  */
4298
4301
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4299
4302
 
@@ -4490,19 +4493,22 @@ declare type DomainSettings = {
4490
4493
  * more information, see the documentation for the individual properties.
4491
4494
  */
4492
4495
  default?: PerDomainSettings;
4496
+ /**
4497
+ * {@inheritDoc MultipleDomainMatchBehavior}
4498
+ */
4499
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4493
4500
  };
4494
4501
 
4495
4502
  /**
4496
- * @interface
4497
- *
4498
4503
  * Defines domain-conditional settings for an OpenFin application.
4504
+ * @interface
4499
4505
  */
4500
4506
  declare type DomainSettingsRule = {
4501
4507
  /**
4502
4508
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4503
4509
  * the domain(s) for which the rule applies.
4504
4510
  */
4505
- match?: string[];
4511
+ match: string[];
4506
4512
  /**
4507
4513
  * Settings applied when a webcontents has been navigated to a matched domain.
4508
4514
  */
@@ -5800,6 +5806,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5800
5806
  * Domain-conditional rules for file downloads.
5801
5807
  *
5802
5808
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5809
+ * @interface
5803
5810
  */
5804
5811
  declare type FileDownloadSettings = {
5805
5812
  /**
@@ -9244,6 +9251,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin.MonitorInfo & {
9244
9251
  */
9245
9252
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
9246
9253
 
9254
+ /**
9255
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
9256
+ */
9257
+ declare type MultipleDomainMatchBehavior =
9258
+ /**
9259
+ * Apply only the first matching rule in the list.
9260
+ */
9261
+ 'pick-first'
9262
+ /**
9263
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
9264
+ */
9265
+ | 'deep-merge';
9266
+
9247
9267
  /**
9248
9268
  * @interface
9249
9269
  */
@@ -9988,12 +10008,12 @@ declare namespace OpenFin {
9988
10008
  RuntimeInfo,
9989
10009
  DefaultDomainSettings,
9990
10010
  DefaultDomainSettingsRule,
10011
+ MultipleDomainMatchBehavior,
9991
10012
  DomainSettings,
9992
10013
  ApiInjection,
9993
10014
  DomainApiSettings,
9994
10015
  BaseContentBehavior,
9995
10016
  ContentBehavior,
9996
- BaseStructuredContentBehavior,
9997
10017
  BrowserContentBehavior,
9998
10018
  StructuredContentBehavior,
9999
10019
  StructuredContentPermissions,
@@ -10191,6 +10211,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
10191
10211
 
10192
10212
  /**
10193
10213
  * Control copy operations for a matched URL.
10214
+ * @interface
10194
10215
  */
10195
10216
  declare type PastePermissions = {
10196
10217
  /**
@@ -10356,6 +10377,16 @@ declare type PerDomainSettings = {
10356
10377
  * {@inheritdoc ClipboardPermissions}
10357
10378
  */
10358
10379
  clipboard?: ClipboardPermissions;
10380
+ /**
10381
+ * Whether the content can be printed.
10382
+ * Defaults to 'allow'.
10383
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10384
+ */
10385
+ print?: 'allow' | 'block';
10386
+ /**
10387
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10388
+ */
10389
+ drag?: 'allow' | 'block';
10359
10390
  };
10360
10391
  };
10361
10392
 
@@ -11751,6 +11782,14 @@ declare interface PlatformProvider {
11751
11782
  * ```
11752
11783
  */
11753
11784
  handleFailedViewCreation(viewIdentity: OpenFin.Identity, error: Error): Promise<OpenFin.ViewCreationSuccess | void>;
11785
+ /**
11786
+ * Determines whether a given window should prevent the application from quitting when it is closed.
11787
+ * This method is called when checking if closing a window should trigger application termination.
11788
+ *
11789
+ * @param windowIdentity - The identity of the window being checked.
11790
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
11791
+ */
11792
+ shouldWindowPreventQuit(windowIdentity: OpenFin.Identity): Promise<boolean>;
11754
11793
  }
11755
11794
 
11756
11795
  /**
@@ -13541,7 +13580,6 @@ declare type RvmLaunchOptions = {
13541
13580
  };
13542
13581
 
13543
13582
  /**
13544
- * @interface
13545
13583
  * Controls whether this content should be allowed or blocked when capturing the screen.
13546
13584
  */
13547
13585
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -14033,12 +14071,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
14033
14071
  };
14034
14072
 
14035
14073
  /**
14036
- * Allows more control over content behaviors
14074
+ * Behavior when displaying content from matched URLs.
14037
14075
  */
14038
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
14076
+ declare type StructuredContentBehavior = {
14077
+ behavior: BaseContentBehavior;
14078
+ } | BrowserContentBehavior;
14039
14079
 
14040
14080
  /**
14041
- * Specify rules for specific actions.
14081
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
14082
+ * @interface
14042
14083
  */
14043
14084
  declare type StructuredContentPermissions = {
14044
14085
  /**
package/out/fdc3-api.d.ts CHANGED
@@ -1859,10 +1859,6 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1859
1859
  isMainFrame: boolean;
1860
1860
  };
1861
1861
 
1862
- declare type BaseStructuredContentBehavior = {
1863
- behavior: BaseContentBehavior;
1864
- };
1865
-
1866
1862
  declare type BaseUrlEvent = NamedEvent & {
1867
1863
  type: 'url-changed';
1868
1864
  url: string;
@@ -1963,11 +1959,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1963
1959
 
1964
1960
  declare type BoundsEvent = BaseEvent_5 & OpenFin.Bounds;
1965
1961
 
1962
+ /**
1963
+ * Opens matched URLs in the browser.
1964
+ *
1965
+ * @interface
1966
+ */
1966
1967
  declare type BrowserContentBehavior = {
1967
1968
  behavior: 'browser';
1968
1969
  /**
1969
- * Additional property that can be specified when setting the behavior to browser.
1970
- * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1970
+ * When true, closes the window or view that initiated the navigation.
1971
1971
  */
1972
1972
  closeExisting?: boolean;
1973
1973
  };
@@ -3302,6 +3302,7 @@ declare type ClipboardPasteBlockedEvent = NamedEvent & {
3302
3302
 
3303
3303
  /**
3304
3304
  * Clipboard Permissions
3305
+ * @interface
3305
3306
  */
3306
3307
  declare type ClipboardPermissions = {
3307
3308
  copy?: CopyPermissions;
@@ -3864,7 +3865,7 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3864
3865
  };
3865
3866
 
3866
3867
  /**
3867
- * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3868
+ * Behavior when displaying content from matched URLs.
3868
3869
  *
3869
3870
  * 'allow': The content url is allowed.
3870
3871
  * 'block': The content url is blocked.
@@ -4101,6 +4102,7 @@ declare type CopyBlockedEventReason = 'disabled';
4101
4102
 
4102
4103
  /**
4103
4104
  * Control copy operations for a matched URL.
4105
+ * @interface
4104
4106
  */
4105
4107
  declare type CopyPermissions = {
4106
4108
  /**
@@ -4353,6 +4355,7 @@ declare type DefaultDomainSettings = DomainSettings;
4353
4355
 
4354
4356
  /**
4355
4357
  * @deprecated Use {@link OpenFin.DomainSettingsRule} instead.
4358
+ * @interface
4356
4359
  */
4357
4360
  declare type DefaultDomainSettingsRule = DomainSettingsRule;
4358
4361
 
@@ -4549,19 +4552,22 @@ declare type DomainSettings = {
4549
4552
  * more information, see the documentation for the individual properties.
4550
4553
  */
4551
4554
  default?: PerDomainSettings;
4555
+ /**
4556
+ * {@inheritDoc MultipleDomainMatchBehavior}
4557
+ */
4558
+ multipleMatchBehavior?: MultipleDomainMatchBehavior;
4552
4559
  };
4553
4560
 
4554
4561
  /**
4555
- * @interface
4556
- *
4557
4562
  * Defines domain-conditional settings for an OpenFin application.
4563
+ * @interface
4558
4564
  */
4559
4565
  declare type DomainSettingsRule = {
4560
4566
  /**
4561
4567
  * Array of [match patterns](https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns) specifying
4562
4568
  * the domain(s) for which the rule applies.
4563
4569
  */
4564
- match?: string[];
4570
+ match: string[];
4565
4571
  /**
4566
4572
  * Settings applied when a webcontents has been navigated to a matched domain.
4567
4573
  */
@@ -5885,6 +5891,7 @@ declare type FileDownloadProgressEvent = FileDownloadEvent & {
5885
5891
  * Domain-conditional rules for file downloads.
5886
5892
  *
5887
5893
  * @remarks See: https://developers.openfin.co/of-docs/docs/file-download#manifest-properties-for-file-downloads
5894
+ * @interface
5888
5895
  */
5889
5896
  declare type FileDownloadSettings = {
5890
5897
  /**
@@ -9540,6 +9547,19 @@ declare type MonitorInfoChangedEvent = BaseEvent_9 & OpenFin.MonitorInfo & {
9540
9547
  */
9541
9548
  declare type MultiInstanceViewBehavior = 'reparent' | 'duplicate' | 'default';
9542
9549
 
9550
+ /**
9551
+ * Behavior for handling multiple {@link DomainSettingsRule} matches.
9552
+ */
9553
+ declare type MultipleDomainMatchBehavior =
9554
+ /**
9555
+ * Apply only the first matching rule in the list.
9556
+ */
9557
+ 'pick-first'
9558
+ /**
9559
+ * Deep-merge all matching rules in the list, prioritizing earlier matches. Treats arrays as primitives.
9560
+ */
9561
+ | 'deep-merge';
9562
+
9543
9563
  /**
9544
9564
  * @interface
9545
9565
  */
@@ -10306,12 +10326,12 @@ declare namespace OpenFin {
10306
10326
  RuntimeInfo,
10307
10327
  DefaultDomainSettings,
10308
10328
  DefaultDomainSettingsRule,
10329
+ MultipleDomainMatchBehavior,
10309
10330
  DomainSettings,
10310
10331
  ApiInjection,
10311
10332
  DomainApiSettings,
10312
10333
  BaseContentBehavior,
10313
10334
  ContentBehavior,
10314
- BaseStructuredContentBehavior,
10315
10335
  BrowserContentBehavior,
10316
10336
  StructuredContentBehavior,
10317
10337
  StructuredContentPermissions,
@@ -10509,6 +10529,7 @@ declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
10509
10529
 
10510
10530
  /**
10511
10531
  * Control copy operations for a matched URL.
10532
+ * @interface
10512
10533
  */
10513
10534
  declare type PastePermissions = {
10514
10535
  /**
@@ -10674,6 +10695,16 @@ declare type PerDomainSettings = {
10674
10695
  * {@inheritdoc ClipboardPermissions}
10675
10696
  */
10676
10697
  clipboard?: ClipboardPermissions;
10698
+ /**
10699
+ * Whether the content can be printed.
10700
+ * Defaults to 'allow'.
10701
+ * Disables the `print` option in the context menu, and prevents printing via both OpenFin and browser APIs.
10702
+ */
10703
+ print?: 'allow' | 'block';
10704
+ /**
10705
+ * * Controls whether HTML5 dragging for this content is allowed or blocked.
10706
+ */
10707
+ drag?: 'allow' | 'block';
10677
10708
  };
10678
10709
  };
10679
10710
 
@@ -12152,6 +12183,14 @@ declare interface PlatformProvider {
12152
12183
  * ```
12153
12184
  */
12154
12185
  handleFailedViewCreation(viewIdentity: OpenFin.Identity, error: Error): Promise<OpenFin.ViewCreationSuccess | void>;
12186
+ /**
12187
+ * Determines whether a given window should prevent the application from quitting when it is closed.
12188
+ * This method is called when checking if closing a window should trigger application termination.
12189
+ *
12190
+ * @param windowIdentity - The identity of the window being checked.
12191
+ * @returns A promise resolving to `true` if the window should prevent the app from quitting, otherwise `false`.
12192
+ */
12193
+ shouldWindowPreventQuit(windowIdentity: OpenFin.Identity): Promise<boolean>;
12155
12194
  }
12156
12195
 
12157
12196
  /**
@@ -13942,7 +13981,6 @@ declare type RvmLaunchOptions = {
13942
13981
  };
13943
13982
 
13944
13983
  /**
13945
- * @interface
13946
13984
  * Controls whether this content should be allowed or blocked when capturing the screen.
13947
13985
  */
13948
13986
  declare type ScreenCaptureBehavior = 'allow' | 'block';
@@ -14437,12 +14475,15 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
14437
14475
  };
14438
14476
 
14439
14477
  /**
14440
- * Allows more control over content behaviors
14478
+ * Behavior when displaying content from matched URLs.
14441
14479
  */
14442
- declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
14480
+ declare type StructuredContentBehavior = {
14481
+ behavior: BaseContentBehavior;
14482
+ } | BrowserContentBehavior;
14443
14483
 
14444
14484
  /**
14445
- * Specify rules for specific actions.
14485
+ * Behavior when displaying content from matched URLs. Varies depending on type of navigation.
14486
+ * @interface
14446
14487
  */
14447
14488
  declare type StructuredContentPermissions = {
14448
14489
  /**
package/out/fdc3-api.js CHANGED
@@ -391,7 +391,13 @@ PrivateChannelClient$1.PrivateChannelClient = PrivateChannelClient;
391
391
  const getResultPromise = new Promise((resolve, reject) => {
392
392
  fin.InterApplicationBus.subscribe({ uuid: '*' }, guid, (intentResult) => {
393
393
  resolve(intentResult);
394
- }).catch(() => reject(new Error('getResult is not supported in this environment')));
394
+ }).catch(() => {
395
+ // not supported in web, suppress the error
396
+ if (interopModule.wire.environment.type === 'other') {
397
+ resolve(undefined);
398
+ }
399
+ reject(new Error('getResult is not supported in this environment'));
400
+ });
395
401
  });
396
402
  // Adding the intentResolutionResultId to the intentObj. Because fireIntent only accepts a single arg, we have to slap it in here.
397
403
  const metadata = app ? { target: app, intentResolutionResultId: guid } : { intentResolutionResultId: guid };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openfin/fdc3-api",
3
- "version": "41.100.105",
3
+ "version": "41.100.108",
4
4
  "description": "OpenFin fdc3 module utilities and types.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "private": false,