@openfin/core 41.83.2 → 41.100.17

Sign up to get free protection for your applications and to get access to all the features.
@@ -1664,6 +1664,8 @@ declare type BaseConfig = {
1664
1664
  timeout?: number;
1665
1665
  };
1666
1666
 
1667
+ declare type BaseContentBehavior = 'allow' | 'block';
1668
+
1667
1669
  /**
1668
1670
  * Properties shared by all content creation rules, regardless of context.
1669
1671
  *
@@ -1807,6 +1809,10 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1807
1809
  isMainFrame: boolean;
1808
1810
  };
1809
1811
 
1812
+ declare type BaseStructuredContentBehavior = {
1813
+ behavior: BaseContentBehavior;
1814
+ };
1815
+
1810
1816
  declare type BaseUrlEvent = NamedEvent & {
1811
1817
  type: 'url-changed';
1812
1818
  url: string;
@@ -1907,6 +1913,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1907
1913
 
1908
1914
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1909
1915
 
1916
+ declare type BrowserContentBehavior = {
1917
+ behavior: 'browser';
1918
+ /**
1919
+ * Additional property that can be specified when setting the behavior to browser.
1920
+ * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1921
+ */
1922
+ closeExisting?: boolean;
1923
+ };
1924
+
1910
1925
  /**
1911
1926
  * A rule prescribing content creation in the browser.
1912
1927
  *
@@ -3673,6 +3688,13 @@ declare type ConstWindowOptions = {
3673
3688
  * @deprecated - use `icon` instead.
3674
3689
  */
3675
3690
  taskbarIcon: string;
3691
+ /**
3692
+ * Specify a taskbar group for the window.
3693
+ * _Can be shared across applications._
3694
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
3695
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
3696
+ */
3697
+ taskbarIconGroup: string;
3676
3698
  /**
3677
3699
  * @defaultValue "about:blank"
3678
3700
  *
@@ -3723,6 +3745,15 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3723
3745
  type: 'container-created';
3724
3746
  };
3725
3747
 
3748
+ /**
3749
+ * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3750
+ *
3751
+ * 'allow': The content url is allowed.
3752
+ * 'block': The content url is blocked.
3753
+ * 'browser': The content url is blocked and it is opened in the system's default web browser.
3754
+ */
3755
+ declare type ContentBehavior = BaseContentBehavior | 'browser';
3756
+
3726
3757
  /**
3727
3758
  * Generated when content navigation or redirection is blocked by {@link OpenFin.DomainSettings}.
3728
3759
  * @interface
@@ -3810,12 +3841,9 @@ declare type ContentCreationRulesEvent = NamedEvent & {
3810
3841
  declare type ContentNavigation = NavigationRules;
3811
3842
 
3812
3843
  /**
3813
- * Whether a content url is allowed or blocked for navigation or redirection.
3814
- *
3815
- * * 'allow': The content url is allowed.
3816
- * * 'block': The content url is blocked.
3844
+ * Controls whether a content url is allowed or blocked for navigation in Windows and Views or redirection for Windows, Views and iframes.
3817
3845
  */
3818
- declare type ContentPermission = 'allow' | 'block';
3846
+ declare type ContentPermission = ContentBehavior | StructuredContentBehavior | StructuredContentPermissions;
3819
3847
 
3820
3848
  /**
3821
3849
  * Restrict redirects to URLs that match an allowed pattern.
@@ -9045,6 +9073,10 @@ declare type MutableWindowOptions = {
9045
9073
  showTaskbarIcon: boolean;
9046
9074
  /**
9047
9075
  * Specify a taskbar group for the window.
9076
+ * _Can be shared across applications._
9077
+ *
9078
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9079
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
9048
9080
  * _If omitted, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9049
9081
  * @remarks It's only updatable when `enableJumpList` is set to false.
9050
9082
  */
@@ -9084,13 +9116,14 @@ declare type NativeWindowIntegrationProviderAuthorization = {
9084
9116
  };
9085
9117
 
9086
9118
  /**
9087
- * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules.
9119
+ * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules or when blocked by a domain-based permission content rule.
9088
9120
  * @interface
9089
9121
  */
9090
9122
  declare type NavigationRejectedEvent = NamedEvent & {
9091
9123
  type: 'navigation-rejected';
9092
9124
  sourceName?: string;
9093
9125
  url: string;
9126
+ contentRule?: OpenFin_2.ContentPermission | undefined;
9094
9127
  };
9095
9128
 
9096
9129
  /**
@@ -9452,6 +9485,12 @@ declare namespace OpenFin_2 {
9452
9485
  DomainSettings,
9453
9486
  ApiInjection,
9454
9487
  DomainApiSettings,
9488
+ BaseContentBehavior,
9489
+ ContentBehavior,
9490
+ BaseStructuredContentBehavior,
9491
+ BrowserContentBehavior,
9492
+ StructuredContentBehavior,
9493
+ StructuredContentPermissions,
9455
9494
  ContentPermission,
9456
9495
  PerDomainSettings,
9457
9496
  DomainSettingsRule,
@@ -13395,6 +13434,29 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13395
13434
  type: 'started';
13396
13435
  };
13397
13436
 
13437
+ /**
13438
+ * Allows more control over content behaviors
13439
+ */
13440
+ declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13441
+
13442
+ /**
13443
+ * Specify rules for specific actions.
13444
+ */
13445
+ declare type StructuredContentPermissions = {
13446
+ /**
13447
+ * Controls the behavior for navigations
13448
+ */
13449
+ navigate?: ContentBehavior | StructuredContentBehavior;
13450
+ /**
13451
+ * Controls the behavior for redirects
13452
+ */
13453
+ redirect?: ContentBehavior | StructuredContentBehavior;
13454
+ /**
13455
+ * Controls the behavior for when iframes try to redirect
13456
+ */
13457
+ iframe?: BaseContentBehavior;
13458
+ };
13459
+
13398
13460
  /**
13399
13461
  * @interface
13400
13462
  */
@@ -16798,7 +16860,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16798
16860
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16799
16861
  * });
16800
16862
  *
16801
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16863
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16802
16864
  *
16803
16865
  * const sharedWorkers = await view.getSharedWorkers();
16804
16866
  * ```
@@ -16809,7 +16871,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16809
16871
  * name:'child',
16810
16872
  * defaultWidth: 300,
16811
16873
  * defaultHeight: 300,
16812
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16874
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16813
16875
  * frame: true,
16814
16876
  * autoShow: true
16815
16877
  * };
@@ -16834,7 +16896,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16834
16896
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16835
16897
  * });
16836
16898
  *
16837
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16899
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16838
16900
  *
16839
16901
  * await view.inspectSharedWorker();
16840
16902
  * ```
@@ -16845,7 +16907,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16845
16907
  * name:'child',
16846
16908
  * defaultWidth: 300,
16847
16909
  * defaultHeight: 300,
16848
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16910
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16849
16911
  * frame: true,
16850
16912
  * autoShow: true
16851
16913
  * };
@@ -16871,7 +16933,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16871
16933
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16872
16934
  * });
16873
16935
  *
16874
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16936
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16875
16937
  *
16876
16938
  * const sharedWorkers = await view.getSharedWorkers();
16877
16939
  * await view.inspectSharedWorkerById(sharedWorkers[0].id);
@@ -16883,7 +16945,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16883
16945
  * name:'child',
16884
16946
  * defaultWidth: 300,
16885
16947
  * defaultHeight: 300,
16886
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16948
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16887
16949
  * frame: true,
16888
16950
  * autoShow: true
16889
16951
  * };
@@ -1664,6 +1664,8 @@ declare type BaseConfig = {
1664
1664
  timeout?: number;
1665
1665
  };
1666
1666
 
1667
+ declare type BaseContentBehavior = 'allow' | 'block';
1668
+
1667
1669
  /**
1668
1670
  * Properties shared by all content creation rules, regardless of context.
1669
1671
  *
@@ -1807,6 +1809,10 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1807
1809
  isMainFrame: boolean;
1808
1810
  };
1809
1811
 
1812
+ declare type BaseStructuredContentBehavior = {
1813
+ behavior: BaseContentBehavior;
1814
+ };
1815
+
1810
1816
  declare type BaseUrlEvent = NamedEvent & {
1811
1817
  type: 'url-changed';
1812
1818
  url: string;
@@ -1907,6 +1913,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1907
1913
 
1908
1914
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1909
1915
 
1916
+ declare type BrowserContentBehavior = {
1917
+ behavior: 'browser';
1918
+ /**
1919
+ * Additional property that can be specified when setting the behavior to browser.
1920
+ * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1921
+ */
1922
+ closeExisting?: boolean;
1923
+ };
1924
+
1910
1925
  /**
1911
1926
  * A rule prescribing content creation in the browser.
1912
1927
  *
@@ -3673,6 +3688,13 @@ declare type ConstWindowOptions = {
3673
3688
  * @deprecated - use `icon` instead.
3674
3689
  */
3675
3690
  taskbarIcon: string;
3691
+ /**
3692
+ * Specify a taskbar group for the window.
3693
+ * _Can be shared across applications._
3694
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
3695
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
3696
+ */
3697
+ taskbarIconGroup: string;
3676
3698
  /**
3677
3699
  * @defaultValue "about:blank"
3678
3700
  *
@@ -3723,6 +3745,15 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3723
3745
  type: 'container-created';
3724
3746
  };
3725
3747
 
3748
+ /**
3749
+ * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3750
+ *
3751
+ * 'allow': The content url is allowed.
3752
+ * 'block': The content url is blocked.
3753
+ * 'browser': The content url is blocked and it is opened in the system's default web browser.
3754
+ */
3755
+ declare type ContentBehavior = BaseContentBehavior | 'browser';
3756
+
3726
3757
  /**
3727
3758
  * Generated when content navigation or redirection is blocked by {@link OpenFin.DomainSettings}.
3728
3759
  * @interface
@@ -3810,12 +3841,9 @@ declare type ContentCreationRulesEvent = NamedEvent & {
3810
3841
  declare type ContentNavigation = NavigationRules;
3811
3842
 
3812
3843
  /**
3813
- * Whether a content url is allowed or blocked for navigation or redirection.
3814
- *
3815
- * * 'allow': The content url is allowed.
3816
- * * 'block': The content url is blocked.
3844
+ * Controls whether a content url is allowed or blocked for navigation in Windows and Views or redirection for Windows, Views and iframes.
3817
3845
  */
3818
- declare type ContentPermission = 'allow' | 'block';
3846
+ declare type ContentPermission = ContentBehavior | StructuredContentBehavior | StructuredContentPermissions;
3819
3847
 
3820
3848
  /**
3821
3849
  * Restrict redirects to URLs that match an allowed pattern.
@@ -9045,6 +9073,10 @@ declare type MutableWindowOptions = {
9045
9073
  showTaskbarIcon: boolean;
9046
9074
  /**
9047
9075
  * Specify a taskbar group for the window.
9076
+ * _Can be shared across applications._
9077
+ *
9078
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9079
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
9048
9080
  * _If omitted, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9049
9081
  * @remarks It's only updatable when `enableJumpList` is set to false.
9050
9082
  */
@@ -9084,13 +9116,14 @@ declare type NativeWindowIntegrationProviderAuthorization = {
9084
9116
  };
9085
9117
 
9086
9118
  /**
9087
- * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules.
9119
+ * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules or when blocked by a domain-based permission content rule.
9088
9120
  * @interface
9089
9121
  */
9090
9122
  declare type NavigationRejectedEvent = NamedEvent & {
9091
9123
  type: 'navigation-rejected';
9092
9124
  sourceName?: string;
9093
9125
  url: string;
9126
+ contentRule?: OpenFin_2.ContentPermission | undefined;
9094
9127
  };
9095
9128
 
9096
9129
  /**
@@ -9452,6 +9485,12 @@ declare namespace OpenFin_2 {
9452
9485
  DomainSettings,
9453
9486
  ApiInjection,
9454
9487
  DomainApiSettings,
9488
+ BaseContentBehavior,
9489
+ ContentBehavior,
9490
+ BaseStructuredContentBehavior,
9491
+ BrowserContentBehavior,
9492
+ StructuredContentBehavior,
9493
+ StructuredContentPermissions,
9455
9494
  ContentPermission,
9456
9495
  PerDomainSettings,
9457
9496
  DomainSettingsRule,
@@ -13395,6 +13434,29 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13395
13434
  type: 'started';
13396
13435
  };
13397
13436
 
13437
+ /**
13438
+ * Allows more control over content behaviors
13439
+ */
13440
+ declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13441
+
13442
+ /**
13443
+ * Specify rules for specific actions.
13444
+ */
13445
+ declare type StructuredContentPermissions = {
13446
+ /**
13447
+ * Controls the behavior for navigations
13448
+ */
13449
+ navigate?: ContentBehavior | StructuredContentBehavior;
13450
+ /**
13451
+ * Controls the behavior for redirects
13452
+ */
13453
+ redirect?: ContentBehavior | StructuredContentBehavior;
13454
+ /**
13455
+ * Controls the behavior for when iframes try to redirect
13456
+ */
13457
+ iframe?: BaseContentBehavior;
13458
+ };
13459
+
13398
13460
  /**
13399
13461
  * @interface
13400
13462
  */
@@ -16798,7 +16860,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16798
16860
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16799
16861
  * });
16800
16862
  *
16801
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16863
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16802
16864
  *
16803
16865
  * const sharedWorkers = await view.getSharedWorkers();
16804
16866
  * ```
@@ -16809,7 +16871,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16809
16871
  * name:'child',
16810
16872
  * defaultWidth: 300,
16811
16873
  * defaultHeight: 300,
16812
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16874
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16813
16875
  * frame: true,
16814
16876
  * autoShow: true
16815
16877
  * };
@@ -16834,7 +16896,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16834
16896
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16835
16897
  * });
16836
16898
  *
16837
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16899
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16838
16900
  *
16839
16901
  * await view.inspectSharedWorker();
16840
16902
  * ```
@@ -16845,7 +16907,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16845
16907
  * name:'child',
16846
16908
  * defaultWidth: 300,
16847
16909
  * defaultHeight: 300,
16848
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16910
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16849
16911
  * frame: true,
16850
16912
  * autoShow: true
16851
16913
  * };
@@ -16871,7 +16933,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16871
16933
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16872
16934
  * });
16873
16935
  *
16874
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16936
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16875
16937
  *
16876
16938
  * const sharedWorkers = await view.getSharedWorkers();
16877
16939
  * await view.inspectSharedWorkerById(sharedWorkers[0].id);
@@ -16883,7 +16945,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16883
16945
  * name:'child',
16884
16946
  * defaultWidth: 300,
16885
16947
  * defaultHeight: 300,
16886
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16948
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16887
16949
  * frame: true,
16888
16950
  * autoShow: true
16889
16951
  * };
@@ -1664,6 +1664,8 @@ declare type BaseConfig = {
1664
1664
  timeout?: number;
1665
1665
  };
1666
1666
 
1667
+ declare type BaseContentBehavior = 'allow' | 'block';
1668
+
1667
1669
  /**
1668
1670
  * Properties shared by all content creation rules, regardless of context.
1669
1671
  *
@@ -1807,6 +1809,10 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1807
1809
  isMainFrame: boolean;
1808
1810
  };
1809
1811
 
1812
+ declare type BaseStructuredContentBehavior = {
1813
+ behavior: BaseContentBehavior;
1814
+ };
1815
+
1810
1816
  declare type BaseUrlEvent = NamedEvent & {
1811
1817
  type: 'url-changed';
1812
1818
  url: string;
@@ -1907,6 +1913,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1907
1913
 
1908
1914
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1909
1915
 
1916
+ declare type BrowserContentBehavior = {
1917
+ behavior: 'browser';
1918
+ /**
1919
+ * Additional property that can be specified when setting the behavior to browser.
1920
+ * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1921
+ */
1922
+ closeExisting?: boolean;
1923
+ };
1924
+
1910
1925
  /**
1911
1926
  * A rule prescribing content creation in the browser.
1912
1927
  *
@@ -3673,6 +3688,13 @@ declare type ConstWindowOptions = {
3673
3688
  * @deprecated - use `icon` instead.
3674
3689
  */
3675
3690
  taskbarIcon: string;
3691
+ /**
3692
+ * Specify a taskbar group for the window.
3693
+ * _Can be shared across applications._
3694
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
3695
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
3696
+ */
3697
+ taskbarIconGroup: string;
3676
3698
  /**
3677
3699
  * @defaultValue "about:blank"
3678
3700
  *
@@ -3723,6 +3745,15 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3723
3745
  type: 'container-created';
3724
3746
  };
3725
3747
 
3748
+ /**
3749
+ * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3750
+ *
3751
+ * 'allow': The content url is allowed.
3752
+ * 'block': The content url is blocked.
3753
+ * 'browser': The content url is blocked and it is opened in the system's default web browser.
3754
+ */
3755
+ declare type ContentBehavior = BaseContentBehavior | 'browser';
3756
+
3726
3757
  /**
3727
3758
  * Generated when content navigation or redirection is blocked by {@link OpenFin.DomainSettings}.
3728
3759
  * @interface
@@ -3810,12 +3841,9 @@ declare type ContentCreationRulesEvent = NamedEvent & {
3810
3841
  declare type ContentNavigation = NavigationRules;
3811
3842
 
3812
3843
  /**
3813
- * Whether a content url is allowed or blocked for navigation or redirection.
3814
- *
3815
- * * 'allow': The content url is allowed.
3816
- * * 'block': The content url is blocked.
3844
+ * Controls whether a content url is allowed or blocked for navigation in Windows and Views or redirection for Windows, Views and iframes.
3817
3845
  */
3818
- declare type ContentPermission = 'allow' | 'block';
3846
+ declare type ContentPermission = ContentBehavior | StructuredContentBehavior | StructuredContentPermissions;
3819
3847
 
3820
3848
  /**
3821
3849
  * Restrict redirects to URLs that match an allowed pattern.
@@ -9045,6 +9073,10 @@ declare type MutableWindowOptions = {
9045
9073
  showTaskbarIcon: boolean;
9046
9074
  /**
9047
9075
  * Specify a taskbar group for the window.
9076
+ * _Can be shared across applications._
9077
+ *
9078
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9079
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
9048
9080
  * _If omitted, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9049
9081
  * @remarks It's only updatable when `enableJumpList` is set to false.
9050
9082
  */
@@ -9084,13 +9116,14 @@ declare type NativeWindowIntegrationProviderAuthorization = {
9084
9116
  };
9085
9117
 
9086
9118
  /**
9087
- * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules.
9119
+ * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules or when blocked by a domain-based permission content rule.
9088
9120
  * @interface
9089
9121
  */
9090
9122
  declare type NavigationRejectedEvent = NamedEvent & {
9091
9123
  type: 'navigation-rejected';
9092
9124
  sourceName?: string;
9093
9125
  url: string;
9126
+ contentRule?: OpenFin_2.ContentPermission | undefined;
9094
9127
  };
9095
9128
 
9096
9129
  /**
@@ -9452,6 +9485,12 @@ declare namespace OpenFin_2 {
9452
9485
  DomainSettings,
9453
9486
  ApiInjection,
9454
9487
  DomainApiSettings,
9488
+ BaseContentBehavior,
9489
+ ContentBehavior,
9490
+ BaseStructuredContentBehavior,
9491
+ BrowserContentBehavior,
9492
+ StructuredContentBehavior,
9493
+ StructuredContentPermissions,
9455
9494
  ContentPermission,
9456
9495
  PerDomainSettings,
9457
9496
  DomainSettingsRule,
@@ -13395,6 +13434,29 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13395
13434
  type: 'started';
13396
13435
  };
13397
13436
 
13437
+ /**
13438
+ * Allows more control over content behaviors
13439
+ */
13440
+ declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13441
+
13442
+ /**
13443
+ * Specify rules for specific actions.
13444
+ */
13445
+ declare type StructuredContentPermissions = {
13446
+ /**
13447
+ * Controls the behavior for navigations
13448
+ */
13449
+ navigate?: ContentBehavior | StructuredContentBehavior;
13450
+ /**
13451
+ * Controls the behavior for redirects
13452
+ */
13453
+ redirect?: ContentBehavior | StructuredContentBehavior;
13454
+ /**
13455
+ * Controls the behavior for when iframes try to redirect
13456
+ */
13457
+ iframe?: BaseContentBehavior;
13458
+ };
13459
+
13398
13460
  /**
13399
13461
  * @interface
13400
13462
  */
@@ -16798,7 +16860,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16798
16860
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16799
16861
  * });
16800
16862
  *
16801
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16863
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16802
16864
  *
16803
16865
  * const sharedWorkers = await view.getSharedWorkers();
16804
16866
  * ```
@@ -16809,7 +16871,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16809
16871
  * name:'child',
16810
16872
  * defaultWidth: 300,
16811
16873
  * defaultHeight: 300,
16812
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16874
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16813
16875
  * frame: true,
16814
16876
  * autoShow: true
16815
16877
  * };
@@ -16834,7 +16896,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16834
16896
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16835
16897
  * });
16836
16898
  *
16837
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16899
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16838
16900
  *
16839
16901
  * await view.inspectSharedWorker();
16840
16902
  * ```
@@ -16845,7 +16907,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16845
16907
  * name:'child',
16846
16908
  * defaultWidth: 300,
16847
16909
  * defaultHeight: 300,
16848
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16910
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16849
16911
  * frame: true,
16850
16912
  * autoShow: true
16851
16913
  * };
@@ -16871,7 +16933,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16871
16933
  * bounds: {top: 10, left: 10, width: 200, height: 200}
16872
16934
  * });
16873
16935
  *
16874
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
16936
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
16875
16937
  *
16876
16938
  * const sharedWorkers = await view.getSharedWorkers();
16877
16939
  * await view.inspectSharedWorkerById(sharedWorkers[0].id);
@@ -16883,7 +16945,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
16883
16945
  * name:'child',
16884
16946
  * defaultWidth: 300,
16885
16947
  * defaultHeight: 300,
16886
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
16948
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
16887
16949
  * frame: true,
16888
16950
  * autoShow: true
16889
16951
  * };
package/out/mock.d.ts CHANGED
@@ -1696,6 +1696,8 @@ declare type BaseConfig = {
1696
1696
  timeout?: number;
1697
1697
  };
1698
1698
 
1699
+ declare type BaseContentBehavior = 'allow' | 'block';
1700
+
1699
1701
  /**
1700
1702
  * Properties shared by all content creation rules, regardless of context.
1701
1703
  *
@@ -1839,6 +1841,10 @@ declare type BaseLoadFailedEvent = NamedEvent & {
1839
1841
  isMainFrame: boolean;
1840
1842
  };
1841
1843
 
1844
+ declare type BaseStructuredContentBehavior = {
1845
+ behavior: BaseContentBehavior;
1846
+ };
1847
+
1842
1848
  declare type BaseUrlEvent = NamedEvent & {
1843
1849
  type: 'url-changed';
1844
1850
  url: string;
@@ -1939,6 +1945,15 @@ declare type BoundsDidChangeEvent = BoundsChangeEvent & {
1939
1945
 
1940
1946
  declare type BoundsEvent = BaseEvent_5 & OpenFin_2.Bounds;
1941
1947
 
1948
+ declare type BrowserContentBehavior = {
1949
+ behavior: 'browser';
1950
+ /**
1951
+ * Additional property that can be specified when setting the behavior to browser.
1952
+ * When set to true will close the Window or View that tried to navigate or redirect to the blocked URL.
1953
+ */
1954
+ closeExisting?: boolean;
1955
+ };
1956
+
1942
1957
  /**
1943
1958
  * A rule prescribing content creation in the browser.
1944
1959
  *
@@ -3732,6 +3747,13 @@ declare type ConstWindowOptions = {
3732
3747
  * @deprecated - use `icon` instead.
3733
3748
  */
3734
3749
  taskbarIcon: string;
3750
+ /**
3751
+ * Specify a taskbar group for the window.
3752
+ * _Can be shared across applications._
3753
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
3754
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
3755
+ */
3756
+ taskbarIconGroup: string;
3735
3757
  /**
3736
3758
  * @defaultValue "about:blank"
3737
3759
  *
@@ -3782,6 +3804,15 @@ declare type ContainerCreatedEvent = LayoutDOMEvent & {
3782
3804
  type: 'container-created';
3783
3805
  };
3784
3806
 
3807
+ /**
3808
+ * Sets the behavior for when a Window or View navigates or redirects to a matching URL
3809
+ *
3810
+ * 'allow': The content url is allowed.
3811
+ * 'block': The content url is blocked.
3812
+ * 'browser': The content url is blocked and it is opened in the system's default web browser.
3813
+ */
3814
+ declare type ContentBehavior = BaseContentBehavior | 'browser';
3815
+
3785
3816
  /**
3786
3817
  * Generated when content navigation or redirection is blocked by {@link OpenFin.DomainSettings}.
3787
3818
  * @interface
@@ -3869,12 +3900,9 @@ declare type ContentCreationRulesEvent = NamedEvent & {
3869
3900
  declare type ContentNavigation = NavigationRules;
3870
3901
 
3871
3902
  /**
3872
- * Whether a content url is allowed or blocked for navigation or redirection.
3873
- *
3874
- * * 'allow': The content url is allowed.
3875
- * * 'block': The content url is blocked.
3903
+ * Controls whether a content url is allowed or blocked for navigation in Windows and Views or redirection for Windows, Views and iframes.
3876
3904
  */
3877
- declare type ContentPermission = 'allow' | 'block';
3905
+ declare type ContentPermission = ContentBehavior | StructuredContentBehavior | StructuredContentPermissions;
3878
3906
 
3879
3907
  /**
3880
3908
  * Restrict redirects to URLs that match an allowed pattern.
@@ -9345,6 +9373,10 @@ declare type MutableWindowOptions = {
9345
9373
  showTaskbarIcon: boolean;
9346
9374
  /**
9347
9375
  * Specify a taskbar group for the window.
9376
+ * _Can be shared across applications._
9377
+ *
9378
+ * _If omitted from a main window, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9379
+ * _Use `platform.defaultWindowOptions.taskbarIconGroup` to set a default for platform applications._
9348
9380
  * _If omitted, defaults to app's uuid (`fin.Application.getCurrentSync().identity.uuid`)._
9349
9381
  * @remarks It's only updatable when `enableJumpList` is set to false.
9350
9382
  */
@@ -9392,13 +9424,14 @@ declare type NativeWindowIntegrationProviderAuthorization = {
9392
9424
  };
9393
9425
 
9394
9426
  /**
9395
- * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules.
9427
+ * Generated when view navigation is rejected as per contentNavigation allowlist/denylist rules or when blocked by a domain-based permission content rule.
9396
9428
  * @interface
9397
9429
  */
9398
9430
  declare type NavigationRejectedEvent = NamedEvent & {
9399
9431
  type: 'navigation-rejected';
9400
9432
  sourceName?: string;
9401
9433
  url: string;
9434
+ contentRule?: OpenFin_2.ContentPermission | undefined;
9402
9435
  };
9403
9436
 
9404
9437
  /**
@@ -9770,6 +9803,12 @@ declare namespace OpenFin_2 {
9770
9803
  DomainSettings,
9771
9804
  ApiInjection,
9772
9805
  DomainApiSettings,
9806
+ BaseContentBehavior,
9807
+ ContentBehavior,
9808
+ BaseStructuredContentBehavior,
9809
+ BrowserContentBehavior,
9810
+ StructuredContentBehavior,
9811
+ StructuredContentPermissions,
9773
9812
  ContentPermission,
9774
9813
  PerDomainSettings,
9775
9814
  DomainSettingsRule,
@@ -13799,6 +13838,29 @@ declare type StartedEvent = BaseEvents.IdentityEvent & {
13799
13838
  type: 'started';
13800
13839
  };
13801
13840
 
13841
+ /**
13842
+ * Allows more control over content behaviors
13843
+ */
13844
+ declare type StructuredContentBehavior = BaseStructuredContentBehavior | BrowserContentBehavior;
13845
+
13846
+ /**
13847
+ * Specify rules for specific actions.
13848
+ */
13849
+ declare type StructuredContentPermissions = {
13850
+ /**
13851
+ * Controls the behavior for navigations
13852
+ */
13853
+ navigate?: ContentBehavior | StructuredContentBehavior;
13854
+ /**
13855
+ * Controls the behavior for redirects
13856
+ */
13857
+ redirect?: ContentBehavior | StructuredContentBehavior;
13858
+ /**
13859
+ * Controls the behavior for when iframes try to redirect
13860
+ */
13861
+ iframe?: BaseContentBehavior;
13862
+ };
13863
+
13802
13864
  /**
13803
13865
  * @interface
13804
13866
  */
@@ -17249,7 +17311,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17249
17311
  * bounds: {top: 10, left: 10, width: 200, height: 200}
17250
17312
  * });
17251
17313
  *
17252
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
17314
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
17253
17315
  *
17254
17316
  * const sharedWorkers = await view.getSharedWorkers();
17255
17317
  * ```
@@ -17260,7 +17322,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17260
17322
  * name:'child',
17261
17323
  * defaultWidth: 300,
17262
17324
  * defaultHeight: 300,
17263
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
17325
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
17264
17326
  * frame: true,
17265
17327
  * autoShow: true
17266
17328
  * };
@@ -17285,7 +17347,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17285
17347
  * bounds: {top: 10, left: 10, width: 200, height: 200}
17286
17348
  * });
17287
17349
  *
17288
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
17350
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
17289
17351
  *
17290
17352
  * await view.inspectSharedWorker();
17291
17353
  * ```
@@ -17296,7 +17358,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17296
17358
  * name:'child',
17297
17359
  * defaultWidth: 300,
17298
17360
  * defaultHeight: 300,
17299
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
17361
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
17300
17362
  * frame: true,
17301
17363
  * autoShow: true
17302
17364
  * };
@@ -17322,7 +17384,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17322
17384
  * bounds: {top: 10, left: 10, width: 200, height: 200}
17323
17385
  * });
17324
17386
  *
17325
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
17387
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
17326
17388
  *
17327
17389
  * const sharedWorkers = await view.getSharedWorkers();
17328
17390
  * await view.inspectSharedWorkerById(sharedWorkers[0].id);
@@ -17334,7 +17396,7 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
17334
17396
  * name:'child',
17335
17397
  * defaultWidth: 300,
17336
17398
  * defaultHeight: 300,
17337
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
17399
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
17338
17400
  * frame: true,
17339
17401
  * autoShow: true
17340
17402
  * };
package/out/mock.js CHANGED
@@ -1698,7 +1698,7 @@ class WebContents extends base_1$j.EmitterBase {
1698
1698
  * bounds: {top: 10, left: 10, width: 200, height: 200}
1699
1699
  * });
1700
1700
  *
1701
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
1701
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
1702
1702
  *
1703
1703
  * const sharedWorkers = await view.getSharedWorkers();
1704
1704
  * ```
@@ -1709,7 +1709,7 @@ class WebContents extends base_1$j.EmitterBase {
1709
1709
  * name:'child',
1710
1710
  * defaultWidth: 300,
1711
1711
  * defaultHeight: 300,
1712
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
1712
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
1713
1713
  * frame: true,
1714
1714
  * autoShow: true
1715
1715
  * };
@@ -1736,7 +1736,7 @@ class WebContents extends base_1$j.EmitterBase {
1736
1736
  * bounds: {top: 10, left: 10, width: 200, height: 200}
1737
1737
  * });
1738
1738
  *
1739
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
1739
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
1740
1740
  *
1741
1741
  * await view.inspectSharedWorker();
1742
1742
  * ```
@@ -1747,7 +1747,7 @@ class WebContents extends base_1$j.EmitterBase {
1747
1747
  * name:'child',
1748
1748
  * defaultWidth: 300,
1749
1749
  * defaultHeight: 300,
1750
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
1750
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
1751
1751
  * frame: true,
1752
1752
  * autoShow: true
1753
1753
  * };
@@ -1775,7 +1775,7 @@ class WebContents extends base_1$j.EmitterBase {
1775
1775
  * bounds: {top: 10, left: 10, width: 200, height: 200}
1776
1776
  * });
1777
1777
  *
1778
- * await view.navigate('http://mdn.github.io/simple-shared-worker/index2.html');
1778
+ * await view.navigate('https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/');
1779
1779
  *
1780
1780
  * const sharedWorkers = await view.getSharedWorkers();
1781
1781
  * await view.inspectSharedWorkerById(sharedWorkers[0].id);
@@ -1787,7 +1787,7 @@ class WebContents extends base_1$j.EmitterBase {
1787
1787
  * name:'child',
1788
1788
  * defaultWidth: 300,
1789
1789
  * defaultHeight: 300,
1790
- * url: 'http://mdn.github.io/simple-shared-worker/index2.html',
1790
+ * url: 'https://mdn.github.io/dom-examples/web-workers/simple-shared-worker/',
1791
1791
  * frame: true,
1792
1792
  * autoShow: true
1793
1793
  * };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openfin/core",
3
- "version": "41.83.2",
3
+ "version": "41.100.17",
4
4
  "description": "The core renderer entry point of OpenFin",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "main": "out/mock.js",
@@ -24,7 +24,8 @@
24
24
  "test": "run-p test:*",
25
25
  "test:sample": "tsc -p test/tsconfig.json",
26
26
  "test:imports": "ts-node scripts/verify-imports",
27
- "test:mocha": "ts-mocha -R dot --exit \"./src/**/__tests__/**.test.ts\""
27
+ "test:mocha": "ts-mocha -R dot --exit \"./src/**/__tests__/**.test.ts\"",
28
+ "version:update": "of-npm version --allow-same-version '$RMAJOR.$RMINOR.$RPATCH'"
28
29
  },
29
30
  "files": [
30
31
  "out/*",