@theia/mini-browser 1.67.0-next.56 → 1.67.0-next.59

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 (77) hide show
  1. package/lib/browser/environment/mini-browser-environment-module.d.ts +4 -0
  2. package/lib/browser/environment/mini-browser-environment-module.d.ts.map +1 -0
  3. package/lib/browser/environment/mini-browser-environment-module.js +25 -0
  4. package/lib/browser/environment/mini-browser-environment-module.js.map +1 -0
  5. package/lib/browser/environment/mini-browser-environment.d.ts +26 -0
  6. package/lib/browser/environment/mini-browser-environment.d.ts.map +1 -0
  7. package/lib/browser/environment/mini-browser-environment.js +88 -0
  8. package/lib/browser/environment/mini-browser-environment.js.map +1 -0
  9. package/lib/browser/location-mapper-service.d.ts +59 -0
  10. package/lib/browser/location-mapper-service.d.ts.map +1 -0
  11. package/lib/browser/location-mapper-service.js +133 -0
  12. package/lib/browser/location-mapper-service.js.map +1 -0
  13. package/lib/browser/mini-browser-content-style.d.ts +18 -0
  14. package/lib/browser/mini-browser-content-style.d.ts.map +1 -0
  15. package/lib/browser/mini-browser-content-style.js +37 -0
  16. package/lib/browser/mini-browser-content-style.js.map +1 -0
  17. package/lib/browser/mini-browser-content.d.ts +178 -0
  18. package/lib/browser/mini-browser-content.d.ts.map +1 -0
  19. package/lib/browser/mini-browser-content.js +543 -0
  20. package/lib/browser/mini-browser-content.js.map +1 -0
  21. package/lib/browser/mini-browser-frontend-module.d.ts +5 -0
  22. package/lib/browser/mini-browser-frontend-module.d.ts.map +1 -0
  23. package/lib/browser/mini-browser-frontend-module.js +71 -0
  24. package/lib/browser/mini-browser-frontend-module.js.map +1 -0
  25. package/lib/browser/mini-browser-frontend-security-warnings.d.ts +12 -0
  26. package/lib/browser/mini-browser-frontend-security-warnings.d.ts.map +1 -0
  27. package/lib/browser/mini-browser-frontend-security-warnings.js +66 -0
  28. package/lib/browser/mini-browser-frontend-security-warnings.js.map +1 -0
  29. package/lib/browser/mini-browser-open-handler.d.ts +77 -0
  30. package/lib/browser/mini-browser-open-handler.d.ts.map +1 -0
  31. package/lib/browser/mini-browser-open-handler.js +285 -0
  32. package/lib/browser/mini-browser-open-handler.js.map +1 -0
  33. package/lib/browser/mini-browser.d.ts +26 -0
  34. package/lib/browser/mini-browser.d.ts.map +1 -0
  35. package/lib/browser/mini-browser.js +111 -0
  36. package/lib/browser/mini-browser.js.map +1 -0
  37. package/lib/common/mini-browser-endpoint.d.ts +13 -0
  38. package/lib/common/mini-browser-endpoint.d.ts.map +1 -0
  39. package/lib/common/mini-browser-endpoint.js +32 -0
  40. package/lib/common/mini-browser-endpoint.js.map +1 -0
  41. package/lib/common/mini-browser-service.d.ts +15 -0
  42. package/lib/common/mini-browser-service.d.ts.map +1 -0
  43. package/lib/common/mini-browser-service.js +21 -0
  44. package/lib/common/mini-browser-service.js.map +1 -0
  45. package/lib/electron-browser/environment/electron-mini-browser-environment-module.d.ts +4 -0
  46. package/lib/electron-browser/environment/electron-mini-browser-environment-module.d.ts.map +1 -0
  47. package/lib/electron-browser/environment/electron-mini-browser-environment-module.js +26 -0
  48. package/lib/electron-browser/environment/electron-mini-browser-environment-module.js.map +1 -0
  49. package/lib/electron-browser/environment/electron-mini-browser-environment.d.ts +10 -0
  50. package/lib/electron-browser/environment/electron-mini-browser-environment.d.ts.map +1 -0
  51. package/lib/electron-browser/environment/electron-mini-browser-environment.js +53 -0
  52. package/lib/electron-browser/environment/electron-mini-browser-environment.js.map +1 -0
  53. package/lib/electron-main/mini-browser-electron-main-contribution.d.ts +13 -0
  54. package/lib/electron-main/mini-browser-electron-main-contribution.d.ts.map +1 -0
  55. package/lib/electron-main/mini-browser-electron-main-contribution.js +47 -0
  56. package/lib/electron-main/mini-browser-electron-main-contribution.js.map +1 -0
  57. package/lib/node/mini-browser-backend-module.d.ts +4 -0
  58. package/lib/node/mini-browser-backend-module.d.ts.map +1 -0
  59. package/lib/node/mini-browser-backend-module.js +42 -0
  60. package/lib/node/mini-browser-backend-module.js.map +1 -0
  61. package/lib/node/mini-browser-backend-security-warnings.d.ts +6 -0
  62. package/lib/node/mini-browser-backend-security-warnings.d.ts.map +1 -0
  63. package/lib/node/mini-browser-backend-security-warnings.js +47 -0
  64. package/lib/node/mini-browser-backend-security-warnings.js.map +1 -0
  65. package/lib/node/mini-browser-endpoint.d.ts +98 -0
  66. package/lib/node/mini-browser-endpoint.d.ts.map +1 -0
  67. package/lib/node/mini-browser-endpoint.js +261 -0
  68. package/lib/node/mini-browser-endpoint.js.map +1 -0
  69. package/lib/node/mini-browser-ws-validator.d.ts +13 -0
  70. package/lib/node/mini-browser-ws-validator.d.ts.map +1 -0
  71. package/lib/node/mini-browser-ws-validator.js +62 -0
  72. package/lib/node/mini-browser-ws-validator.js.map +1 -0
  73. package/lib/package.spec.d.ts +1 -0
  74. package/lib/package.spec.d.ts.map +1 -0
  75. package/lib/package.spec.js +19 -0
  76. package/lib/package.spec.js.map +1 -0
  77. package/package.json +4 -4
@@ -0,0 +1,543 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2018 TypeFox and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.MiniBrowserContent = exports.MiniBrowserContentFactory = exports.MiniBrowserProps = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const PDFObject = require("pdfobject");
21
+ const inversify_1 = require("@theia/core/shared/inversify");
22
+ const uri_1 = require("@theia/core/lib/common/uri");
23
+ const logger_1 = require("@theia/core/lib/common/logger");
24
+ const event_1 = require("@theia/core/lib/common/event");
25
+ const keybinding_1 = require("@theia/core/lib/browser/keybinding");
26
+ const window_service_1 = require("@theia/core/lib/browser/window/window-service");
27
+ const browser_1 = require("@theia/core/lib/browser");
28
+ const disposable_1 = require("@theia/core/lib/common/disposable");
29
+ const widget_1 = require("@theia/core/lib/browser/widgets/widget");
30
+ const location_mapper_service_1 = require("./location-mapper-service");
31
+ const application_shell_mouse_tracker_1 = require("@theia/core/lib/browser/shell/application-shell-mouse-tracker");
32
+ const debounce = require("@theia/core/shared/lodash.debounce");
33
+ const mini_browser_content_style_1 = require("./mini-browser-content-style");
34
+ const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
35
+ /**
36
+ * Initializer properties for the embedded browser widget.
37
+ */
38
+ let MiniBrowserProps = class MiniBrowserProps {
39
+ };
40
+ exports.MiniBrowserProps = MiniBrowserProps;
41
+ exports.MiniBrowserProps = MiniBrowserProps = tslib_1.__decorate([
42
+ (0, inversify_1.injectable)()
43
+ ], MiniBrowserProps);
44
+ (function (MiniBrowserProps) {
45
+ /**
46
+ * Enumeration of the supported `sandbox` options for the `iframe`.
47
+ */
48
+ let SandboxOptions;
49
+ (function (SandboxOptions) {
50
+ /**
51
+ * Allows form submissions.
52
+ */
53
+ SandboxOptions[SandboxOptions["allow-forms"] = 0] = "allow-forms";
54
+ /**
55
+ * Allows popups, such as `window.open()`, `showModalDialog()`, `target=”_blank”`, etc.
56
+ */
57
+ SandboxOptions[SandboxOptions["allow-popups"] = 1] = "allow-popups";
58
+ /**
59
+ * Allows pointer lock.
60
+ */
61
+ SandboxOptions[SandboxOptions["allow-pointer-lock"] = 2] = "allow-pointer-lock";
62
+ /**
63
+ * Allows the document to maintain its origin. Pages loaded from https://example.com/ will retain access to that origin’s data.
64
+ */
65
+ SandboxOptions[SandboxOptions["allow-same-origin"] = 3] = "allow-same-origin";
66
+ /**
67
+ * Allows JavaScript execution. Also allows features to trigger automatically (as they’d be trivial to implement via JavaScript).
68
+ */
69
+ SandboxOptions[SandboxOptions["allow-scripts"] = 4] = "allow-scripts";
70
+ /**
71
+ * Allows the document to break out of the frame by navigating the top-level `window`.
72
+ */
73
+ SandboxOptions[SandboxOptions["allow-top-navigation"] = 5] = "allow-top-navigation";
74
+ /**
75
+ * Allows the embedded browsing context to open modal windows.
76
+ */
77
+ SandboxOptions[SandboxOptions["allow-modals"] = 6] = "allow-modals";
78
+ /**
79
+ * Allows the embedded browsing context to disable the ability to lock the screen orientation.
80
+ */
81
+ SandboxOptions[SandboxOptions["allow-orientation-lock"] = 7] = "allow-orientation-lock";
82
+ /**
83
+ * Allows a sandboxed document to open new windows without forcing the sandboxing flags upon them.
84
+ * This will allow, for example, a third-party advertisement to be safely sandboxed without forcing the same restrictions upon a landing page.
85
+ */
86
+ SandboxOptions[SandboxOptions["allow-popups-to-escape-sandbox"] = 8] = "allow-popups-to-escape-sandbox";
87
+ /**
88
+ * Allows embedders to have control over whether an iframe can start a presentation session.
89
+ */
90
+ SandboxOptions[SandboxOptions["allow-presentation"] = 9] = "allow-presentation";
91
+ /**
92
+ * Allows the embedded browsing context to navigate (load) content to the top-level browsing context only when initiated by a user gesture.
93
+ * If this keyword is not used, this operation is not allowed.
94
+ */
95
+ SandboxOptions[SandboxOptions["allow-top-navigation-by-user-activation"] = 10] = "allow-top-navigation-by-user-activation";
96
+ })(SandboxOptions = MiniBrowserProps.SandboxOptions || (MiniBrowserProps.SandboxOptions = {}));
97
+ (function (SandboxOptions) {
98
+ /**
99
+ * The default `sandbox` options, if other is not provided.
100
+ *
101
+ * See: https://www.html5rocks.com/en/tutorials/security/sandboxed-iframes/
102
+ */
103
+ SandboxOptions.DEFAULT = [
104
+ SandboxOptions['allow-same-origin'],
105
+ SandboxOptions['allow-scripts'],
106
+ SandboxOptions['allow-popups'],
107
+ SandboxOptions['allow-forms'],
108
+ SandboxOptions['allow-modals']
109
+ ];
110
+ })(SandboxOptions = MiniBrowserProps.SandboxOptions || (MiniBrowserProps.SandboxOptions = {}));
111
+ })(MiniBrowserProps || (exports.MiniBrowserProps = MiniBrowserProps = {}));
112
+ exports.MiniBrowserContentFactory = Symbol('MiniBrowserContentFactory');
113
+ let MiniBrowserContent = class MiniBrowserContent extends widget_1.BaseWidget {
114
+ constructor(props) {
115
+ super();
116
+ this.props = props;
117
+ this.submitInputEmitter = new event_1.Emitter();
118
+ this.navigateBackEmitter = new event_1.Emitter();
119
+ this.navigateForwardEmitter = new event_1.Emitter();
120
+ this.refreshEmitter = new event_1.Emitter();
121
+ this.openEmitter = new event_1.Emitter();
122
+ this.toDisposeOnGo = new disposable_1.DisposableCollection();
123
+ this.node.tabIndex = 0;
124
+ this.addClass(mini_browser_content_style_1.MiniBrowserContentStyle.MINI_BROWSER);
125
+ this.input = this.createToolbar(this.node).input;
126
+ const contentArea = this.createContentArea(this.node);
127
+ this.frame = contentArea.frame;
128
+ this.transparentOverlay = contentArea.transparentOverlay;
129
+ this.loadIndicator = contentArea.loadIndicator;
130
+ this.errorBar = contentArea.errorBar;
131
+ this.pdfContainer = contentArea.pdfContainer;
132
+ this.initialHistoryLength = history.length;
133
+ this.toDispose.pushAll([
134
+ this.submitInputEmitter,
135
+ this.navigateBackEmitter,
136
+ this.navigateForwardEmitter,
137
+ this.refreshEmitter,
138
+ this.openEmitter
139
+ ]);
140
+ }
141
+ init() {
142
+ this.toDispose.push(this.mouseTracker.onMousedown(e => {
143
+ if (this.frame.style.display !== 'none') {
144
+ this.transparentOverlay.style.display = 'block';
145
+ }
146
+ }));
147
+ this.toDispose.push(this.mouseTracker.onMouseup(e => {
148
+ if (this.frame.style.display !== 'none') {
149
+ this.transparentOverlay.style.display = 'none';
150
+ }
151
+ }));
152
+ const { startPage } = this.props;
153
+ if (startPage) {
154
+ setTimeout(() => this.go(startPage), 500);
155
+ this.listenOnContentChange(startPage);
156
+ }
157
+ }
158
+ onActivateRequest(msg) {
159
+ super.onActivateRequest(msg);
160
+ if (this.getToolbarProps() !== 'hide') {
161
+ this.input.focus();
162
+ }
163
+ else {
164
+ this.node.focus();
165
+ }
166
+ }
167
+ async listenOnContentChange(location) {
168
+ if (await this.fileService.exists(new uri_1.default(location))) {
169
+ const fileUri = new uri_1.default(location);
170
+ const watcher = this.fileService.watch(fileUri);
171
+ this.toDispose.push(watcher);
172
+ const onFileChange = (event) => {
173
+ if (event.contains(fileUri, 1 /* FileChangeType.ADDED */) || event.contains(fileUri, 0 /* FileChangeType.UPDATED */)) {
174
+ this.go(location, {
175
+ showLoadIndicator: false
176
+ });
177
+ }
178
+ };
179
+ this.toDispose.push(this.fileService.onDidFilesChange(debounce(onFileChange, 500)));
180
+ }
181
+ }
182
+ createToolbar(parent) {
183
+ const toolbar = document.createElement('div');
184
+ toolbar.classList.add(this.getToolbarProps() === 'read-only' ? mini_browser_content_style_1.MiniBrowserContentStyle.TOOLBAR_READ_ONLY : mini_browser_content_style_1.MiniBrowserContentStyle.TOOLBAR);
185
+ parent.appendChild(toolbar);
186
+ this.createPrevious(toolbar);
187
+ this.createNext(toolbar);
188
+ this.createRefresh(toolbar);
189
+ const input = this.createInput(toolbar);
190
+ input.readOnly = this.getToolbarProps() === 'read-only';
191
+ this.createOpen(toolbar);
192
+ if (this.getToolbarProps() === 'hide') {
193
+ toolbar.style.display = 'none';
194
+ }
195
+ return Object.assign(toolbar, { input });
196
+ }
197
+ getToolbarProps() {
198
+ return !this.props.startPage ? 'show' : this.props.toolbar || 'show';
199
+ }
200
+ // eslint-disable-next-line max-len
201
+ createContentArea(parent) {
202
+ const contentArea = document.createElement('div');
203
+ contentArea.classList.add(mini_browser_content_style_1.MiniBrowserContentStyle.CONTENT_AREA);
204
+ const loadIndicator = document.createElement('div');
205
+ loadIndicator.classList.add(mini_browser_content_style_1.MiniBrowserContentStyle.PRE_LOAD);
206
+ loadIndicator.style.display = 'none';
207
+ const errorBar = this.createErrorBar();
208
+ const frame = this.createIFrame();
209
+ this.submitInputEmitter.event(input => this.go(input, {
210
+ preserveFocus: false
211
+ }));
212
+ this.navigateBackEmitter.event(this.handleBack.bind(this));
213
+ this.navigateForwardEmitter.event(this.handleForward.bind(this));
214
+ this.refreshEmitter.event(this.handleRefresh.bind(this));
215
+ this.openEmitter.event(this.handleOpen.bind(this));
216
+ const transparentOverlay = document.createElement('div');
217
+ transparentOverlay.classList.add(mini_browser_content_style_1.MiniBrowserContentStyle.TRANSPARENT_OVERLAY);
218
+ transparentOverlay.style.display = 'none';
219
+ const pdfContainer = document.createElement('div');
220
+ pdfContainer.classList.add(mini_browser_content_style_1.MiniBrowserContentStyle.PDF_CONTAINER);
221
+ pdfContainer.id = `${this.id}-pdf-container`;
222
+ pdfContainer.style.display = 'none';
223
+ contentArea.appendChild(errorBar);
224
+ contentArea.appendChild(transparentOverlay);
225
+ contentArea.appendChild(pdfContainer);
226
+ contentArea.appendChild(loadIndicator);
227
+ contentArea.appendChild(frame);
228
+ parent.appendChild(contentArea);
229
+ return Object.assign(contentArea, { frame, loadIndicator, errorBar, pdfContainer, transparentOverlay });
230
+ }
231
+ createIFrame() {
232
+ const frame = document.createElement('iframe');
233
+ const sandbox = (this.props.sandbox || MiniBrowserProps.SandboxOptions.DEFAULT).map(name => MiniBrowserProps.SandboxOptions[name]);
234
+ frame.sandbox.add(...sandbox);
235
+ this.toDispose.push((0, widget_1.addEventListener)(frame, 'load', this.onFrameLoad.bind(this)));
236
+ this.toDispose.push((0, widget_1.addEventListener)(frame, 'error', this.onFrameError.bind(this)));
237
+ return frame;
238
+ }
239
+ createErrorBar() {
240
+ const errorBar = document.createElement('div');
241
+ errorBar.classList.add(mini_browser_content_style_1.MiniBrowserContentStyle.ERROR_BAR);
242
+ errorBar.style.display = 'none';
243
+ const icon = document.createElement('span');
244
+ icon.classList.add(...(0, widget_1.codiconArray)('info'));
245
+ errorBar.appendChild(icon);
246
+ const message = document.createElement('span');
247
+ errorBar.appendChild(message);
248
+ return Object.assign(errorBar, { message });
249
+ }
250
+ onFrameLoad() {
251
+ clearTimeout(this.frameLoadTimeout);
252
+ this.maybeResetBackground();
253
+ this.hideLoadIndicator();
254
+ this.hideErrorBar();
255
+ }
256
+ onFrameError() {
257
+ clearTimeout(this.frameLoadTimeout);
258
+ this.maybeResetBackground();
259
+ this.hideLoadIndicator();
260
+ this.showErrorBar('An error occurred while loading this page');
261
+ }
262
+ onFrameTimeout() {
263
+ clearTimeout(this.frameLoadTimeout);
264
+ this.maybeResetBackground();
265
+ this.hideLoadIndicator();
266
+ this.showErrorBar('Still loading...');
267
+ }
268
+ showLoadIndicator() {
269
+ this.loadIndicator.classList.remove(mini_browser_content_style_1.MiniBrowserContentStyle.FADE_OUT);
270
+ this.loadIndicator.style.display = 'block';
271
+ }
272
+ hideLoadIndicator() {
273
+ // Start the fade-out transition.
274
+ this.loadIndicator.classList.add(mini_browser_content_style_1.MiniBrowserContentStyle.FADE_OUT);
275
+ // Actually hide the load indicator after the transition is finished.
276
+ const preloadStyle = window.getComputedStyle(this.loadIndicator);
277
+ const transitionDuration = (0, browser_1.parseCssTime)(preloadStyle.transitionDuration, 0);
278
+ setTimeout(() => {
279
+ // But don't hide it if it was shown again since the transition started.
280
+ if (this.loadIndicator.classList.contains(mini_browser_content_style_1.MiniBrowserContentStyle.FADE_OUT)) {
281
+ this.loadIndicator.style.display = 'none';
282
+ this.loadIndicator.classList.remove(mini_browser_content_style_1.MiniBrowserContentStyle.FADE_OUT);
283
+ }
284
+ }, transitionDuration);
285
+ }
286
+ showErrorBar(message) {
287
+ this.errorBar.message.textContent = message;
288
+ this.errorBar.style.display = 'block';
289
+ }
290
+ hideErrorBar() {
291
+ this.errorBar.message.textContent = '';
292
+ this.errorBar.style.display = 'none';
293
+ }
294
+ maybeResetBackground() {
295
+ if (this.props.resetBackground === true) {
296
+ this.frame.style.backgroundColor = 'white';
297
+ }
298
+ }
299
+ handleBack() {
300
+ if (history.length - this.initialHistoryLength > 0) {
301
+ history.back();
302
+ }
303
+ }
304
+ handleForward() {
305
+ if (history.length > this.initialHistoryLength) {
306
+ history.forward();
307
+ }
308
+ }
309
+ handleRefresh() {
310
+ // Initial pessimism; use the location of the input.
311
+ let location = this.props.startPage;
312
+ // Use the the location from the `input`.
313
+ if (this.input && this.input.value) {
314
+ location = this.input.value;
315
+ }
316
+ try {
317
+ const { contentDocument } = this.frame;
318
+ if (contentDocument && contentDocument.location) {
319
+ location = contentDocument.location.href;
320
+ }
321
+ }
322
+ catch {
323
+ // Security exception due to CORS when trying to access the `location.href` of the content document.
324
+ }
325
+ if (location) {
326
+ this.go(location, {
327
+ preserveFocus: false
328
+ });
329
+ }
330
+ }
331
+ handleOpen() {
332
+ const location = this.frameSrc() || this.input.value;
333
+ if (location) {
334
+ this.windowService.openNewWindow(location);
335
+ }
336
+ }
337
+ createInput(parent) {
338
+ const input = document.createElement('input');
339
+ input.type = 'text';
340
+ input.spellcheck = false;
341
+ input.classList.add('theia-input');
342
+ this.toDispose.pushAll([
343
+ (0, widget_1.addEventListener)(input, 'keydown', this.handleInputChange.bind(this)),
344
+ (0, widget_1.addEventListener)(input, 'click', () => {
345
+ if (this.getToolbarProps() === 'read-only') {
346
+ this.handleOpen();
347
+ }
348
+ else {
349
+ if (input.value) {
350
+ input.select();
351
+ }
352
+ }
353
+ })
354
+ ]);
355
+ parent.appendChild(input);
356
+ return input;
357
+ }
358
+ handleInputChange(e) {
359
+ const { key } = browser_1.KeyCode.createKeyCode(e);
360
+ if (key && browser_1.Key.ENTER.keyCode === key.keyCode && this.getToolbarProps() === 'show') {
361
+ const { target } = e;
362
+ if (target instanceof HTMLInputElement) {
363
+ this.mapLocation(target.value).then(location => this.submitInputEmitter.fire(location));
364
+ }
365
+ }
366
+ }
367
+ createPrevious(parent) {
368
+ return this.onClick(this.createButton(parent, 'Show The Previous Page', mini_browser_content_style_1.MiniBrowserContentStyle.PREVIOUS), this.navigateBackEmitter);
369
+ }
370
+ createNext(parent) {
371
+ return this.onClick(this.createButton(parent, 'Show The Next Page', mini_browser_content_style_1.MiniBrowserContentStyle.NEXT), this.navigateForwardEmitter);
372
+ }
373
+ createRefresh(parent) {
374
+ return this.onClick(this.createButton(parent, 'Reload This Page', mini_browser_content_style_1.MiniBrowserContentStyle.REFRESH), this.refreshEmitter);
375
+ }
376
+ createOpen(parent) {
377
+ const button = this.onClick(this.createButton(parent, 'Open In A New Window', mini_browser_content_style_1.MiniBrowserContentStyle.OPEN), this.openEmitter);
378
+ return button;
379
+ }
380
+ createButton(parent, title, ...className) {
381
+ const button = document.createElement('div');
382
+ button.title = title;
383
+ button.classList.add(...className, mini_browser_content_style_1.MiniBrowserContentStyle.BUTTON);
384
+ parent.appendChild(button);
385
+ return button;
386
+ }
387
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
388
+ onClick(element, emitter) {
389
+ this.toDispose.push((0, widget_1.addEventListener)(element, 'click', () => {
390
+ if (!element.classList.contains(mini_browser_content_style_1.MiniBrowserContentStyle.DISABLED)) {
391
+ emitter.fire(undefined);
392
+ }
393
+ }));
394
+ return element;
395
+ }
396
+ mapLocation(location) {
397
+ return this.locationMapper.map(location);
398
+ }
399
+ setInput(value) {
400
+ if (this.input.value !== value) {
401
+ this.input.value = value;
402
+ }
403
+ }
404
+ frameSrc() {
405
+ let src = this.frame.src;
406
+ try {
407
+ const { contentWindow } = this.frame;
408
+ if (contentWindow) {
409
+ src = contentWindow.location.href;
410
+ }
411
+ }
412
+ catch {
413
+ // CORS issue. Ignored.
414
+ }
415
+ if (src === 'about:blank') {
416
+ src = '';
417
+ }
418
+ return src;
419
+ }
420
+ contentDocument() {
421
+ try {
422
+ let { contentDocument } = this.frame;
423
+ // eslint-disable-next-line no-null/no-null
424
+ if (contentDocument === null) {
425
+ const { contentWindow } = this.frame;
426
+ if (contentWindow) {
427
+ contentDocument = contentWindow.document;
428
+ }
429
+ }
430
+ return contentDocument;
431
+ }
432
+ catch {
433
+ // eslint-disable-next-line no-null/no-null
434
+ return null;
435
+ }
436
+ }
437
+ async go(location, options) {
438
+ const { showLoadIndicator, preserveFocus } = {
439
+ showLoadIndicator: true,
440
+ preserveFocus: true,
441
+ ...options
442
+ };
443
+ if (location) {
444
+ try {
445
+ this.toDisposeOnGo.dispose();
446
+ const url = await this.mapLocation(location);
447
+ this.setInput(url);
448
+ if (this.getToolbarProps() === 'read-only') {
449
+ this.input.title = `Open ${url} In A New Window`;
450
+ }
451
+ clearTimeout(this.frameLoadTimeout);
452
+ this.frameLoadTimeout = window.setTimeout(this.onFrameTimeout.bind(this), 4000);
453
+ if (showLoadIndicator) {
454
+ this.showLoadIndicator();
455
+ }
456
+ if (url.endsWith('.pdf')) {
457
+ this.pdfContainer.style.display = 'block';
458
+ this.frame.style.display = 'none';
459
+ PDFObject.embed(url, this.pdfContainer, {
460
+ // eslint-disable-next-line max-len, @typescript-eslint/quotes
461
+ fallbackLink: `<p style="padding: 0px 15px 0px 15px">Your browser does not support inline PDFs. Click on this <a href='[url]' target="_blank">link</a> to open the PDF in a new tab.</p>`
462
+ });
463
+ clearTimeout(this.frameLoadTimeout);
464
+ this.hideLoadIndicator();
465
+ if (!preserveFocus) {
466
+ this.pdfContainer.focus();
467
+ }
468
+ }
469
+ else {
470
+ this.pdfContainer.style.display = 'none';
471
+ this.frame.style.display = 'block';
472
+ this.frame.src = url;
473
+ // The load indicator will hide itself if the content of the iframe was loaded.
474
+ if (!preserveFocus) {
475
+ this.frame.addEventListener('load', () => {
476
+ const window = this.frame.contentWindow;
477
+ if (window) {
478
+ window.focus();
479
+ }
480
+ }, { once: true });
481
+ }
482
+ }
483
+ // Delegate all the `keypress` events from the `iframe` to the application.
484
+ this.toDisposeOnGo.push((0, widget_1.addEventListener)(this.frame, 'load', () => {
485
+ try {
486
+ const { contentDocument } = this.frame;
487
+ if (contentDocument) {
488
+ const keypressHandler = (e) => this.keybindings.run(e);
489
+ contentDocument.addEventListener('keypress', keypressHandler, true);
490
+ this.toDisposeOnDetach.push(disposable_1.Disposable.create(() => contentDocument.removeEventListener('keypress', keypressHandler)));
491
+ }
492
+ }
493
+ catch {
494
+ // There is not much we could do with the security exceptions due to CORS.
495
+ }
496
+ }));
497
+ }
498
+ catch (e) {
499
+ clearTimeout(this.frameLoadTimeout);
500
+ this.hideLoadIndicator();
501
+ this.showErrorBar(String(e));
502
+ console.log(e);
503
+ }
504
+ }
505
+ }
506
+ };
507
+ exports.MiniBrowserContent = MiniBrowserContent;
508
+ tslib_1.__decorate([
509
+ (0, inversify_1.inject)(logger_1.ILogger),
510
+ tslib_1.__metadata("design:type", Object)
511
+ ], MiniBrowserContent.prototype, "logger", void 0);
512
+ tslib_1.__decorate([
513
+ (0, inversify_1.inject)(window_service_1.WindowService),
514
+ tslib_1.__metadata("design:type", Object)
515
+ ], MiniBrowserContent.prototype, "windowService", void 0);
516
+ tslib_1.__decorate([
517
+ (0, inversify_1.inject)(location_mapper_service_1.LocationMapperService),
518
+ tslib_1.__metadata("design:type", location_mapper_service_1.LocationMapperService)
519
+ ], MiniBrowserContent.prototype, "locationMapper", void 0);
520
+ tslib_1.__decorate([
521
+ (0, inversify_1.inject)(keybinding_1.KeybindingRegistry),
522
+ tslib_1.__metadata("design:type", keybinding_1.KeybindingRegistry)
523
+ ], MiniBrowserContent.prototype, "keybindings", void 0);
524
+ tslib_1.__decorate([
525
+ (0, inversify_1.inject)(application_shell_mouse_tracker_1.ApplicationShellMouseTracker),
526
+ tslib_1.__metadata("design:type", application_shell_mouse_tracker_1.ApplicationShellMouseTracker)
527
+ ], MiniBrowserContent.prototype, "mouseTracker", void 0);
528
+ tslib_1.__decorate([
529
+ (0, inversify_1.inject)(file_service_1.FileService),
530
+ tslib_1.__metadata("design:type", file_service_1.FileService)
531
+ ], MiniBrowserContent.prototype, "fileService", void 0);
532
+ tslib_1.__decorate([
533
+ (0, inversify_1.postConstruct)(),
534
+ tslib_1.__metadata("design:type", Function),
535
+ tslib_1.__metadata("design:paramtypes", []),
536
+ tslib_1.__metadata("design:returntype", void 0)
537
+ ], MiniBrowserContent.prototype, "init", null);
538
+ exports.MiniBrowserContent = MiniBrowserContent = tslib_1.__decorate([
539
+ (0, inversify_1.injectable)(),
540
+ tslib_1.__param(0, (0, inversify_1.inject)(MiniBrowserProps)),
541
+ tslib_1.__metadata("design:paramtypes", [MiniBrowserProps])
542
+ ], MiniBrowserContent);
543
+ //# sourceMappingURL=mini-browser-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-browser-content.js","sourceRoot":"","sources":["../../src/browser/mini-browser-content.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,uCAAuC;AACvC,4DAAiF;AAEjF,oDAA6C;AAC7C,0DAAwD;AACxD,wDAAuD;AACvD,mEAAwE;AACxE,kFAA8E;AAC9E,qDAAqE;AACrE,kEAAqF;AACrF,mEAAoG;AACpG,uEAAkE;AAClE,mHAA6G;AAE7G,+DAAgE;AAChE,6EAAuE;AACvE,6EAAyE;AAGzE;;GAEG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAiC5B,CAAA;AAjCY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAiC5B;AAED,WAAiB,gBAAgB;IAE7B;;OAEG;IACH,IAAY,cA0DX;IA1DD,WAAY,cAAc;QAEtB;;WAEG;QACH,iEAAa,CAAA;QAEb;;WAEG;QACH,mEAAc,CAAA;QAEd;;WAEG;QACH,+EAAoB,CAAA;QAEpB;;WAEG;QACH,6EAAmB,CAAA;QAEnB;;WAEG;QACH,qEAAe,CAAA;QAEf;;WAEG;QACH,mFAAsB,CAAA;QAEtB;;WAEG;QACH,mEAAc,CAAA;QAEd;;WAEG;QACH,uFAAwB,CAAA;QAExB;;;WAGG;QACH,uGAAgC,CAAA;QAEhC;;WAEG;QACH,+EAAoB,CAAA;QAEpB;;;WAGG;QACH,0HAAyC,CAAA;IAC7C,CAAC,EA1DW,cAAc,GAAd,+BAAc,KAAd,+BAAc,QA0DzB;IAED,WAAiB,cAAc;QAE3B;;;;WAIG;QACU,sBAAO,GAAqB;YACrC,cAAc,CAAC,mBAAmB,CAAC;YACnC,cAAc,CAAC,eAAe,CAAC;YAC/B,cAAc,CAAC,cAAc,CAAC;YAC9B,cAAc,CAAC,aAAa,CAAC;YAC7B,cAAc,CAAC,cAAc,CAAC;SACjC,CAAC;IAEN,CAAC,EAfgB,cAAc,GAAd,+BAAc,KAAd,+BAAc,QAe9B;AAEL,CAAC,EAlFgB,gBAAgB,gCAAhB,gBAAgB,QAkFhC;AAEY,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAItE,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,mBAAU;IAwC9C,YAAsC,KAA0C;QAC5E,KAAK,EAAE,CAAC;QAD6C,UAAK,GAAL,KAAK,CAAkB;QApB7D,uBAAkB,GAAG,IAAI,eAAO,EAAU,CAAC;QAC3C,wBAAmB,GAAG,IAAI,eAAO,EAAQ,CAAC;QAC1C,2BAAsB,GAAG,IAAI,eAAO,EAAQ,CAAC;QAC7C,mBAAc,GAAG,IAAI,eAAO,EAAQ,CAAC;QACrC,gBAAW,GAAG,IAAI,eAAO,EAAQ,CAAC;QAclC,kBAAa,GAAG,IAAI,iCAAoB,EAAE,CAAC;QAI1D,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,oDAAuB,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,WAAW,CAAC,kBAAkB,CAAC;QACzD,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;QAC7C,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;QAC3C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACnB,IAAI,CAAC,kBAAkB;YACvB,IAAI,CAAC,mBAAmB;YACxB,IAAI,CAAC,sBAAsB;YAC3B,IAAI,CAAC,cAAc;YACnB,IAAI,CAAC,WAAW;SACnB,CAAC,CAAC;IACP,CAAC;IAGS,IAAI;QACV,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YAClD,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBACtC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YACpD,CAAC;QACL,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAChD,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBACtC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;YACnD,CAAC;QACL,CAAC,CAAC,CAAC,CAAC;QACJ,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,IAAI,SAAS,EAAE,CAAC;YACZ,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC;IACL,CAAC;IAEkB,iBAAiB,CAAC,GAAY;QAC7C,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;IACL,CAAC;IAES,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,aAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,IAAI,aAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,MAAM,YAAY,GAAG,CAAC,KAAuB,EAAE,EAAE;gBAC7C,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,+BAAuB,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,iCAAyB,EAAE,CAAC;oBACnG,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;wBACd,iBAAiB,EAAE,KAAK;qBAC3B,CAAC,CAAC;gBACP,CAAC;YACL,CAAC,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACxF,CAAC;IACL,CAAC;IAES,aAAa,CAAC,MAAmB;QACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,WAAW,CAAC,CAAC,CAAC,oDAAuB,CAAC,iBAAiB,CAAC,CAAC,CAAC,oDAAuB,CAAC,OAAO,CAAC,CAAC;QAC5I,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,WAAW,CAAC;QACxD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IAES,eAAe;QACrB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC;IACzE,CAAC;IAED,mCAAmC;IACzB,iBAAiB,CAAC,MAAmB;QAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAClD,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,oDAAuB,CAAC,YAAY,CAAC,CAAC;QAEhE,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACpD,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,oDAAuB,CAAC,QAAQ,CAAC,CAAC;QAC9D,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAErC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;YAClD,aAAa,EAAE,KAAK;SACvB,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEnD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzD,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,oDAAuB,CAAC,mBAAmB,CAAC,CAAC;QAC9E,kBAAkB,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAE1C,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnD,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,oDAAuB,CAAC,aAAa,CAAC,CAAC;QAClE,YAAY,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,gBAAgB,CAAC;QAC7C,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAEpC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAClC,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC5C,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACtC,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QACvC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE/B,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC5G,CAAC;IAES,YAAY;QAClB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QACnI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAA,yBAAgB,EAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAA,yBAAgB,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpF,OAAO,KAAK,CAAC;IACjB,CAAC;IAES,cAAc;QACpB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/C,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,oDAAuB,CAAC,SAAS,CAAC,CAAC;QAC1D,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAEhC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC,CAAC;QAC5C,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE3B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/C,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE9B,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAChD,CAAC;IAES,WAAW;QACjB,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAES,YAAY;QAClB,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,2CAA2C,CAAC,CAAC;IACnE,CAAC;IAES,cAAc;QACpB,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;IAES,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,oDAAuB,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC/C,CAAC;IAES,iBAAiB;QACvB,iCAAiC;QACjC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,oDAAuB,CAAC,QAAQ,CAAC,CAAC;QACnE,qEAAqE;QACrE,MAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjE,MAAM,kBAAkB,GAAG,IAAA,sBAAY,EAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;QAC5E,UAAU,CAAC,GAAG,EAAE;YACZ,wEAAwE;YACxE,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,oDAAuB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1E,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBAC1C,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,oDAAuB,CAAC,QAAQ,CAAC,CAAC;YAC1E,CAAC;QACL,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC3B,CAAC;IAES,YAAY,CAAC,OAAe;QAClC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1C,CAAC;IAES,YAAY;QAClB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IACzC,CAAC;IAES,oBAAoB;QAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;QAC/C,CAAC;IACL,CAAC;IAES,UAAU;QAChB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,oBAAoB,GAAG,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;IACL,CAAC;IAES,aAAa;QACnB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7C,OAAO,CAAC,OAAO,EAAE,CAAC;QACtB,CAAC;IACL,CAAC;IAES,aAAa;QACnB,oDAAoD;QACpD,IAAI,QAAQ,GAAuB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACxD,yCAAyC;QACzC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAChC,CAAC;QACD,IAAI,CAAC;YACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACvC,IAAI,eAAe,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAC;gBAC9C,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC7C,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,oGAAoG;QACxG,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;gBACd,aAAa,EAAE,KAAK;aACvB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAES,UAAU;QAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IAES,WAAW,CAAC,MAAmB;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;QACpB,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;QACzB,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACnB,IAAA,yBAAgB,EAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrE,IAAA,yBAAgB,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE;gBAClC,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,WAAW,EAAE,CAAC;oBACzC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACJ,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;wBACd,KAAK,CAAC,MAAM,EAAE,CAAC;oBACnB,CAAC;gBACL,CAAC;YACL,CAAC,CAAC;SACL,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC;IACjB,CAAC;IAES,iBAAiB,CAAC,CAAgB;QACxC,MAAM,EAAE,GAAG,EAAE,GAAG,iBAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,GAAG,IAAI,aAAG,CAAC,KAAK,CAAC,OAAO,KAAK,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;YAChF,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YACrB,IAAI,MAAM,YAAY,gBAAgB,EAAE,CAAC;gBACrC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5F,CAAC;QACL,CAAC;IACL,CAAC;IAES,cAAc,CAAC,MAAmB;QACxC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,wBAAwB,EAAE,oDAAuB,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACzI,CAAC;IAES,UAAU,CAAC,MAAmB;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,oBAAoB,EAAE,oDAAuB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACpI,CAAC;IAES,aAAa,CAAC,MAAmB;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,kBAAkB,EAAE,oDAAuB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7H,CAAC;IAES,UAAU,CAAC,MAAmB;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,sBAAsB,EAAE,oDAAuB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/H,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,YAAY,CAAC,MAAmB,EAAE,KAAa,EAAE,GAAG,SAAmB;QAC7E,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,EAAE,oDAAuB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,8DAA8D;IACpD,OAAO,CAAC,OAAoB,EAAE,OAAqB;QACzD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAA,yBAAgB,EAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;YACxD,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,oDAAuB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;QACL,CAAC,CAAC,CAAC,CAAC;QACJ,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,WAAW,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAES,QAAQ,CAAC,KAAa;QAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7B,CAAC;IACL,CAAC;IAES,QAAQ;QACd,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QACzB,IAAI,CAAC;YACD,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACrC,IAAI,aAAa,EAAE,CAAC;gBAChB,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,uBAAuB;QAC3B,CAAC;QACD,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YACxB,GAAG,GAAG,EAAE,CAAC;QACb,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAES,eAAe;QACrB,IAAI,CAAC;YACD,IAAI,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACrC,2CAA2C;YAC3C,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC3B,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;gBACrC,IAAI,aAAa,EAAE,CAAC;oBAChB,eAAe,GAAG,aAAa,CAAC,QAAQ,CAAC;gBAC7C,CAAC;YACL,CAAC;YACD,OAAO,eAAe,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACL,2CAA2C;YAC3C,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAES,KAAK,CAAC,EAAE,CAAC,QAAgB,EAAE,OAKnC;QACE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,GAAG;YACzC,iBAAiB,EAAE,IAAI;YACvB,aAAa,EAAE,IAAI;YACnB,GAAG,OAAO;SACb,CAAC;QACF,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC;gBACD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC7C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACnB,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,WAAW,EAAE,CAAC;oBACzC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,GAAG,kBAAkB,CAAC;gBACrD,CAAC;gBACD,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACpC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;gBAChF,IAAI,iBAAiB,EAAE,CAAC;oBACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC7B,CAAC;gBACD,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACvB,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;oBAC1C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;oBAClC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE;wBACpC,8DAA8D;wBAC9D,YAAY,EAAE,2KAA2K;qBAC5L,CAAC,CAAC;oBACH,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACzB,IAAI,CAAC,aAAa,EAAE,CAAC;wBACjB,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;oBAC9B,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;oBACzC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;oBACnC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;oBACrB,+EAA+E;oBAC/E,IAAI,CAAC,aAAa,EAAE,CAAC;wBACjB,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;4BACrC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;4BACxC,IAAI,MAAM,EAAE,CAAC;gCACT,MAAM,CAAC,KAAK,EAAE,CAAC;4BACnB,CAAC;wBACL,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvB,CAAC;gBACL,CAAC;gBACD,2EAA2E;gBAC3E,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAA,yBAAgB,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE;oBAC9D,IAAI,CAAC;wBACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;wBACvC,IAAI,eAAe,EAAE,CAAC;4BAClB,MAAM,eAAe,GAAG,CAAC,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BACtE,eAAe,CAAC,gBAAgB,CAAC,UAAU,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;4BACpE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,uBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,mBAAmB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;wBAC3H,CAAC;oBACL,CAAC;oBAAC,MAAM,CAAC;wBACL,0EAA0E;oBAC9E,CAAC;gBACL,CAAC,CAAC,CAAC,CAAC;YACR,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;QACL,CAAC;IACL,CAAC;CAEJ,CAAA;AAndY,gDAAkB;AAGR;IADlB,IAAA,kBAAM,EAAC,gBAAO,CAAC;;kDACmB;AAGhB;IADlB,IAAA,kBAAM,EAAC,8BAAa,CAAC;;yDAC0B;AAG7B;IADlB,IAAA,kBAAM,EAAC,+CAAqB,CAAC;sCACK,+CAAqB;0DAAC;AAGtC;IADlB,IAAA,kBAAM,EAAC,+BAAkB,CAAC;sCACK,+BAAkB;uDAAC;AAGhC;IADlB,IAAA,kBAAM,EAAC,8DAA4B,CAAC;sCACJ,8DAA4B;wDAAC;AAG3C;IADlB,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCACY,0BAAW;uDAAC;AA4ClC;IADT,IAAA,yBAAa,GAAE;;;;8CAiBf;6BA9EQ,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;IAyCI,mBAAA,IAAA,kBAAM,EAAC,gBAAgB,CAAC,CAAA;6CAA2B,gBAAgB;GAxCvE,kBAAkB,CAmd9B"}
@@ -0,0 +1,5 @@
1
+ import '../../src/browser/style/index.css';
2
+ import { ContainerModule } from '@theia/core/shared/inversify';
3
+ declare const _default: ContainerModule;
4
+ export default _default;
5
+ //# sourceMappingURL=mini-browser-frontend-module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-browser-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/mini-browser-frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,mCAAmC,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAyB/D,wBA0CG"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2018 TypeFox and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ require("../../src/browser/style/index.css");
19
+ const inversify_1 = require("@theia/core/shared/inversify");
20
+ const uri_1 = require("@theia/core/lib/common/uri");
21
+ const opener_service_1 = require("@theia/core/lib/browser/opener-service");
22
+ const widget_manager_1 = require("@theia/core/lib/browser/widget-manager");
23
+ const contribution_provider_1 = require("@theia/core/lib/common/contribution-provider");
24
+ const ws_connection_provider_1 = require("@theia/core/lib/browser/messaging/ws-connection-provider");
25
+ const frontend_application_contribution_1 = require("@theia/core/lib/browser/frontend-application-contribution");
26
+ const tab_bar_toolbar_1 = require("@theia/core/lib/browser/shell/tab-bar-toolbar");
27
+ const command_1 = require("@theia/core/lib/common/command");
28
+ const menu_1 = require("@theia/core/lib/common/menu");
29
+ const mini_browser_open_handler_1 = require("./mini-browser-open-handler");
30
+ const mini_browser_service_1 = require("../common/mini-browser-service");
31
+ const mini_browser_1 = require("./mini-browser");
32
+ const mini_browser_content_1 = require("./mini-browser-content");
33
+ const location_mapper_service_1 = require("./location-mapper-service");
34
+ const mini_browser_frontend_security_warnings_1 = require("./mini-browser-frontend-security-warnings");
35
+ exports.default = new inversify_1.ContainerModule(bind => {
36
+ bind(mini_browser_content_1.MiniBrowserContent).toSelf();
37
+ bind(mini_browser_content_1.MiniBrowserContentFactory).toFactory(context => (props) => {
38
+ const { container } = context;
39
+ const child = container.createChild();
40
+ child.bind(mini_browser_content_1.MiniBrowserProps).toConstantValue(props);
41
+ return child.get(mini_browser_content_1.MiniBrowserContent);
42
+ });
43
+ bind(mini_browser_1.MiniBrowser).toSelf();
44
+ bind(widget_manager_1.WidgetFactory).toDynamicValue(context => ({
45
+ id: mini_browser_1.MiniBrowser.ID,
46
+ async createWidget(options) {
47
+ const { container } = context;
48
+ const child = container.createChild();
49
+ const uri = new uri_1.default(options.uri);
50
+ child.bind(mini_browser_1.MiniBrowserOptions).toConstantValue({ uri });
51
+ return child.get(mini_browser_1.MiniBrowser);
52
+ }
53
+ })).inSingletonScope();
54
+ bind(mini_browser_open_handler_1.MiniBrowserOpenHandler).toSelf().inSingletonScope();
55
+ bind(opener_service_1.OpenHandler).toService(mini_browser_open_handler_1.MiniBrowserOpenHandler);
56
+ bind(frontend_application_contribution_1.FrontendApplicationContribution).toService(mini_browser_open_handler_1.MiniBrowserOpenHandler);
57
+ bind(command_1.CommandContribution).toService(mini_browser_open_handler_1.MiniBrowserOpenHandler);
58
+ bind(menu_1.MenuContribution).toService(mini_browser_open_handler_1.MiniBrowserOpenHandler);
59
+ bind(tab_bar_toolbar_1.TabBarToolbarContribution).toService(mini_browser_open_handler_1.MiniBrowserOpenHandler);
60
+ (0, contribution_provider_1.bindContributionProvider)(bind, location_mapper_service_1.LocationMapper);
61
+ bind(location_mapper_service_1.LocationMapper).to(location_mapper_service_1.FileLocationMapper).inSingletonScope();
62
+ bind(location_mapper_service_1.LocationMapper).to(location_mapper_service_1.HttpLocationMapper).inSingletonScope();
63
+ bind(location_mapper_service_1.LocationMapper).to(location_mapper_service_1.HttpsLocationMapper).inSingletonScope();
64
+ bind(location_mapper_service_1.LocationWithoutSchemeMapper).toSelf().inSingletonScope();
65
+ bind(location_mapper_service_1.LocationMapper).toService(location_mapper_service_1.LocationWithoutSchemeMapper);
66
+ bind(location_mapper_service_1.LocationMapperService).toSelf().inSingletonScope();
67
+ bind(mini_browser_service_1.MiniBrowserService).toDynamicValue(ctx => ws_connection_provider_1.WebSocketConnectionProvider.createProxy(ctx.container, mini_browser_service_1.MiniBrowserServicePath)).inSingletonScope();
68
+ bind(mini_browser_frontend_security_warnings_1.MiniBrowserFrontendSecurityWarnings).toSelf().inSingletonScope();
69
+ bind(frontend_application_contribution_1.FrontendApplicationContribution).toService(mini_browser_frontend_security_warnings_1.MiniBrowserFrontendSecurityWarnings);
70
+ });
71
+ //# sourceMappingURL=mini-browser-frontend-module.js.map