@openfin/core 33.76.36 → 33.76.38

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.
Files changed (271) hide show
  1. package/OpenFin.d.ts +1 -1
  2. package/README.md +29 -4
  3. package/fin.d.ts +2 -2
  4. package/{src → out}/GlobalOpenFin.d.ts +1 -1
  5. package/out/mock-alpha.d.ts +16112 -0
  6. package/out/mock-beta.d.ts +16112 -0
  7. package/out/mock-public.d.ts +16112 -0
  8. package/out/mock.d.ts +16797 -0
  9. package/out/mock.js +17104 -0
  10. package/package.json +30 -23
  11. package/LICENSE +0 -13
  12. package/NOTICE +0 -16
  13. package/openfin-core-33.76.36.tgz +0 -0
  14. package/src/OpenFin.d.ts +0 -3091
  15. package/src/OpenFin.js +0 -2
  16. package/src/api/api-exposer/api-consumer.d.ts +0 -28
  17. package/src/api/api-exposer/api-consumer.js +0 -28
  18. package/src/api/api-exposer/api-exposer.d.ts +0 -35
  19. package/src/api/api-exposer/api-exposer.js +0 -38
  20. package/src/api/api-exposer/decorators.d.ts +0 -10
  21. package/src/api/api-exposer/decorators.js +0 -18
  22. package/src/api/api-exposer/index.d.ts +0 -4
  23. package/src/api/api-exposer/index.js +0 -20
  24. package/src/api/api-exposer/strategies/index.d.ts +0 -1
  25. package/src/api/api-exposer/strategies/index.js +0 -17
  26. package/src/api/api-exposer/strategies/openfin-channels/channels-consumer.d.ts +0 -14
  27. package/src/api/api-exposer/strategies/openfin-channels/channels-consumer.js +0 -20
  28. package/src/api/api-exposer/strategies/openfin-channels/channels-exposer.d.ts +0 -20
  29. package/src/api/api-exposer/strategies/openfin-channels/channels-exposer.js +0 -23
  30. package/src/api/api-exposer/strategies/openfin-channels/index.d.ts +0 -2
  31. package/src/api/api-exposer/strategies/openfin-channels/index.js +0 -18
  32. package/src/api/application/Factory.d.ts +0 -196
  33. package/src/api/application/Factory.js +0 -278
  34. package/src/api/application/Instance.d.ts +0 -692
  35. package/src/api/application/Instance.js +0 -821
  36. package/src/api/application/index.d.ts +0 -12
  37. package/src/api/application/index.js +0 -28
  38. package/src/api/base.d.ts +0 -117
  39. package/src/api/base.js +0 -246
  40. package/src/api/clipboard/index.d.ts +0 -172
  41. package/src/api/clipboard/index.js +0 -200
  42. package/src/api/events/application.d.ts +0 -158
  43. package/src/api/events/application.js +0 -14
  44. package/src/api/events/base.d.ts +0 -42
  45. package/src/api/events/base.js +0 -2
  46. package/src/api/events/channel.d.ts +0 -35
  47. package/src/api/events/channel.js +0 -7
  48. package/src/api/events/emitterMap.d.ts +0 -11
  49. package/src/api/events/emitterMap.js +0 -35
  50. package/src/api/events/eventAggregator.d.ts +0 -5
  51. package/src/api/events/eventAggregator.js +0 -35
  52. package/src/api/events/externalApplication.d.ts +0 -24
  53. package/src/api/events/externalApplication.js +0 -7
  54. package/src/api/events/frame.d.ts +0 -35
  55. package/src/api/events/frame.js +0 -2
  56. package/src/api/events/globalHotkey.d.ts +0 -25
  57. package/src/api/events/globalHotkey.js +0 -2
  58. package/src/api/events/platform.d.ts +0 -34
  59. package/src/api/events/platform.js +0 -10
  60. package/src/api/events/system.d.ts +0 -126
  61. package/src/api/events/system.js +0 -15
  62. package/src/api/events/typedEventEmitter.d.ts +0 -20
  63. package/src/api/events/typedEventEmitter.js +0 -2
  64. package/src/api/events/view.d.ts +0 -92
  65. package/src/api/events/view.js +0 -12
  66. package/src/api/events/webcontents.d.ts +0 -277
  67. package/src/api/events/webcontents.js +0 -13
  68. package/src/api/events/window.d.ts +0 -421
  69. package/src/api/events/window.js +0 -12
  70. package/src/api/external-application/Factory.d.ts +0 -34
  71. package/src/api/external-application/Factory.js +0 -47
  72. package/src/api/external-application/Instance.d.ts +0 -110
  73. package/src/api/external-application/Instance.js +0 -117
  74. package/src/api/external-application/index.d.ts +0 -12
  75. package/src/api/external-application/index.js +0 -28
  76. package/src/api/fin.d.ts +0 -54
  77. package/src/api/fin.js +0 -45
  78. package/src/api/frame/Factory.d.ts +0 -54
  79. package/src/api/frame/Factory.js +0 -86
  80. package/src/api/frame/Instance.d.ts +0 -136
  81. package/src/api/frame/Instance.js +0 -143
  82. package/src/api/frame/index.d.ts +0 -14
  83. package/src/api/frame/index.js +0 -30
  84. package/src/api/global-hotkey/index.d.ts +0 -106
  85. package/src/api/global-hotkey/index.js +0 -132
  86. package/src/api/interappbus/channel/channel.d.ts +0 -285
  87. package/src/api/interappbus/channel/channel.js +0 -334
  88. package/src/api/interappbus/channel/channels-docs.d.ts +0 -342
  89. package/src/api/interappbus/channel/channels-docs.js +0 -401
  90. package/src/api/interappbus/channel/client.d.ts +0 -117
  91. package/src/api/interappbus/channel/client.js +0 -181
  92. package/src/api/interappbus/channel/connection-manager.d.ts +0 -29
  93. package/src/api/interappbus/channel/connection-manager.js +0 -246
  94. package/src/api/interappbus/channel/index.d.ts +0 -189
  95. package/src/api/interappbus/channel/index.js +0 -333
  96. package/src/api/interappbus/channel/protocols/classic/message-receiver.d.ts +0 -13
  97. package/src/api/interappbus/channel/protocols/classic/message-receiver.js +0 -73
  98. package/src/api/interappbus/channel/protocols/classic/strategy.d.ts +0 -24
  99. package/src/api/interappbus/channel/protocols/classic/strategy.js +0 -101
  100. package/src/api/interappbus/channel/protocols/combined/strategy.d.ts +0 -20
  101. package/src/api/interappbus/channel/protocols/combined/strategy.js +0 -58
  102. package/src/api/interappbus/channel/protocols/index.d.ts +0 -47
  103. package/src/api/interappbus/channel/protocols/index.js +0 -2
  104. package/src/api/interappbus/channel/protocols/protocol-manager.d.ts +0 -10
  105. package/src/api/interappbus/channel/protocols/protocol-manager.js +0 -43
  106. package/src/api/interappbus/channel/protocols/rtc/endpoint.d.ts +0 -25
  107. package/src/api/interappbus/channel/protocols/rtc/endpoint.js +0 -141
  108. package/src/api/interappbus/channel/protocols/rtc/ice-manager.d.ts +0 -30
  109. package/src/api/interappbus/channel/protocols/rtc/ice-manager.js +0 -130
  110. package/src/api/interappbus/channel/protocols/rtc/strategy.d.ts +0 -24
  111. package/src/api/interappbus/channel/protocols/rtc/strategy.js +0 -85
  112. package/src/api/interappbus/channel/protocols/strategy-types.d.ts +0 -13
  113. package/src/api/interappbus/channel/protocols/strategy-types.js +0 -2
  114. package/src/api/interappbus/channel/protocols/strategy.d.ts +0 -17
  115. package/src/api/interappbus/channel/protocols/strategy.js +0 -2
  116. package/src/api/interappbus/channel/provider.d.ts +0 -206
  117. package/src/api/interappbus/channel/provider.js +0 -338
  118. package/src/api/interappbus/index.d.ts +0 -120
  119. package/src/api/interappbus/index.js +0 -210
  120. package/src/api/interop/Factory.d.ts +0 -57
  121. package/src/api/interop/Factory.js +0 -96
  122. package/src/api/interop/InteropBroker.d.ts +0 -665
  123. package/src/api/interop/InteropBroker.js +0 -1313
  124. package/src/api/interop/InteropClient.d.ts +0 -502
  125. package/src/api/interop/InteropClient.js +0 -683
  126. package/src/api/interop/SessionContextGroupBroker.d.ts +0 -27
  127. package/src/api/interop/SessionContextGroupBroker.js +0 -108
  128. package/src/api/interop/SessionContextGroupClient.d.ts +0 -21
  129. package/src/api/interop/SessionContextGroupClient.js +0 -86
  130. package/src/api/interop/fdc3/PrivateChannelClient.d.ts +0 -20
  131. package/src/api/interop/fdc3/PrivateChannelClient.js +0 -90
  132. package/src/api/interop/fdc3/PrivateChannelProvider.d.ts +0 -55
  133. package/src/api/interop/fdc3/PrivateChannelProvider.js +0 -276
  134. package/src/api/interop/fdc3/documentationStub.d.ts +0 -14
  135. package/src/api/interop/fdc3/documentationStub.js +0 -17
  136. package/src/api/interop/fdc3/fdc3-1.2.d.ts +0 -205
  137. package/src/api/interop/fdc3/fdc3-1.2.js +0 -435
  138. package/src/api/interop/fdc3/fdc3-2.0.d.ts +0 -298
  139. package/src/api/interop/fdc3/fdc3-2.0.js +0 -479
  140. package/src/api/interop/fdc3/fdc3.d.ts +0 -12
  141. package/src/api/interop/fdc3/fdc3.js +0 -35
  142. package/src/api/interop/fdc3/overrideCheck.d.ts +0 -4
  143. package/src/api/interop/fdc3/overrideCheck.js +0 -32
  144. package/src/api/interop/fdc3/shapes/fdc3v1.d.ts +0 -53
  145. package/src/api/interop/fdc3/shapes/fdc3v1.js +0 -4
  146. package/src/api/interop/fdc3/shapes/fdc3v2.d.ts +0 -75
  147. package/src/api/interop/fdc3/shapes/fdc3v2.js +0 -2
  148. package/src/api/interop/fdc3/utils.d.ts +0 -45
  149. package/src/api/interop/fdc3/utils.js +0 -239
  150. package/src/api/interop/fdc3/versions.d.ts +0 -1
  151. package/src/api/interop/fdc3/versions.js +0 -2
  152. package/src/api/interop/index.d.ts +0 -12
  153. package/src/api/interop/index.js +0 -28
  154. package/src/api/interop/utils.d.ts +0 -18
  155. package/src/api/interop/utils.js +0 -61
  156. package/src/api/me.d.ts +0 -40
  157. package/src/api/me.js +0 -134
  158. package/src/api/platform/Factory.d.ts +0 -171
  159. package/src/api/platform/Factory.js +0 -240
  160. package/src/api/platform/Instance.d.ts +0 -653
  161. package/src/api/platform/Instance.js +0 -834
  162. package/src/api/platform/common-utils.d.ts +0 -7
  163. package/src/api/platform/common-utils.js +0 -16
  164. package/src/api/platform/index.d.ts +0 -12
  165. package/src/api/platform/index.js +0 -28
  166. package/src/api/platform/layout/Factory.d.ts +0 -91
  167. package/src/api/platform/layout/Factory.js +0 -151
  168. package/src/api/platform/layout/Instance.d.ts +0 -192
  169. package/src/api/platform/layout/Instance.js +0 -224
  170. package/src/api/platform/layout/controllers/layout-content-cache.d.ts +0 -9
  171. package/src/api/platform/layout/controllers/layout-content-cache.js +0 -54
  172. package/src/api/platform/layout/controllers/layout-entities-controller.d.ts +0 -119
  173. package/src/api/platform/layout/controllers/layout-entities-controller.js +0 -287
  174. package/src/api/platform/layout/entities/layout-entities.d.ts +0 -427
  175. package/src/api/platform/layout/entities/layout-entities.js +0 -504
  176. package/src/api/platform/layout/entities/shapes.d.ts +0 -6
  177. package/src/api/platform/layout/entities/shapes.js +0 -2
  178. package/src/api/platform/layout/index.d.ts +0 -11
  179. package/src/api/platform/layout/index.js +0 -27
  180. package/src/api/platform/layout/layout.constants.d.ts +0 -1
  181. package/src/api/platform/layout/layout.constants.js +0 -4
  182. package/src/api/platform/layout/shapes.d.ts +0 -16
  183. package/src/api/platform/layout/shapes.js +0 -2
  184. package/src/api/platform/layout/utils/layout-traversal.d.ts +0 -4
  185. package/src/api/platform/layout/utils/layout-traversal.js +0 -65
  186. package/src/api/platform/provider.d.ts +0 -510
  187. package/src/api/platform/provider.js +0 -2
  188. package/src/api/snapshot-source/Factory.d.ts +0 -53
  189. package/src/api/snapshot-source/Factory.js +0 -81
  190. package/src/api/snapshot-source/Instance.d.ts +0 -53
  191. package/src/api/snapshot-source/Instance.js +0 -154
  192. package/src/api/snapshot-source/index.d.ts +0 -12
  193. package/src/api/snapshot-source/index.js +0 -28
  194. package/src/api/snapshot-source/utils.d.ts +0 -2
  195. package/src/api/snapshot-source/utils.js +0 -6
  196. package/src/api/system/index.d.ts +0 -1468
  197. package/src/api/system/index.js +0 -1851
  198. package/src/api/view/Factory.d.ts +0 -88
  199. package/src/api/view/Factory.js +0 -141
  200. package/src/api/view/Instance.d.ts +0 -601
  201. package/src/api/view/Instance.js +0 -671
  202. package/src/api/view/index.d.ts +0 -12
  203. package/src/api/view/index.js +0 -28
  204. package/src/api/webcontents/main.d.ts +0 -922
  205. package/src/api/webcontents/main.js +0 -1046
  206. package/src/api/window/Factory.d.ts +0 -96
  207. package/src/api/window/Factory.js +0 -142
  208. package/src/api/window/Instance.d.ts +0 -1598
  209. package/src/api/window/Instance.js +0 -1851
  210. package/src/api/window/index.d.ts +0 -14
  211. package/src/api/window/index.js +0 -30
  212. package/src/browser.d.ts +0 -10
  213. package/src/browser.js +0 -36
  214. package/src/environment/browser.d.ts +0 -29
  215. package/src/environment/browser.js +0 -60
  216. package/src/environment/environment.d.ts +0 -33
  217. package/src/environment/environment.js +0 -4
  218. package/src/environment/mockEnvironment.d.ts +0 -27
  219. package/src/environment/mockEnvironment.js +0 -61
  220. package/src/environment/node-env.d.ts +0 -29
  221. package/src/environment/node-env.js +0 -72
  222. package/src/fdc3.d.ts +0 -3
  223. package/src/fdc3.js +0 -9
  224. package/src/mock.d.ts +0 -3
  225. package/src/mock.js +0 -18
  226. package/src/namespaces.d.ts +0 -22
  227. package/src/namespaces.js +0 -26
  228. package/src/shapes/ERROR_BOX_TYPES.d.ts +0 -1
  229. package/src/shapes/ERROR_BOX_TYPES.js +0 -2
  230. package/src/shapes/WebOptions.d.ts +0 -13
  231. package/src/shapes/WebOptions.js +0 -2
  232. package/src/shapes/WindowOptions.d.ts +0 -43
  233. package/src/shapes/WindowOptions.js +0 -2
  234. package/src/shapes/protocol.d.ts +0 -204
  235. package/src/shapes/protocol.js +0 -2
  236. package/src/transport/mockWire.d.ts +0 -11
  237. package/src/transport/mockWire.js +0 -26
  238. package/src/transport/transport-errors.d.ts +0 -31
  239. package/src/transport/transport-errors.js +0 -79
  240. package/src/transport/transport.d.ts +0 -73
  241. package/src/transport/transport.js +0 -219
  242. package/src/transport/wire.d.ts +0 -77
  243. package/src/transport/wire.js +0 -36
  244. package/src/util/asyncFilter.d.ts +0 -1
  245. package/src/util/asyncFilter.js +0 -7
  246. package/src/util/channel-api-relay.d.ts +0 -13
  247. package/src/util/channel-api-relay.js +0 -47
  248. package/src/util/errors.d.ts +0 -10
  249. package/src/util/errors.js +0 -12
  250. package/src/util/exhaustive.d.ts +0 -1
  251. package/src/util/exhaustive.js +0 -7
  252. package/src/util/http.d.ts +0 -11
  253. package/src/util/http.js +0 -90
  254. package/src/util/inaccessibleObject.d.ts +0 -2
  255. package/src/util/inaccessibleObject.js +0 -49
  256. package/src/util/lazy.d.ts +0 -34
  257. package/src/util/lazy.js +0 -54
  258. package/src/util/normalize-config.d.ts +0 -3
  259. package/src/util/normalize-config.js +0 -52
  260. package/src/util/promises.d.ts +0 -5
  261. package/src/util/promises.js +0 -27
  262. package/src/util/ref-counter.d.ts +0 -7
  263. package/src/util/ref-counter.js +0 -52
  264. package/src/util/reversible-map.d.ts +0 -11
  265. package/src/util/reversible-map.js +0 -49
  266. package/src/util/runtimeVersioning.d.ts +0 -3
  267. package/src/util/runtimeVersioning.js +0 -25
  268. package/src/util/utilTypes.d.ts +0 -8
  269. package/src/util/utilTypes.js +0 -2
  270. package/src/util/validate.d.ts +0 -3
  271. package/src/util/validate.js +0 -11
@@ -1,671 +0,0 @@
1
- "use strict";
2
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
- };
7
- var _View_providerChannelClient;
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.View = void 0;
10
- const transport_errors_1 = require("../../transport/transport-errors");
11
- const lazy_1 = require("../../util/lazy");
12
- const layout_entities_1 = require("../platform/layout/entities/layout-entities");
13
- const layout_constants_1 = require("../platform/layout/layout.constants");
14
- const main_1 = require("../webcontents/main");
15
- const window_1 = require("../window");
16
- /**
17
- * @PORTED
18
- * @typedef {object} View~options
19
- * @summary View creation options.
20
- * @desc This is the options object required by {@link View.create View.create}.
21
- *
22
- * Note that `name` and `target` are the only required properties — albeit the `url` property is usually provided as well
23
- * (defaults to `"about:blank"` when omitted).
24
- *
25
- * @property {object} [experimental]
26
- * Configurations for API injection.
27
- *
28
- * @property {boolean} [experimental.childWindows] Configure if the runtime should enable child windows for views.
29
- *
30
- * @property {object} [accelerator]
31
- * Enable keyboard shortcuts for devtools, zoom, reload, and reload ignoring cache.
32
- *
33
- * @property {boolean} [accelerator.devtools=false]
34
- * If `true`, enables the devtools keyboard shortcut:<br>
35
- * `Ctrl` + `Shift` + `I` _(Toggles Devtools)_
36
- *
37
- * @property {boolean} [accelerator.reload=false]
38
- * If `true`, enables the reload keyboard shortcuts:<br>
39
- * `Ctrl` + `R` _(Windows)_<br>
40
- * `F5` _(Windows)_<br>
41
- * `Command` + `R` _(Mac)_
42
- *
43
- * @property {boolean} [accelerator.reloadIgnoringCache=false]
44
- * If `true`, enables the reload-from-source keyboard shortcuts:<br>
45
- * `Ctrl` + `Shift` + `R` _(Windows)_<br>
46
- * `Shift` + `F5` _(Windows)_<br>
47
- * `Command` + `Shift` + `R` _(Mac)_
48
- *
49
- * @property {boolean} [accelerator.zoom=false]
50
- * If `true`, enables the zoom keyboard shortcuts:<br>
51
- * `Ctrl` + `+` _(Zoom In)_<br>
52
- * `Ctrl` + `Shift` + `+` _(Zoom In)_<br>
53
- * `Ctrl` + `NumPad+` _(Zoom In)_<br>
54
- * `Ctrl` + `-` _(Zoom Out)_<br>
55
- * `Ctrl` + `Shift` + `-` _(Zoom Out)_<br>
56
- * `Ctrl` + `NumPad-` _(Zoom Out)_<br>
57
- * `Ctrl` + `Scroll` _(Zoom In & Out)_<br>
58
- * `Ctrl` + `0` _(Restore to 100%)_
59
- *
60
- * @property {object} [api]
61
- * Configurations for API injection.
62
- *
63
- * @property {object} [api.iframe] Configure if the the API should be injected into iframes based on domain.
64
- *
65
- * @property {boolean} [api.iframe.crossOriginInjection=false] Controls if the `fin` API object is present for cross origin iframes.
66
- * @property {boolean} [api.iframe.sameOriginInjection=true] Controls if the `fin` API object is present for same origin iframes.
67
- *
68
- * @property {string} [autoplayPolicy="no-user-gesture-required"]
69
- * Autoplay policy to apply to content in the window, can be
70
- * `no-user-gesture-required`, `user-gesture-required`,
71
- * `document-user-activation-required`. Defaults to `no-user-gesture-required`.
72
- *
73
- * @property {object} [autoResize] AutoResize options
74
- *
75
- * @property {object} [bounds] initial bounds given relative to the window.
76
- *
77
- * @property {string} [backgroundColor="#FFF"] - _Updatable._
78
- * The view’s _backfill_ color as a hexadecimal value. Not to be confused with the content background color
79
- * (`document.body.style.backgroundColor`),
80
- * this color briefly fills a view’s (a) content area before its content is loaded as well as (b) newly exposed
81
- * areas when growing a window. Setting
82
- * this value to the anticipated content background color can help improve user experience.
83
- * Default is white.
84
- *
85
- * @property {object} [contentNavigation]
86
- * Restrict navigation to URLs that match an allowed pattern.
87
- * In the lack of an allowlist, navigation to URLs that match a denied pattern would be prohibited.
88
- * See [here](https://developer.chrome.com/extensions/match_patterns) for more details.
89
- * @property {string[]} [contentNavigation.allowlist=[]] List of allowed URLs.
90
- * @property {string[]} [contentNavigation.denylist=[]] List of denied URLs.
91
- *
92
- * @property {object} [contentRedirect]
93
- * Restrict redirects to URLs that match an allowed pattern.
94
- * In the lack of an allowlist, redirects to URLs that match a denied pattern would be prohibited.
95
- * See [here](https://developer.chrome.com/extensions/match_patterns) for more details.
96
- * @property {string[]} [contentRedirect.allowlist=[]] List of allowed URLs.
97
- * @property {string[]} [contentRedirect.denylist=[]] List of denied URLs.
98
- *
99
- * @property {object} [contextMenuSettings] - _Updatable._
100
- * Deprecated - superseded by {@link contextMenuOptions}, which offers a larger feature-set and cleaner syntax.
101
- * Configure the context menu when right-clicking on a view.
102
- * @property {boolean} [contextMenuSettings.enable=true] Should the context menu display on right click.
103
- * @property {boolean} [contextMenuSettings.devtools=true] Should the context menu contain a button for opening devtools.
104
- * @property {boolean} [contextMenuSettings.reload=true] Should the context menu contain a button for reloading the page.
105
- *
106
- * @property {object} [contextMenuOptions] - _Updatable._
107
- * Configure the context menu when right-clicking on a view. Supported menu items:
108
- * 'separator'
109
- * 'cut'
110
- * 'copy'
111
- * 'copyImage',
112
- * 'paste'
113
- * 'spellCheck'
114
- * 'inspect'
115
- * 'reload'
116
- * 'navigateForward'
117
- * 'navigateBack'
118
- * 'print'
119
- * @property {boolean} [contextMenuOptions.enabled = true] Should the context menu display on right click.
120
- * @property {string[]} [contextMenuOptions.template=[]] List of context menu items to display on right-click.
121
- *
122
- * @property {any} [customData=""] - _Updatable._
123
- * A field that the user can attach serializable data to be ferried around with the view options.
124
- * _When omitted, the default value of this property is the empty string (`""`)._
125
- *
126
- * @property {any} [customContext=""] - _Updatable._
127
- * A field that the user can use to attach serializable data that will be saved when {@link Platform#getSnapshot Platform.getSnapshot}
128
- * is called.
129
- * When omitted, the default value of this property is the empty string (`""`).
130
- * As opposed to customData, this is meant for frequent updates and sharing with other contexts. [Example]{@tutorial customContext}
131
- *
132
- * @property {object[]} [hotkeys=[]] - _Updatable._
133
- * Defines the list of hotkeys that will be emitted as a `hotkey` event on the view. For usage example see [example]{@tutorial hotkeys}.
134
- * Within Platform, OpenFin also implements a set of pre-defined actions called
135
- * [keyboard commands]{@link https://developers.openfin.co/docs/platform-api#section-5-3-using-keyboard-commands}
136
- * that can be assigned to a specific hotkey in the platform manifest.
137
- * @property {string} hotkeys.keys The key combination of the hotkey, i.e. "Ctrl+T"
138
- * @property {boolean} [hotkeys.preventDefault=false] preventDefault will prevent the page keydown/keyup events from being emitted.
139
- *
140
- * @property {boolean} [isClosable=true] **Platforms Only.** If false, the view will be persistent and can't be closed through
141
- * either UI or `Platform.closeView`. Note that the view will still be closed if the host window is closed or
142
- * if the view isn't part of the new layout when running `Layout.replace`.
143
- *
144
- * @property {string} name
145
- * The name of the view.
146
- *
147
- * @property {boolean} [detachOnClose=false] - _Updatable._
148
- * Platforms Only. If true, will hide and detach the View from the window for later use instead of closing,
149
- * allowing the state of the View to be saved and the View to be immediately shown in a new Layout.
150
- *
151
- * @property {string} [manifestUrl] **Platforms Only.** Url to a manifest that contains View Options. Properties other than manifestUrl can still be used
152
- * but the properties in the manifest will take precedence if there is any collision.
153
- *
154
- * @property {preloadScript[]} [preloadScripts] - _Inheritable_
155
- * A list of scripts that are eval'ed before other scripts in the page. When omitted, _inherits_
156
- * from the parent application.
157
- *
158
- * @property {boolean} [preventDragOut=false] **Platforms Only.** If true, the tab of the view can't be dragged out of its host window.
159
- *
160
- * @property {string} [processAffinity=<application uuid>]
161
- * A string to attempt to group renderers together. Will only be used if pages are on the same origin.
162
- *
163
- * @property {boolean} [spellCheck=false]
164
- * Enable spell check in input text fields for the view.
165
- *
166
- * @property {Identity} [target]
167
- * The identity of the window this view should be attached to.
168
- *
169
- * @property {string} [url="about:blank"]
170
- * The URL of the view.
171
- *
172
- * @property {string} [uuid=<application uuid>]
173
- * The `uuid` of the application, unique within the set of all `Application`s running in OpenFin Runtime.
174
- * If omitted, defaults to the `uuid` of the application spawning the view.
175
- * If given, must match the `uuid` of the application spawning the view.
176
- * In other words, the application's `uuid` is the only acceptable value, but is the default, so there's
177
- * really no need to provide it.
178
- */
179
- /**
180
- * A View can be used to embed additional web content into a Window.
181
- * It is like a child window, except it is positioned relative to its owning window.
182
- * It has the ability to listen for {@link OpenFin.ViewEvents View-specific events}.
183
- *
184
- * By default, a View will try to share the same renderer process as other Views owned by its parent Application.
185
- * To change that behavior, see the processAffinity {@link OpenFin.ViewOptions view option}.
186
- *
187
- * A View's lifecycle is tied to its owning window and can be re-attached to a different window at any point during its lifecycle.
188
- */
189
- class View extends main_1.WebContents {
190
- /**
191
- * @internal
192
- */
193
- constructor(wire, identity) {
194
- super(wire, identity, 'view');
195
- this.identity = identity;
196
- _View_providerChannelClient.set(this, new lazy_1.Lazy(() => {
197
- const platform = this.fin.Platform.wrapSync(this.identity);
198
- return platform.getClient();
199
- }));
200
- /**
201
- * Attaches the current view to the given window identity.
202
- * Identity must be the identity of a window in the same application.
203
- * This detaches the view from its current window, and sets the view to be destroyed when its new window closes.
204
- * @param target {Identity}
205
- *
206
- * @example
207
- * ```js
208
- * let view;
209
- * async function createView() {
210
- * const me = await fin.Window.getCurrent();
211
- * return fin.View.create({
212
- * name: 'viewNameAttach',
213
- * target: me.identity,
214
- * bounds: {top: 10, left: 10, width: 200, height: 200}
215
- * });
216
- * }
217
- *
218
- * async function attachView() {
219
- * view = await createView();
220
- * console.log('View created.');
221
- *
222
- * await view.navigate('https://google.com');
223
- * console.log('View navigated to given url.');
224
- *
225
- * const winOption = {
226
- * name:'winOptionName',
227
- * defaultWidth: 300,
228
- * defaultHeight: 300,
229
- * url: 'https://cdn.openfin.co/docs/javascript/stable/tutorial-Window.create.html',
230
- * frame: true,
231
- * autoShow: true
232
- * };
233
- * const newWindow = await fin.Window.create(winOption);
234
- * view.attach(newWindow.identity);
235
- * }
236
- *
237
- * attachView()
238
- * .then(() => console.log('View attached to new window.'))
239
- * .catch(err => console.log(err));
240
- * ```
241
- * @experimental
242
- */
243
- this.attach = async (target) => {
244
- await this.wire.sendAction('attach-view', { target, ...this.identity });
245
- };
246
- /**
247
- * Destroys the current view
248
- *
249
- * @example
250
- * ```js
251
- * const view = fin.View.wrapSync({ uuid: 'viewUuid', name: 'viewName' });
252
- * view.destroy();
253
- * ```
254
- * @experimental
255
- */
256
- this.destroy = async () => {
257
- await this.wire.sendAction('destroy-view', { ...this.identity });
258
- };
259
- /**
260
- * Shows the current view if it is currently hidden.
261
- *
262
- * @example
263
- * ```js
264
- * let view;
265
- * async function createView() {
266
- * const me = await fin.Window.getCurrent();
267
- * return fin.View.create({
268
- * name: 'viewNameShow',
269
- * target: me.identity,
270
- * bounds: {top: 10, left: 10, width: 200, height: 200}
271
- * });
272
- * }
273
- *
274
- * async function hideAndShowView() {
275
- * view = await createView();
276
- * console.log('View created.');
277
- *
278
- * await view.navigate('https://google.com');
279
- * console.log('View navigated to given url option.');
280
- *
281
- * await view.hide();
282
- * console.log("View hidden.");
283
- *
284
- * view.show();
285
- * console.log("View shown.");
286
- * }
287
- *
288
- * hideAndShowView()
289
- * .then(() => console.log('View hidden and shown.'))
290
- * .catch(err => console.log(err));
291
- * ```
292
- * @experimental
293
- */
294
- this.show = async () => {
295
- await this.wire.sendAction('show-view', { ...this.identity });
296
- };
297
- /**
298
- * Hides the current view if it is currently visible.
299
- *
300
- * @example
301
- * ```js
302
- * let view;
303
- * async function createView() {
304
- * const me = await fin.Window.getCurrent();
305
- * return fin.View.create({
306
- * name: 'viewNameHide',
307
- * target: me.identity,
308
- * bounds: {top: 10, left: 10, width: 200, height: 200}
309
- * });
310
- * }
311
- *
312
- * async function hideView() {
313
- * view = await createView();
314
- * console.log('View created.');
315
- *
316
- * await view.navigate('https://google.com');
317
- * console.log('View navigated to given url.');
318
- *
319
- * await view.hide();
320
- * }
321
- *
322
- * hideView()
323
- * .then(() => console.log('View hidden.'))
324
- * .catch(err => console.log(err));
325
- * ```
326
- * @experimental
327
- */
328
- this.hide = async () => {
329
- await this.wire.sendAction('hide-view', { ...this.identity });
330
- };
331
- /**
332
- * Sets the bounds (top, left, width, height) of the view relative to its window.
333
- * @param bounds {ViewBounds}
334
- *
335
- * @remarks View position is relative to the bounds of the window.
336
- * ({top: 0, left: 0} represents the top left corner of the window)
337
- *
338
- * @example
339
- * ```js
340
- * let view;
341
- * async function createView() {
342
- * const me = await fin.Window.getCurrent();
343
- * return fin.View.create({
344
- * name: 'viewNameSetBounds',
345
- * target: me.identity,
346
- * bounds: {top: 10, left: 10, width: 200, height: 200}
347
- * });
348
- * }
349
- *
350
- * async function setViewBounds() {
351
- * view = await createView();
352
- * console.log('View created.');
353
- *
354
- * await view.navigate('https://google.com');
355
- * console.log('View navigated to given url.');
356
- *
357
- * await view.setBounds({
358
- * top: 100,
359
- * left: 100,
360
- * width: 300,
361
- * height: 300
362
- * });
363
- * }
364
- *
365
- * setViewBounds()
366
- * .then(() => console.log('View set to new bounds.'))
367
- * .catch(err => console.log(err));
368
- * ```
369
- * @experimental
370
- */
371
- this.setBounds = async (bounds) => {
372
- await this.wire.sendAction('set-view-bounds', { bounds, ...this.identity });
373
- };
374
- /**
375
- * Gets the bounds (top, left, width, height) of the view relative to its window.
376
- *
377
- * @remarks View position is relative to the bounds of the window.
378
- * ({top: 0, left: 0} represents the top left corner of the window)
379
- *
380
- * @example
381
- * ```js
382
- * const view = await fin.View.create({
383
- * name: 'viewNameSetBounds',
384
- * target: fin.me.identity,
385
- * bounds: {top: 10, left: 10, width: 200, height: 200}
386
- * });
387
- *
388
- * await view.navigate('https://google.com');
389
- *
390
- * await view.setBounds({
391
- * top: 100,
392
- * left: 100,
393
- * width: 300,
394
- * height: 300
395
- * });
396
- *
397
- * console.log(await view.getBounds());
398
- * ```
399
- * @experimental
400
- */
401
- this.getBounds = async () => {
402
- const ack = await this.wire.sendAction('get-view-bounds', { ...this.identity });
403
- return ack.payload.data;
404
- };
405
- /**
406
- * Gets the View's info.
407
- *
408
- * @example
409
- * ```js
410
- * let view;
411
- * async function createView() {
412
- * const me = await fin.Window.getCurrent();
413
- * return fin.View.create({
414
- * name: 'viewNameGetInfo',
415
- * target: me.identity,
416
- * bounds: {top: 10, left: 10, width: 200, height: 200}
417
- * });
418
- * }
419
- *
420
- * async function getViewInfo() {
421
- * view = await createView();
422
- * console.log('View created.');
423
- *
424
- * await view.navigate('https://google.com');
425
- * console.log('View navigated to given url.');
426
- *
427
- * return view.getInfo();
428
- * }
429
- *
430
- * getViewInfo()
431
- * .then((info) => console.log('View info fetched.', info))
432
- * .catch(err => console.log(err));
433
- * ```
434
- * @experimental
435
- */
436
- this.getInfo = async () => {
437
- const ack = await this.wire.sendAction('get-view-info', { ...this.identity });
438
- return ack.payload.data;
439
- };
440
- /**
441
- * Retrieves the layout for the window the view is attached to.
442
- *
443
- * @example
444
- * ```js
445
- * //get the current View
446
- * const view = await fin.View.getCurrent();
447
- *
448
- * //get a reference to the Layout for the Window the view is part of
449
- * const layout = await view.getParentLayout();
450
- * ```
451
- * @experimental
452
- */
453
- this.getParentLayout = async () => {
454
- this.wire.sendAction('view-get-parent-layout', { ...this.identity }).catch(() => {
455
- // don't expose
456
- });
457
- const currentWindow = await this.getCurrentWindow();
458
- return currentWindow.getLayout();
459
- };
460
- /**
461
- * Gets the View's options.
462
- *
463
- * @example
464
- * ```js
465
- * let view;
466
- * async function createView() {
467
- * const me = await fin.Window.getCurrent();
468
- * return fin.View.create({
469
- * name: 'viewNameGetOptions',
470
- * target: me.identity,
471
- * bounds: {top: 10, left: 10, width: 200, height: 200}
472
- * });
473
- * }
474
- *
475
- * async function getViewOptions() {
476
- * view = await createView();
477
- * console.log('View created.');
478
- *
479
- * await view.navigate('https://google.com');
480
- * console.log('View navigated to given url.');
481
- *
482
- * const me = await fin.Window.getCurrent();
483
- * view = fin.View.wrapSync({ uuid: me.identity.uuid, name: 'viewNameGetOptions' });
484
- * return view.getOptions();
485
- * }
486
- *
487
- * getViewOptions()
488
- * .then((info) => console.log('View options fetched.', info))
489
- * .catch(err => console.log(err));
490
- * ```
491
- * @experimental
492
- */
493
- this.getOptions = async () => {
494
- return this.wire.sendAction('get-view-options', { ...this.identity }).then(({ payload }) => payload.data);
495
- };
496
- /**
497
- * Updates the view's options.
498
- * @param options
499
- *
500
- * @example
501
- * ```js
502
- * let view;
503
- * async function createView() {
504
- * const me = await fin.Window.getCurrent();
505
- * return fin.View.create({
506
- * url: 'https://google.com',
507
- * name: 'viewNameUpdateOptions',
508
- * target: me.identity,
509
- * bounds: {top: 10, left: 10, width: 200, height: 200}
510
- * });
511
- * }
512
- *
513
- * async function updateViewOptions() {
514
- * view = await createView();
515
- * console.log('View created.');
516
- *
517
- * await view.navigate('https://google.com');
518
- * console.log('View navigated to given url option.');
519
- *
520
- * const newOptions = { autoResize: {
521
- * width: true,
522
- * horizontal: true
523
- * }};
524
- * return view.updateOptions(newOptions);
525
- * }
526
- *
527
- * updateViewOptions()
528
- * .then(payload => console.log('View options updated: ', payload))
529
- * .catch(err => console.log(err));
530
- * ```
531
- * @experimental
532
- */
533
- this.updateOptions = async (options) => {
534
- return this.wire.sendAction('update-view-options', { options, ...this.identity }).then(() => undefined);
535
- };
536
- /**
537
- * Retrieves the window the view is currently attached to.
538
- *
539
- * @experimental
540
- * @example
541
- * ```js
542
- * const view = fin.View.wrapSync({ uuid: 'viewUuid', name: 'viewName' });
543
- * view.getCurrentWindow()
544
- * .then(win => console.log('current window', win))
545
- * .catch(err => console.log(err));)
546
- * ```
547
- */
548
- this.getCurrentWindow = async () => {
549
- const { payload: { data } } = await this.wire.sendAction('get-view-window', { ...this.identity });
550
- return new window_1._Window(this.wire, data);
551
- };
552
- /**
553
- * Retrieves the current {@link OpenFin.TabStack} of the view if it belongs to one.
554
- * @returns this view belongs to.
555
- * @throws if this view does not belong to a TabStack or if the window has been destroyed.
556
- * @example
557
- * ```js
558
- * if (!fin.me.isView) {
559
- * throw new Error('Not running in a platform View.');
560
- * }
561
- *
562
- * const stack = await fin.me.getCurrentStack();
563
- * // Alternatively, you can wrap any view and get the stack from there
564
- * // const viewFromSomewhere = fin.View.wrapSync(someView.identity);
565
- * // const stack = await viewFromSomewhere.getCurrentStack();
566
- * const views = await stack.getViews();
567
- * console.log(`Stack contains ${views.length} view(s)`);
568
- * ```
569
- */
570
- this.getCurrentStack = async () => {
571
- this.wire.sendAction('view-get-current-stack').catch(() => {
572
- // don't expose
573
- });
574
- try {
575
- const layoutWindow = await this.getCurrentWindow();
576
- const providerChannelClient = await __classPrivateFieldGet(this, _View_providerChannelClient, "f").getValue();
577
- const client = await layout_entities_1.LayoutNode.newLayoutEntitiesClient(providerChannelClient, layout_constants_1.LAYOUT_CONTROLLER_ID, layoutWindow.identity);
578
- const stackDefinition = (await client.getStackByView(this.identity));
579
- return layout_entities_1.LayoutNode.getEntity(stackDefinition, client);
580
- }
581
- catch (error) {
582
- throw new transport_errors_1.RuntimeError({ reason: 'This view does not belong to a stack.', error });
583
- }
584
- };
585
- /**
586
- * Triggers the before-unload handler for the View, if one is set.
587
- *
588
- * @remarks Returns `true` if the handler is trying to prevent the View from unloading, and `false` if it isn't.
589
- * Only enabled when setting enableBeforeUnload: true in your View options. If this option is not enabled it will
590
- * always return false.
591
- *
592
- * This method is used internally by the Platform Provider to determine the status of each before unload handler in Views when closing the Window.
593
- *
594
- * @example
595
- *
596
- * ```js
597
- * // from inside a View context
598
- * const unloadPrevented = await fin.me.triggerBeforeUnload();
599
- * ```
600
- *
601
- * @experimental
602
- */
603
- this.triggerBeforeUnload = async () => {
604
- const message = await this.wire.sendAction('trigger-before-unload', { ...this.identity });
605
- return message.payload.data;
606
- };
607
- /**
608
- * **NOTE**: Internal use only.
609
- * Attaches this view to an HTML element in the current context. The view will resize responsively when the element bounds change.
610
- *
611
- * **Known issue**: View.bindToElement does not track position changes, if the element has fixed px width and height values it is possible for the view to not update responsively.
612
- *
613
- * **Known issue**: When View.bindToElement is used on a element that takes up the entire page in a platform window, the bound view will not respond responsively when the window is resized to be smaller.
614
- *
615
- * @param element - HTML element to attach the view to.
616
- * @returns - Cleanup function that will disconnect the element resize observer.
617
- * @internal
618
- * @experimental
619
- * @remarks View will resize accordingly when the element is resized. If the element is repositioned in the DOM the view will not be repositioned, to handle this case call `bindToElement` again once the element changes position.
620
- *
621
- * @example
622
- * ```html
623
- * <div id="view-container"></div>
624
- * <script>
625
- * async function createAndAttachView() {
626
- * const url = 'https://example.com';
627
- * const elementId = 'view-container';
628
- * const element = document.getElementById(elementId);
629
- * const view = await fin.View.create({
630
- * name: 'my-view',
631
- * url,
632
- * target: fin.me.identity
633
- * });
634
- * await view.navigate(url);
635
- * await view.bindToElement(element);
636
- * }
637
- * createAndAttachView().catch(console.error);
638
- * </script>
639
- * ```
640
- */
641
- this.bindToElement = async (element) => {
642
- if (!element) {
643
- throw new Error('Element not found.');
644
- }
645
- const onChange = async (bounds) => this.setBounds(bounds);
646
- return this.wire.environment.observeBounds(element, onChange);
647
- };
648
- }
649
- /**
650
- * Focuses the view
651
- *
652
- * @function focus
653
- * @memberof View
654
- * @emits focused
655
- * @instance
656
- * @example
657
- * ```js
658
- * const view = fin.View.wrapSync({ uuid: 'viewUuid', name: 'viewName' });
659
- * await view.focus();
660
- * // do things with the focused view
661
- * ```
662
- * @experimental
663
- */
664
- async focus({ emitSynthFocused } = { emitSynthFocused: true }) {
665
- const win = await this.getCurrentWindow();
666
- await win.focusedWebViewWasChanged();
667
- await super.focus({ emitSynthFocused });
668
- }
669
- }
670
- exports.View = View;
671
- _View_providerChannelClient = new WeakMap();
@@ -1,12 +0,0 @@
1
- /**
2
- * Entry point for the OpenFin View namespace.
3
- *
4
- * Because TypeDoc does not currently support multiple modules with the same name, the module alias "ViewModule" is used for
5
- * the module containing static members of the `View` namespace (available under `fin.View`), while `View` documents
6
- * instances of the OpenFin `View` class.
7
- *
8
- * @packageDocumentation
9
- */
10
- import ViewModule from './Factory';
11
- export default ViewModule;
12
- export * from './Instance';