[Webapp Refactor] Implements Host needs update dialog as an object.
[chromium-blink-merge.git] / remoting / remoting_webapp_files.gypi
blobdf77f4743a20d3b729ebad657162a6fa9cfa0f66
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'variables': {
8     # Jscompile proto files.
9     # These provide type information for jscompile.
10     'remoting_webapp_js_proto_files': [
11       'webapp/js_proto/chrome_proto.js',
12       'webapp/js_proto/chrome_cast_proto.js',
13       'webapp/js_proto/chrome_event_proto.js',
14       'webapp/js_proto/dom_proto.js',
15       'webapp/js_proto/remoting_proto.js',
16     ],
18     #
19     # Webapp browsertest JavaScript files.
20     #
22     # Browser test files.
23     'remoting_webapp_browsertest_js_files': [
24       'webapp/browser_test/browser_test.js',
25       'webapp/browser_test/bump_scroll_browser_test.js',
26       'webapp/browser_test/cancel_pin_browser_test.js',
27       'webapp/browser_test/invalid_pin_browser_test.js',
28       'webapp/browser_test/it2me_browser_test.js',
29       'webapp/browser_test/scrollbar_browser_test.js',
30       'webapp/browser_test/timeout_waiter.js',
31       'webapp/browser_test/unauthenticated_browser_test.js',
32       'webapp/browser_test/update_pin_browser_test.js',
33     ],
34     # Browser test files.
35     'remoting_webapp_browsertest_js_mock_files': [
36       'webapp/browser_test/mock_client_plugin.js',
37       'webapp/browser_test/mock_host_list_api.js',
38       'webapp/browser_test/mock_identity.js',
39       'webapp/browser_test/mock_oauth2_api.js',
40       'webapp/browser_test/mock_session_connector.js',
41       'webapp/unittests/mock_signal_strategy.js',
42     ],
43     'remoting_webapp_browsertest_js_proto_files': [
44       'webapp/js_proto/sinon_proto.js',
45       'webapp/js_proto/test_proto.js',
46       '<@(remoting_webapp_js_proto_files)',
47     ],
48     'remoting_webapp_browsertest_all_js_files': [
49       '<@(remoting_webapp_browsertest_js_files)',
50       '<@(remoting_webapp_browsertest_js_mock_files)',
51     ],
53     #
54     # Webapp unittest JavaScript files.
55     #
57     # These product files are excluded from our JavaScript unittest
58     'remoting_webapp_unittest_exclude_js_files': [
59       # background.js is where the onLoad handler is defined, which
60       # makes it the entry point of the background page.
61       'webapp/crd/js/background.js',
62     ],
63     # The unit test cases for the webapp
64     'remoting_webapp_unittest_js_files': [
65       'webapp/unittests/apps_v2_migration_unittest.js',
66       'webapp/unittests/base_unittest.js',
67       'webapp/unittests/desktop_viewport_unittest.js',
68       'webapp/unittests/dns_blackhole_checker_unittest.js',
69       'webapp/unittests/event_hook_unittest.js',
70       'webapp/unittests/fallback_signal_strategy_unittest.js',
71       'webapp/unittests/host_table_entry_unittest.js',
72       'webapp/unittests/ipc_unittest.js',
73       'webapp/unittests/l10n_unittest.js',
74       'webapp/unittests/menu_button_unittest.js',
75       'webapp/unittests/xhr_unittest.js',
76       'webapp/unittests/xmpp_connection_unittest.js',
77       'webapp/unittests/xmpp_login_handler_unittest.js',
78       'webapp/unittests/xmpp_stream_parser_unittest.js',
79     ],
80     'remoting_webapp_unittest_js_mock_files': [
81       # Some proto files can be repurposed as simple mocks for the unittests.
82       # Note that some defs in chrome_proto are overwritten by chrome_mocks.
83       'webapp/js_proto/chrome_proto.js',
84       'webapp/unittests/chrome_mocks.js',
85       'webapp/unittests/mock_signal_strategy.js',
86       'webapp/unittests/sinon_helpers.js',
87     ],
88     # Prototypes for objects that are not mocked.
89     'remoting_webapp_unittest_js_proto_files': [
90       'webapp/js_proto/chrome_cast_proto.js',
91       'webapp/js_proto/dom_proto.js',
92       'webapp/js_proto/remoting_proto.js',
93       'webapp/js_proto/qunit_proto.js',
94       'webapp/js_proto/sinon_proto.js',
95     ],
96     'remoting_webapp_unittest_all_js_files': [
97       '<@(remoting_webapp_unittest_js_files)',
98       '<@(remoting_webapp_unittest_js_mock_files)',
99     ],
100     # All the files needed to run the unittests.
101     'remoting_webapp_unittest_all_files': [
102       'webapp/crd/html/menu_button.css',
103       '<@(remoting_webapp_unittest_all_js_files)',
104     ],
105     'remoting_webapp_unittest_template_main':
106       'webapp/crd/html/template_unittest.html',
108     #
109     # Webapp JavaScript file groups.
110     #
112     # Auth (apps v1) JavaScript files.
113     # These files aren't included directly from main.html. They are
114     # referenced from the manifest.json file (appsv1 only).
115     'remoting_webapp_js_auth_v1_files': [
116       'webapp/crd/js/cs_third_party_auth_trampoline.js',  # client to host
117       'webapp/crd/js/cs_oauth2_trampoline.js',  # Google account
118     ],
119     # Auth (client to host) JavaScript files.
120     'remoting_webapp_js_auth_client2host_files': [
121       'webapp/crd/js/third_party_host_permissions.js',
122       'webapp/crd/js/third_party_token_fetcher.js',
123     ],
124     # Auth (Google account) JavaScript files.
125     'remoting_webapp_js_auth_google_files': [
126       'webapp/base/js/auth_dialog.js',
127       'webapp/base/js/auth_init.js',
128       'webapp/crd/js/identity.js',
129       'webapp/crd/js/oauth2.js',
130       'webapp/crd/js/oauth2_api.js',
131       'webapp/crd/js/oauth2_api_impl.js',
132     ],
133     # Cast extension handler JavaScript files.
134     'remoting_webapp_js_cast_extension_files': [
135       'webapp/crd/js/cast_extension_handler.js',
136     ],
137     # Client JavaScript files.
138     'remoting_webapp_js_client_files': [
139       'webapp/crd/js/client_plugin.js',
140       'webapp/crd/js/client_plugin_impl.js',
141       'webapp/crd/js/client_plugin_host_desktop_impl.js',
142       'webapp/crd/js/client_session.js',
143       'webapp/crd/js/clipboard.js',
144       'webapp/crd/js/connected_view.js',
145       'webapp/crd/js/credentials_provider.js',
146       'webapp/crd/js/desktop_connected_view.js',
147       'webapp/crd/js/host_desktop.js',
148       'webapp/crd/js/session_connector.js',
149       'webapp/crd/js/session_connector_impl.js',
150       'webapp/crd/js/smart_reconnector.js',
151       'webapp/crd/js/video_frame_recorder.js',
152     ],
153     # Remoting core JavaScript files.
154     'remoting_webapp_js_core_files': [
155       'webapp/base/js/app_capabilities.js',
156       'webapp/base/js/application.js',
157       'webapp/base/js/base.js',
158       'webapp/base/js/ipc.js',
159       'webapp/base/js/platform.js',
160       'webapp/crd/js/apps_v2_migration.js',
161       'webapp/crd/js/error.js',
162       'webapp/crd/js/event_handlers.js',
163       'webapp/crd/js/plugin_settings.js',
164       'webapp/crd/js/remoting.js',
165       'webapp/crd/js/typecheck.js',
166       'webapp/crd/js/xhr.js',
167     ],
168     # Gnubby authentication JavaScript files.
169     'remoting_webapp_js_gnubby_auth_files': [
170       'webapp/crd/js/gnubby_auth_handler.js',
171     ],
172     # Host JavaScript files.
173     'remoting_webapp_js_host_files': [
174       'webapp/crd/js/host.js',
175       'webapp/crd/js/host_settings.js',
176     ],
177     # Files for controlling the local machine as a host.
178     # Includes both it2me and me2me files.
179     'remoting_webapp_js_host_control_files': [
180       'webapp/crd/js/host_controller.js',
181       'webapp/crd/js/host_daemon_facade.js',
182       'webapp/crd/js/host_screen.js',
183       'webapp/crd/js/host_session.js',
184       'webapp/crd/js/host_setup_dialog.js',
185       'webapp/crd/js/host_install_dialog.js',
186       'webapp/crd/js/host_installer.js',
187       'webapp/crd/js/it2me_host_facade.js',
188       'webapp/crd/js/paired_client_manager.js',
189     ],
190     # Files for displaying (in the client) info about available hosts.
191     'remoting_webapp_js_host_display_files': [
192       'webapp/crd/js/host_list.js',
193       'webapp/crd/js/host_list_api.js',
194       'webapp/crd/js/host_list_api_impl.js',
195       'webapp/crd/js/host_table_entry.js',
196       'webapp/crd/js/local_host_section.js',
197     ],
198     # Logging and stats JavaScript files.
199     'remoting_webapp_js_logging_files': [
200       'webapp/crd/js/format_iq.js',
201       'webapp/crd/js/log_to_server.js',
202       'webapp/crd/js/server_log_entry.js',
203       'webapp/crd/js/stats_accumulator.js',
204     ],
205     # Remoting signaling files.
206     'remoting_webapp_js_signaling_files': [
207       'webapp/crd/js/dns_blackhole_checker.js',
208       'webapp/crd/js/fallback_signal_strategy.js',
209       'webapp/crd/js/signal_strategy.js',
210       'webapp/crd/js/tcp_socket.js',
211       'webapp/crd/js/wcs_adapter.js',
212       'webapp/crd/js/wcs_sandbox_container.js',
213       'webapp/crd/js/xmpp_connection.js',
214       'webapp/crd/js/xmpp_login_handler.js',
215       'webapp/crd/js/xmpp_stream_parser.js',
216     ],
217     # UI JavaScript files.
218     'remoting_webapp_js_ui_files': [
219       'webapp/base/js/window_shape.js',
220       'webapp/crd/js/bump_scroller.js',
221       'webapp/crd/js/butter_bar.js',
222       'webapp/crd/js/connection_stats.js',
223       'webapp/crd/js/desktop_viewport.js',
224       'webapp/crd/js/feedback.js',
225       'webapp/crd/js/fullscreen.js',
226       'webapp/crd/js/fullscreen_v1.js',
227       'webapp/crd/js/fullscreen_v2.js',
228       'webapp/crd/js/l10n.js',
229       'webapp/crd/js/menu_button.js',
230       'webapp/crd/js/options_menu.js',
231       'webapp/crd/js/ui_mode.js',
232       'webapp/crd/js/toolbar.js',
233       'webapp/crd/js/window_frame.js',
234     ],
236     #
237     # DesktopRemoting main.html generation files.
238     #
240     'remoting_webapp_template_main':
241       '<(DEPTH)/remoting/webapp/crd/html/template_main.html',
243     # The shared JavaScript files required by main.html.
244     'remoting_webapp_shared_main_html_js_files': [
245       # Include the core files first as it is required by the other files.
246       # Otherwise, Jscompile will complain.
247       '<@(remoting_webapp_js_core_files)',
248       '<@(remoting_webapp_js_auth_client2host_files)',
249       '<@(remoting_webapp_js_auth_google_files)',
250       '<@(remoting_webapp_js_client_files)',
251       '<@(remoting_webapp_js_gnubby_auth_files)',
252       '<@(remoting_webapp_js_cast_extension_files)',
253       '<@(remoting_webapp_js_host_files)',
254       '<@(remoting_webapp_js_host_control_files)',
255       '<@(remoting_webapp_js_host_display_files)',
256       '<@(remoting_webapp_js_logging_files)',
257       '<@(remoting_webapp_js_ui_files)',
258       '<@(remoting_webapp_js_signaling_files)',
259       # Uncomment this line to include browser test files in the web app
260       # to expedite debugging or local development.
261       #'<@(remoting_webapp_browsertest_all_js_files)',
262     ],
264     # The CRD-specific JavaScript files required by main.html.
265     'remoting_webapp_crd_main_html_all_js_files': [
266       '<@(remoting_webapp_shared_main_html_js_files)',
267       'webapp/crd/js/crd_connect.js',
268       'webapp/crd/js/crd_event_handlers.js',
269       'webapp/crd/js/crd_main.js',
270       'webapp/crd/js/desktop_remoting.js',
271       'webapp/crd/js/it2me_connect_flow.js',
272       'webapp/crd/js/me2me_connect_flow.js',
273     ],
275     # These template files are used to construct main.html.
276     'remoting_webapp_template_files': [
277       'webapp/base/html/client_plugin.html',
278       'webapp/base/html/dialog_auth.html',
279       'webapp/crd/html/butter_bar.html',
280       'webapp/crd/html/dialog_client_connect_failed.html',
281       'webapp/crd/html/dialog_client_connecting.html',
282       'webapp/crd/html/dialog_client_host_needs_upgrade.html',
283       'webapp/crd/html/dialog_client_pin_prompt.html',
284       'webapp/crd/html/dialog_client_session_finished.html',
285       'webapp/crd/html/dialog_client_third_party_auth.html',
286       'webapp/crd/html/dialog_client_unconnected.html',
287       'webapp/crd/html/dialog_confirm_host_delete.html',
288       'webapp/crd/html/dialog_connection_history.html',
289       'webapp/crd/html/dialog_host.html',
290       'webapp/crd/html/dialog_host_install.html',
291       'webapp/crd/html/dialog_host_setup.html',
292       'webapp/crd/html/dialog_manage_pairings.html',
293       'webapp/crd/html/dialog_token_refresh_failed.html',
294       'webapp/crd/html/toolbar.html',
295       'webapp/crd/html/ui_header.html',
296       'webapp/crd/html/ui_it2me.html',
297       'webapp/crd/html/ui_me2me.html',
298       'webapp/crd/html/window_frame.html',
299     ],
301     #
302     # Webapp background.html generation files.
303     #
305     'remoting_webapp_template_background':
306       '<(DEPTH)/remoting/webapp/crd/html/template_background.html',
308     # These JS files are specific to the background page and are not part of
309     # the main JS files.
310     'remoting_webapp_background_html_js_files': [
311       'webapp/base/js/message_window_helper.js',
312       'webapp/base/js/message_window_manager.js',
313       'webapp/crd/js/activation_handler.js',
314       'webapp/crd/js/app_launcher.js',
315       'webapp/crd/js/background.js',
316     ],
318     # All the JavaScript files required by background.html.
319     'remoting_webapp_background_html_all_js_files': [
320       '<@(remoting_webapp_background_html_js_files)',
321       'webapp/base/js/base.js',
322       'webapp/base/js/ipc.js',
323       'webapp/crd/js/client_session.js',
324       'webapp/crd/js/error.js',
325       'webapp/crd/js/host_installer.js',
326       'webapp/crd/js/host_session.js',
327       'webapp/crd/js/identity.js',
328       'webapp/crd/js/it2me_host_facade.js',
329       'webapp/crd/js/l10n.js',
330       'webapp/crd/js/oauth2.js',
331       'webapp/crd/js/oauth2_api.js',
332       'webapp/crd/js/oauth2_api_impl.js',
333       'webapp/crd/js/plugin_settings.js',
334       'webapp/crd/js/typecheck.js',
335       'webapp/crd/js/xhr.js',
336     ],
338     #
339     # Webapp wcs_sandbox.html generation files.
340     #
342     'remoting_webapp_template_wcs_sandbox':
343       '<(DEPTH)/remoting/webapp/base/html/template_wcs_sandbox.html',
345     # These JS files are specific to the WCS sandbox page and are not part of
346     # the main JS files.
347     'remoting_webapp_wcs_sandbox_html_js_files': [
348       'webapp/crd/js/wcs.js',
349       'webapp/crd/js/wcs_loader.js',
350       'webapp/crd/js/wcs_sandbox_content.js',
351       'webapp/crd/js/xhr_proxy.js',
352     ],
354     # All the JavaScript files required by wcs_sandbox.html.
355     'remoting_webapp_wcs_sandbox_html_all_js_files': [
356       '<@(remoting_webapp_wcs_sandbox_html_js_files)',
357       'webapp/crd/js/error.js',
358       'webapp/crd/js/plugin_settings.js',
359     ],
361     #
362     # Webapp message_window.html generation files.
363     #
365     'remoting_webapp_template_message_window':
366       '<(DEPTH)/remoting/webapp/base/html/template_message_window.html',
368     # These JS files are specific to the message window page and are not part of
369     # the main JS files.
370     'remoting_webapp_message_window_html_js_files': [
371       'webapp/base/js/message_window.js',
372     ],
374     # All the JavaScript files required by message_window.html.
375     'remoting_webapp_message_window_html_all_js_files': [
376       '<@(remoting_webapp_message_window_html_js_files)',
377       'webapp/base/js/base.js',
378     ],
380     #
381     # Complete webapp JS and resource files.
382     #
384     # All the JavaScript files that are shared by webapps.
385     'remoting_webapp_shared_js_files': [
386       '<@(remoting_webapp_shared_main_html_js_files)',
387       '<@(remoting_webapp_background_html_js_files)',
388       '<@(remoting_webapp_message_window_html_js_files)',
389       '<@(remoting_webapp_wcs_sandbox_html_js_files)',
390       # JS files referenced in manifest.json.
391       '<@(remoting_webapp_js_auth_v1_files)',
392     ],
394     # All the JavaScript files required by DesktopRemoting.
395     'remoting_webapp_crd_js_files': [
396       '<@(remoting_webapp_shared_js_files)',
397       '<@(remoting_webapp_crd_main_html_all_js_files)',
398     ],
400     'remoting_webapp_info_files': [
401       'resources/chromoting16.webp',
402       'resources/chromoting48.webp',
403       'resources/chromoting128.webp',
404     ],
406     # All the resource files required by DesktopRemoting.
407     'remoting_webapp_resource_files': [
408       'resources/disclosure_arrow_down.webp',
409       'resources/disclosure_arrow_right.webp',
410       'resources/drag.webp',
411       'resources/host_setup_instructions.webp',
412       'resources/icon_close.webp',
413       'resources/icon_cross.webp',
414       'resources/icon_disconnect.webp',
415       'resources/icon_fullscreen.webp',
416       'resources/icon_help.webp',
417       'resources/icon_host.webp',
418       'resources/icon_maximize_restore.webp',
419       'resources/icon_minimize.webp',
420       'resources/icon_options.webp',
421       'resources/icon_pencil.webp',
422       'resources/icon_warning.webp',
423       'resources/infographic_my_computers.webp',
424       'resources/infographic_remote_assistance.webp',
425       'resources/plus.webp',
426       'resources/reload.webp',
427       'resources/tick.webp',
428       'webapp/base/html/connection_stats.css',
429       'webapp/base/html/main.css',
430       'webapp/base/html/message_window.css',
431       'webapp/base/resources/open_sans.css',
432       'webapp/base/resources/open_sans.woff',
433       'webapp/base/resources/spinner.gif',
434       'webapp/crd/html/butter_bar.css',
435       'webapp/crd/html/toolbar.css',
436       'webapp/crd/html/menu_button.css',
437       'webapp/crd/html/window_frame.css',
438       'webapp/crd/resources/scale-to-fit.webp',
439     ],
441     'remoting_webapp_crd_files': [
442       '<@(remoting_webapp_info_files)',
443       '<@(remoting_webapp_crd_js_files)',
444       '<@(remoting_webapp_resource_files)',
445     ],
447     # Files that contain localizable strings.
448     'desktop_remoting_webapp_localizable_files': [
449       'webapp/crd/manifest.json.jinja2',
450       '<(remoting_webapp_template_background)',
451       '<(remoting_webapp_template_main)',
452       '<(remoting_webapp_template_message_window)',
453       '<(remoting_webapp_template_wcs_sandbox)',
454       '<@(remoting_webapp_template_files)',
455       '<@(remoting_webapp_crd_js_files)',
456     ],
458   },