@openfin/core 46.100.66 → 46.100.71

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.
@@ -926,6 +926,21 @@ declare class Application extends EmitterBase<OpenFin_2.ApplicationEvent> {
926
926
  * ```
927
927
  */
928
928
  closeTrayIconPopupMenu(): Promise<void>;
929
+ /**
930
+ * @experimental
931
+ * Retrieves a performance snapshot for all Windows, Views and Frames in the Application.
932
+ *
933
+ * By default, all custom marks and measures are collected, along with navigation/paint entries
934
+ * and resource timing (`resources` defaults to `true`). Pass `include` to restrict custom
935
+ * marks/measures to matching names (string substring or RegExp). Pass `browser: true` to also
936
+ * include hereio internal runtime metrics.
937
+ *
938
+ * See also [MDN | Performance Mark API](https://developer.mozilla.org/en-US/docs/Web/API/Performance/mark)
939
+ *
940
+ * Note - only currently running WebContents will be captured, and performance entries can only be
941
+ * captured for the current navigation of each.
942
+ */
943
+ getPerformanceStats: (options?: OpenFin_2.GetPerformanceStatsOptions) => Promise<OpenFin_2.PerformanceStatsResult>;
929
944
  }
930
945
 
931
946
  /**
@@ -1377,6 +1392,7 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
1377
1392
  declare type ApplicationPermissions = {
1378
1393
  setFileDownloadLocation: boolean;
1379
1394
  getFileDownloadLocation: boolean;
1395
+ getPerformanceStats: boolean;
1380
1396
  };
1381
1397
 
1382
1398
  /**
@@ -3132,7 +3148,12 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3132
3148
  childOptions: OpenFin_2.WindowOptions;
3133
3149
  };
3134
3150
 
3135
- /* Excluded from this release type: ChromeBrowser */
3151
+ declare interface ChromeBrowser {
3152
+ /**
3153
+ * Extension action surface — observe and invoke installed Chrome extension actions.
3154
+ */
3155
+ readonly Actions: ChromeBrowserActions;
3156
+ }
3136
3157
 
3137
3158
  /**
3138
3159
  * APIs for interacting with Chromium extension actions from an initialized ChromeBrowser window.
@@ -4433,6 +4454,8 @@ declare type CopyPermissions = {
4433
4454
  };
4434
4455
  };
4435
4456
 
4457
+ declare type CorePerformanceEntry = Omit<PerformanceEntry, 'toJSON'>;
4458
+
4436
4459
  /**
4437
4460
  * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
4438
4461
  * average of _height_ and _width_.
@@ -4585,6 +4608,32 @@ declare type CreateLayoutOptions = {
4585
4608
  * @experimental
4586
4609
  */
4587
4610
  renderCustomHeaderControls?: (controlsElement: HTMLElement, context: HeaderControlsContext) => (() => void) | void;
4611
+ /**
4612
+ * Callback invoked once per tab after core has finished building the tab DOM.
4613
+ * Use this to inject custom controls (e.g. action icons) into view tab hats.
4614
+ *
4615
+ * Optionally return a cleanup function that will be called when the tab is destroyed.
4616
+ *
4617
+ * Custom controls are not serialized into snapshots since callbacks are not
4618
+ * serializable. The callback is re-invoked when tabs are recreated.
4619
+ *
4620
+ * **NOTE**: This feature is only supported with layout engine `'v2'` (GL2) and
4621
+ * `settings.tabOverflowBehavior: 'scroll'`.
4622
+ *
4623
+ * Optionally add the `lm_tab_custom_control` class to each injected control as a direct child of
4624
+ * `tabElement`. That opts the control into {@link LayoutAccessibilityOptions} keyboard
4625
+ * navigation (roving tabindex, arrow keys in DOM order, Enter/Space without switching tabs),
4626
+ * pointer isolation so clicks do not activate or close the tab (press-and-drag still
4627
+ * reorders/tears out tab, matching the close button), and default 20×20 flex sizing
4628
+ * (override using `--layout-tab-custom-control-size`).
4629
+ *
4630
+ * @param tabElement The `.lm_tab` DOM element for the view tab.
4631
+ * @param context Context object with DOM anchors for the tab.
4632
+ * @returns A callback to be called when the rendered elements need to be cleaned up.
4633
+ *
4634
+ * @experimental
4635
+ */
4636
+ renderCustomTabControls?: (tabElement: HTMLElement, context: CustomTabControlsContext) => (() => void) | void;
4588
4637
  /**
4589
4638
  * Accessibility options for the layout. Controls ARIA attributes and keyboard navigation.
4590
4639
  */
@@ -4674,6 +4723,19 @@ declare type CustomRequestHeaders = {
4674
4723
  headers: WebRequestHeader[];
4675
4724
  };
4676
4725
 
4726
+ /**
4727
+ * @interface @experimental
4728
+ */
4729
+ declare type CustomTabControlsContext = {
4730
+ viewIdentity: Identity_4;
4731
+ /** Anchor for inserting controls adjacent to the tab text. */
4732
+ titleElement: HTMLElement;
4733
+ /** Anchor for the trailing outer edge. Absent when the view is not closable. */
4734
+ closeElement?: HTMLElement;
4735
+ /** The favicon element. Hidden when favicons are disabled. */
4736
+ faviconElement?: HTMLElement;
4737
+ };
4738
+
4677
4739
  declare type DataChannelReadyState = RTCDataChannel['readyState'];
4678
4740
 
4679
4741
  export declare type DefaultColorChannelId = keyof typeof defaultColorChannels;
@@ -6421,6 +6483,32 @@ declare type GetLogRequestType = {
6421
6483
  name: string;
6422
6484
  };
6423
6485
 
6486
+ /**
6487
+ * End of Interop Client Events
6488
+ */
6489
+ /**
6490
+ * Performance Entry Types
6491
+ */
6492
+ declare type GetPerformanceStatsOptions = {
6493
+ /**
6494
+ * Optional filter for custom performance marks and measures.
6495
+ * When omitted, all custom marks and measures are collected.
6496
+ * When specified, only entries whose names match one of the filters are collected.
6497
+ * Strings match by substring; RegExp matches by test.
6498
+ */
6499
+ include?: (string | RegExp)[];
6500
+ /**
6501
+ * Include `resource` timing entries from each View / Frame / Window.
6502
+ * Defaults to `true`. Pass `false` to omit them.
6503
+ */
6504
+ resources?: boolean;
6505
+ /**
6506
+ * Whether to include hereio internal runtime metrics.
6507
+ * Defaults to `false`. Pass `true` to include.
6508
+ */
6509
+ browser?: boolean;
6510
+ };
6511
+
6424
6512
  declare type GetterCall<T> = ApiCall<void, T>;
6425
6513
 
6426
6514
  /**
@@ -9926,6 +10014,7 @@ declare type MutableViewOptions = {
9926
10014
  preventDragOut: boolean;
9927
10015
  interop?: InteropConfig;
9928
10016
  /* Excluded from this release type: _internalWorkspaceData */
10017
+ /* Excluded from this release type: workspacePlatform */
9929
10018
  /**
9930
10019
  * {@inheritDoc ViewThrottling}
9931
10020
  *
@@ -10849,6 +10938,7 @@ declare namespace OpenFin_2 {
10849
10938
  ScreenCaptureBehavior,
10850
10939
  DomainSettingsPreloadScripts,
10851
10940
  PerDomainSettings,
10941
+ UrlRestoreSettings,
10852
10942
  CopyPermissions,
10853
10943
  PastePermissions,
10854
10944
  ClipboardPermissions,
@@ -10916,6 +11006,7 @@ declare namespace OpenFin_2 {
10916
11006
  LayoutManagerOverride,
10917
11007
  LayoutManager,
10918
11008
  HeaderControlsContext,
11009
+ CustomTabControlsContext,
10919
11010
  CreateLayoutOptions,
10920
11011
  MultiInstanceViewBehavior,
10921
11012
  LayoutAccessibilityOptions,
@@ -10989,6 +11080,12 @@ declare namespace OpenFin_2 {
10989
11080
  InteropClientEvent,
10990
11081
  ClientChangedContextGroup,
10991
11082
  InteropClientEvents,
11083
+ GetPerformanceStatsOptions,
11084
+ SerializedPerformanceOptions,
11085
+ CorePerformanceEntry,
11086
+ WebContentPerformanceStats,
11087
+ WindowPerformanceStats,
11088
+ PerformanceStatsResult,
10992
11089
  ChromeBrowser,
10993
11090
  LanguageInfo,
10994
11091
  PageTranslateOptions,
@@ -11275,6 +11372,12 @@ declare type PerDomainSettings = {
11275
11372
  * See also {@link AppLogLevel} for more information.
11276
11373
  */
11277
11374
  appLogLevel?: AppLogLevel;
11375
+ /**
11376
+ * When the live URL matches this rule, remap inbound
11377
+ * {@link View.ViewModule.navigate View.navigate} / {@link Window.WindowModule.navigate Window.navigate}
11378
+ * to {@link UrlRestoreSettings.url}.
11379
+ */
11380
+ urlRestore?: UrlRestoreSettings;
11278
11381
  };
11279
11382
 
11280
11383
  /**
@@ -11285,6 +11388,15 @@ declare type PerformanceReportEvent = Performance & BaseEvent_5 & {
11285
11388
  type: 'performance-report';
11286
11389
  };
11287
11390
 
11391
+ declare type PerformanceStatsResult = {
11392
+ mainWindow: WindowPerformanceStats;
11393
+ childWindows: WindowPerformanceStats[];
11394
+ browser?: {
11395
+ timeOrigin: number;
11396
+ entries: CorePerformanceEntry[];
11397
+ };
11398
+ };
11399
+
11288
11400
  /**
11289
11401
  * @interface
11290
11402
  *
@@ -12139,20 +12251,6 @@ declare type PlatformOptions = ApplicationCreationOptions & {
12139
12251
  * @default true
12140
12252
  */
12141
12253
  allowLaunchIntoPlatform?: boolean;
12142
- /**
12143
- * @experimental
12144
- *
12145
- * Creates window chrome before views. `createWindow` resolves when the window exists
12146
- * (`window-created`) instead of waiting for layout creation to finish (`layout-ready`).
12147
- *
12148
- * Views start after the window exists. During `applySnapshot`, every window shell is
12149
- * created first; view creation starts after `platform-snapshot-applied`.
12150
- *
12151
- * Tradeoff: windows appear sooner, but view content and `layout-ready` are delayed.
12152
- *
12153
- * @default false
12154
- */
12155
- deferViewCreation?: boolean;
12156
12254
  };
12157
12255
 
12158
12256
  /**
@@ -13425,6 +13523,11 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
13425
13523
  response: OpenFin_2.MenuResult;
13426
13524
  };
13427
13525
  'close-tray-icon-popup-menu': IdentityCall<{}, void>;
13526
+ 'get-application-performance-stats': ApplicationIdentityCall<OpenFin_2.SerializedPerformanceOptions, OpenFin_2.PerformanceStatsResult> & {
13527
+ secure: true;
13528
+ namespace: 'Application';
13529
+ apiPath: '.getPerformanceStats';
13530
+ };
13428
13531
  'create-application': ApiCall<OpenFin_2.ApplicationCreationOptions, void>;
13429
13532
  'run-applications': ApiCall<{
13430
13533
  applications: Array<OpenFin_2.ManifestInfo>;
@@ -14810,6 +14913,16 @@ declare type SentMessage<Value> = Promise<Value> & {
14810
14913
  messageId: ReturnType<Environment['getNextMessageId']>;
14811
14914
  };
14812
14915
 
14916
+ declare type SerializedFilter = string | {
14917
+ type: 'regex';
14918
+ expression: string;
14919
+ flags?: string;
14920
+ };
14921
+
14922
+ declare type SerializedPerformanceOptions = Omit<GetPerformanceStatsOptions, 'include'> & {
14923
+ include?: SerializedFilter[];
14924
+ };
14925
+
14813
14926
  declare type ServeAssetOptions = AppAssetServeRequest | PathServeRequest;
14814
14927
 
14815
14928
  declare type ServedAssetInfo = {
@@ -17809,6 +17922,16 @@ declare type UrlChangedEvent = BaseUrlEvent & ({
17809
17922
  httpStatusText: string;
17810
17923
  });
17811
17924
 
17925
+ /**
17926
+ * Domain-settings policy that replaces a matched live URL with a configured start URI.
17927
+ */
17928
+ declare type UrlRestoreSettings = {
17929
+ /**
17930
+ * Absolute replacement URL. Full URL replace, not prefix rewrite.
17931
+ */
17932
+ url: string;
17933
+ };
17934
+
17812
17935
  /**
17813
17936
  * @interface
17814
17937
  */
@@ -18616,10 +18739,10 @@ declare type ViewTabAccessibilityOptions = {
18616
18739
  * Uses roving tabindex pattern - only one element focusable at a time.
18617
18740
  * @default ['active-tab', 'add-tab-button']
18618
18741
  */
18619
- tabNavigation?: ViewTabElements[];
18742
+ tabNavigation?: Exclude<ViewTabElements, 'active-tab-custom-control' | 'inactive-tab-custom-control'>[];
18620
18743
  /**
18621
18744
  * Controls which elements are navigable via Arrow keys.
18622
- * @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button']
18745
+ * @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button', 'active-tab-custom-control', 'inactive-tab-custom-control']
18623
18746
  */
18624
18747
  arrowNavigation?: ViewTabElements[];
18625
18748
  /**
@@ -18651,7 +18774,7 @@ declare type ViewTabAccessibilityOptions = {
18651
18774
  /**
18652
18775
  * Elements that can be navigated in view tabs.
18653
18776
  */
18654
- declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button';
18777
+ declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button' | 'active-tab-custom-control' | 'inactive-tab-custom-control';
18655
18778
 
18656
18779
  /**
18657
18780
  * View throttling state.
@@ -18705,6 +18828,22 @@ declare type VoidCall = ApiCall<void, void>;
18705
18828
 
18706
18829
  declare type WebContent = View_2 | _Window;
18707
18830
 
18831
+ declare type WebContentPerformanceStatBase = {
18832
+ name: string;
18833
+ entries: CorePerformanceEntry[];
18834
+ navigation: {
18835
+ historyLength: number;
18836
+ timeOrigin: number;
18837
+ };
18838
+ url: string;
18839
+ frames: WebContentPerformanceStats[];
18840
+ };
18841
+
18842
+ declare type WebContentPerformanceStats = WebContentPerformanceStatBase | {
18843
+ error: string;
18844
+ url: string;
18845
+ };
18846
+
18708
18847
  declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
18709
18848
  identity: OpenFin_2.Identity;
18710
18849
  entityType: 'window' | 'view';
@@ -21312,6 +21451,13 @@ declare type WindowOptionsChangedEvent = OpenFin_2.WindowEvents.WindowOptionsCha
21312
21451
  */
21313
21452
  declare type WindowOptionsChangedEvent_2 = OptionsChangedEvent;
21314
21453
 
21454
+ declare type WindowPerformanceStats = (WebContentPerformanceStatBase & {
21455
+ views: WebContentPerformanceStats[];
21456
+ }) | {
21457
+ error: string;
21458
+ url: string;
21459
+ };
21460
+
21315
21461
  declare type WindowPrintOptions = PrintOptions | ScreenshotPrintOptions | WindowViewsPrintOptions;
21316
21462
 
21317
21463
  /**
@@ -926,6 +926,21 @@ declare class Application extends EmitterBase<OpenFin_2.ApplicationEvent> {
926
926
  * ```
927
927
  */
928
928
  closeTrayIconPopupMenu(): Promise<void>;
929
+ /**
930
+ * @experimental
931
+ * Retrieves a performance snapshot for all Windows, Views and Frames in the Application.
932
+ *
933
+ * By default, all custom marks and measures are collected, along with navigation/paint entries
934
+ * and resource timing (`resources` defaults to `true`). Pass `include` to restrict custom
935
+ * marks/measures to matching names (string substring or RegExp). Pass `browser: true` to also
936
+ * include hereio internal runtime metrics.
937
+ *
938
+ * See also [MDN | Performance Mark API](https://developer.mozilla.org/en-US/docs/Web/API/Performance/mark)
939
+ *
940
+ * Note - only currently running WebContents will be captured, and performance entries can only be
941
+ * captured for the current navigation of each.
942
+ */
943
+ getPerformanceStats: (options?: OpenFin_2.GetPerformanceStatsOptions) => Promise<OpenFin_2.PerformanceStatsResult>;
929
944
  }
930
945
 
931
946
  /**
@@ -1377,6 +1392,7 @@ declare type ApplicationOptions = LegacyWinOptionsInAppOptions & {
1377
1392
  declare type ApplicationPermissions = {
1378
1393
  setFileDownloadLocation: boolean;
1379
1394
  getFileDownloadLocation: boolean;
1395
+ getPerformanceStats: boolean;
1380
1396
  };
1381
1397
 
1382
1398
  /**
@@ -3132,7 +3148,12 @@ declare type ChildWindowCreatedEvent = ContentCreationRulesEvent & {
3132
3148
  childOptions: OpenFin_2.WindowOptions;
3133
3149
  };
3134
3150
 
3135
- /* Excluded from this release type: ChromeBrowser */
3151
+ declare interface ChromeBrowser {
3152
+ /**
3153
+ * Extension action surface — observe and invoke installed Chrome extension actions.
3154
+ */
3155
+ readonly Actions: ChromeBrowserActions;
3156
+ }
3136
3157
 
3137
3158
  /**
3138
3159
  * APIs for interacting with Chromium extension actions from an initialized ChromeBrowser window.
@@ -4433,6 +4454,8 @@ declare type CopyPermissions = {
4433
4454
  };
4434
4455
  };
4435
4456
 
4457
+ declare type CorePerformanceEntry = Omit<PerformanceEntry, 'toJSON'>;
4458
+
4436
4459
  /**
4437
4460
  * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
4438
4461
  * average of _height_ and _width_.
@@ -4585,6 +4608,32 @@ declare type CreateLayoutOptions = {
4585
4608
  * @experimental
4586
4609
  */
4587
4610
  renderCustomHeaderControls?: (controlsElement: HTMLElement, context: HeaderControlsContext) => (() => void) | void;
4611
+ /**
4612
+ * Callback invoked once per tab after core has finished building the tab DOM.
4613
+ * Use this to inject custom controls (e.g. action icons) into view tab hats.
4614
+ *
4615
+ * Optionally return a cleanup function that will be called when the tab is destroyed.
4616
+ *
4617
+ * Custom controls are not serialized into snapshots since callbacks are not
4618
+ * serializable. The callback is re-invoked when tabs are recreated.
4619
+ *
4620
+ * **NOTE**: This feature is only supported with layout engine `'v2'` (GL2) and
4621
+ * `settings.tabOverflowBehavior: 'scroll'`.
4622
+ *
4623
+ * Optionally add the `lm_tab_custom_control` class to each injected control as a direct child of
4624
+ * `tabElement`. That opts the control into {@link LayoutAccessibilityOptions} keyboard
4625
+ * navigation (roving tabindex, arrow keys in DOM order, Enter/Space without switching tabs),
4626
+ * pointer isolation so clicks do not activate or close the tab (press-and-drag still
4627
+ * reorders/tears out tab, matching the close button), and default 20×20 flex sizing
4628
+ * (override using `--layout-tab-custom-control-size`).
4629
+ *
4630
+ * @param tabElement The `.lm_tab` DOM element for the view tab.
4631
+ * @param context Context object with DOM anchors for the tab.
4632
+ * @returns A callback to be called when the rendered elements need to be cleaned up.
4633
+ *
4634
+ * @experimental
4635
+ */
4636
+ renderCustomTabControls?: (tabElement: HTMLElement, context: CustomTabControlsContext) => (() => void) | void;
4588
4637
  /**
4589
4638
  * Accessibility options for the layout. Controls ARIA attributes and keyboard navigation.
4590
4639
  */
@@ -4674,6 +4723,19 @@ declare type CustomRequestHeaders = {
4674
4723
  headers: WebRequestHeader[];
4675
4724
  };
4676
4725
 
4726
+ /**
4727
+ * @interface @experimental
4728
+ */
4729
+ declare type CustomTabControlsContext = {
4730
+ viewIdentity: Identity_4;
4731
+ /** Anchor for inserting controls adjacent to the tab text. */
4732
+ titleElement: HTMLElement;
4733
+ /** Anchor for the trailing outer edge. Absent when the view is not closable. */
4734
+ closeElement?: HTMLElement;
4735
+ /** The favicon element. Hidden when favicons are disabled. */
4736
+ faviconElement?: HTMLElement;
4737
+ };
4738
+
4677
4739
  declare type DataChannelReadyState = RTCDataChannel['readyState'];
4678
4740
 
4679
4741
  export declare type DefaultColorChannelId = keyof typeof defaultColorChannels;
@@ -6421,6 +6483,32 @@ declare type GetLogRequestType = {
6421
6483
  name: string;
6422
6484
  };
6423
6485
 
6486
+ /**
6487
+ * End of Interop Client Events
6488
+ */
6489
+ /**
6490
+ * Performance Entry Types
6491
+ */
6492
+ declare type GetPerformanceStatsOptions = {
6493
+ /**
6494
+ * Optional filter for custom performance marks and measures.
6495
+ * When omitted, all custom marks and measures are collected.
6496
+ * When specified, only entries whose names match one of the filters are collected.
6497
+ * Strings match by substring; RegExp matches by test.
6498
+ */
6499
+ include?: (string | RegExp)[];
6500
+ /**
6501
+ * Include `resource` timing entries from each View / Frame / Window.
6502
+ * Defaults to `true`. Pass `false` to omit them.
6503
+ */
6504
+ resources?: boolean;
6505
+ /**
6506
+ * Whether to include hereio internal runtime metrics.
6507
+ * Defaults to `false`. Pass `true` to include.
6508
+ */
6509
+ browser?: boolean;
6510
+ };
6511
+
6424
6512
  declare type GetterCall<T> = ApiCall<void, T>;
6425
6513
 
6426
6514
  /**
@@ -9926,6 +10014,7 @@ declare type MutableViewOptions = {
9926
10014
  preventDragOut: boolean;
9927
10015
  interop?: InteropConfig;
9928
10016
  /* Excluded from this release type: _internalWorkspaceData */
10017
+ /* Excluded from this release type: workspacePlatform */
9929
10018
  /**
9930
10019
  * {@inheritDoc ViewThrottling}
9931
10020
  *
@@ -10849,6 +10938,7 @@ declare namespace OpenFin_2 {
10849
10938
  ScreenCaptureBehavior,
10850
10939
  DomainSettingsPreloadScripts,
10851
10940
  PerDomainSettings,
10941
+ UrlRestoreSettings,
10852
10942
  CopyPermissions,
10853
10943
  PastePermissions,
10854
10944
  ClipboardPermissions,
@@ -10916,6 +11006,7 @@ declare namespace OpenFin_2 {
10916
11006
  LayoutManagerOverride,
10917
11007
  LayoutManager,
10918
11008
  HeaderControlsContext,
11009
+ CustomTabControlsContext,
10919
11010
  CreateLayoutOptions,
10920
11011
  MultiInstanceViewBehavior,
10921
11012
  LayoutAccessibilityOptions,
@@ -10989,6 +11080,12 @@ declare namespace OpenFin_2 {
10989
11080
  InteropClientEvent,
10990
11081
  ClientChangedContextGroup,
10991
11082
  InteropClientEvents,
11083
+ GetPerformanceStatsOptions,
11084
+ SerializedPerformanceOptions,
11085
+ CorePerformanceEntry,
11086
+ WebContentPerformanceStats,
11087
+ WindowPerformanceStats,
11088
+ PerformanceStatsResult,
10992
11089
  ChromeBrowser,
10993
11090
  LanguageInfo,
10994
11091
  PageTranslateOptions,
@@ -11275,6 +11372,12 @@ declare type PerDomainSettings = {
11275
11372
  * See also {@link AppLogLevel} for more information.
11276
11373
  */
11277
11374
  appLogLevel?: AppLogLevel;
11375
+ /**
11376
+ * When the live URL matches this rule, remap inbound
11377
+ * {@link View.ViewModule.navigate View.navigate} / {@link Window.WindowModule.navigate Window.navigate}
11378
+ * to {@link UrlRestoreSettings.url}.
11379
+ */
11380
+ urlRestore?: UrlRestoreSettings;
11278
11381
  };
11279
11382
 
11280
11383
  /**
@@ -11285,6 +11388,15 @@ declare type PerformanceReportEvent = Performance & BaseEvent_5 & {
11285
11388
  type: 'performance-report';
11286
11389
  };
11287
11390
 
11391
+ declare type PerformanceStatsResult = {
11392
+ mainWindow: WindowPerformanceStats;
11393
+ childWindows: WindowPerformanceStats[];
11394
+ browser?: {
11395
+ timeOrigin: number;
11396
+ entries: CorePerformanceEntry[];
11397
+ };
11398
+ };
11399
+
11288
11400
  /**
11289
11401
  * @interface
11290
11402
  *
@@ -12139,20 +12251,6 @@ declare type PlatformOptions = ApplicationCreationOptions & {
12139
12251
  * @default true
12140
12252
  */
12141
12253
  allowLaunchIntoPlatform?: boolean;
12142
- /**
12143
- * @experimental
12144
- *
12145
- * Creates window chrome before views. `createWindow` resolves when the window exists
12146
- * (`window-created`) instead of waiting for layout creation to finish (`layout-ready`).
12147
- *
12148
- * Views start after the window exists. During `applySnapshot`, every window shell is
12149
- * created first; view creation starts after `platform-snapshot-applied`.
12150
- *
12151
- * Tradeoff: windows appear sooner, but view content and `layout-ready` are delayed.
12152
- *
12153
- * @default false
12154
- */
12155
- deferViewCreation?: boolean;
12156
12254
  };
12157
12255
 
12158
12256
  /**
@@ -13425,6 +13523,11 @@ declare type ProtocolMap = ExternalAdapterOnlyCallsMap & AnalyticsProtocolMap &
13425
13523
  response: OpenFin_2.MenuResult;
13426
13524
  };
13427
13525
  'close-tray-icon-popup-menu': IdentityCall<{}, void>;
13526
+ 'get-application-performance-stats': ApplicationIdentityCall<OpenFin_2.SerializedPerformanceOptions, OpenFin_2.PerformanceStatsResult> & {
13527
+ secure: true;
13528
+ namespace: 'Application';
13529
+ apiPath: '.getPerformanceStats';
13530
+ };
13428
13531
  'create-application': ApiCall<OpenFin_2.ApplicationCreationOptions, void>;
13429
13532
  'run-applications': ApiCall<{
13430
13533
  applications: Array<OpenFin_2.ManifestInfo>;
@@ -14810,6 +14913,16 @@ declare type SentMessage<Value> = Promise<Value> & {
14810
14913
  messageId: ReturnType<Environment['getNextMessageId']>;
14811
14914
  };
14812
14915
 
14916
+ declare type SerializedFilter = string | {
14917
+ type: 'regex';
14918
+ expression: string;
14919
+ flags?: string;
14920
+ };
14921
+
14922
+ declare type SerializedPerformanceOptions = Omit<GetPerformanceStatsOptions, 'include'> & {
14923
+ include?: SerializedFilter[];
14924
+ };
14925
+
14813
14926
  declare type ServeAssetOptions = AppAssetServeRequest | PathServeRequest;
14814
14927
 
14815
14928
  declare type ServedAssetInfo = {
@@ -17809,6 +17922,16 @@ declare type UrlChangedEvent = BaseUrlEvent & ({
17809
17922
  httpStatusText: string;
17810
17923
  });
17811
17924
 
17925
+ /**
17926
+ * Domain-settings policy that replaces a matched live URL with a configured start URI.
17927
+ */
17928
+ declare type UrlRestoreSettings = {
17929
+ /**
17930
+ * Absolute replacement URL. Full URL replace, not prefix rewrite.
17931
+ */
17932
+ url: string;
17933
+ };
17934
+
17812
17935
  /**
17813
17936
  * @interface
17814
17937
  */
@@ -18616,10 +18739,10 @@ declare type ViewTabAccessibilityOptions = {
18616
18739
  * Uses roving tabindex pattern - only one element focusable at a time.
18617
18740
  * @default ['active-tab', 'add-tab-button']
18618
18741
  */
18619
- tabNavigation?: ViewTabElements[];
18742
+ tabNavigation?: Exclude<ViewTabElements, 'active-tab-custom-control' | 'inactive-tab-custom-control'>[];
18620
18743
  /**
18621
18744
  * Controls which elements are navigable via Arrow keys.
18622
- * @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button']
18745
+ * @default ['inactive-tab', 'active-tab', 'active-tab-close-button', 'inactive-tab-close-button', 'add-tab-button', 'active-tab-custom-control', 'inactive-tab-custom-control']
18623
18746
  */
18624
18747
  arrowNavigation?: ViewTabElements[];
18625
18748
  /**
@@ -18651,7 +18774,7 @@ declare type ViewTabAccessibilityOptions = {
18651
18774
  /**
18652
18775
  * Elements that can be navigated in view tabs.
18653
18776
  */
18654
- declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button';
18777
+ declare type ViewTabElements = 'active-tab' | 'inactive-tab' | 'active-tab-close-button' | 'inactive-tab-close-button' | 'add-tab-button' | 'active-tab-custom-control' | 'inactive-tab-custom-control';
18655
18778
 
18656
18779
  /**
18657
18780
  * View throttling state.
@@ -18705,6 +18828,22 @@ declare type VoidCall = ApiCall<void, void>;
18705
18828
 
18706
18829
  declare type WebContent = View_2 | _Window;
18707
18830
 
18831
+ declare type WebContentPerformanceStatBase = {
18832
+ name: string;
18833
+ entries: CorePerformanceEntry[];
18834
+ navigation: {
18835
+ historyLength: number;
18836
+ timeOrigin: number;
18837
+ };
18838
+ url: string;
18839
+ frames: WebContentPerformanceStats[];
18840
+ };
18841
+
18842
+ declare type WebContentPerformanceStats = WebContentPerformanceStatBase | {
18843
+ error: string;
18844
+ url: string;
18845
+ };
18846
+
18708
18847
  declare class WebContents<T extends BaseEvent> extends EmitterBase<T> {
18709
18848
  identity: OpenFin_2.Identity;
18710
18849
  entityType: 'window' | 'view';
@@ -21312,6 +21451,13 @@ declare type WindowOptionsChangedEvent = OpenFin_2.WindowEvents.WindowOptionsCha
21312
21451
  */
21313
21452
  declare type WindowOptionsChangedEvent_2 = OptionsChangedEvent;
21314
21453
 
21454
+ declare type WindowPerformanceStats = (WebContentPerformanceStatBase & {
21455
+ views: WebContentPerformanceStats[];
21456
+ }) | {
21457
+ error: string;
21458
+ url: string;
21459
+ };
21460
+
21315
21461
  declare type WindowPrintOptions = PrintOptions | ScreenshotPrintOptions | WindowViewsPrintOptions;
21316
21462
 
21317
21463
  /**