1 # Copyright 2015 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.
7 # MM ,M9 .gP"Ya ,6"Yb. ,M""bMM `7MMpMMMb.pMMMb. .gP"Ya
8 # MMmmdM9 ,M' Yb 8) MM ,AP MM MM MM MM ,M' Yb
9 # MM YM. 8M"""""" ,pm9MM 8MI MM MM MM MM 8M""""""
10 # MM `Mb.YM. , 8M MM `Mb MM MM MM MM YM. ,
11 # .JMML. .JMM.`Mbmmd' `Moo9^Yo.`Wbmd"MML..JMML JMML JMML.`Mbmmd'
13 # Please keep this file in sync with remoting/remoting_webapp_files.gypi
14 # and remoting/app_remoting_webapp_files.gypi.
16 # Jscompile proto files.
17 # These provide type information for jscompile.
18 remoting_webapp_js_proto_files = [
19 "js_proto/chrome_proto.js",
20 "js_proto/chrome_cast_proto.js",
21 "js_proto/dom_proto.js",
22 "js_proto/remoting_proto.js",
26 # Webapp browsertest JavaScript files.
30 remoting_webapp_browsertest_js_files = [
31 "browser_test/browser_test.js",
32 "browser_test/bump_scroll_browser_test.js",
33 "browser_test/cancel_pin_browser_test.js",
34 "browser_test/invalid_pin_browser_test.js",
35 "browser_test/it2me_browser_test.js",
36 "browser_test/me2me_browser_test.js",
37 "browser_test/scrollbar_browser_test.js",
38 "browser_test/timeout_waiter.js",
39 "browser_test/unauthenticated_browser_test.js",
40 "browser_test/update_pin_browser_test.js",
44 remoting_webapp_browsertest_js_mock_files = [
45 "crd/js/mock_client_plugin.js",
46 "crd/js/mock_host_list_api.js",
47 "crd/js/mock_identity.js",
48 "crd/js/mock_oauth2_api.js",
49 "crd/js/mock_session_connector.js",
50 "crd/js/mock_signal_strategy.js",
52 remoting_webapp_browsertest_js_proto_files = [
53 "js_proto/sinon_proto.js",
54 "js_proto/test_proto.js",
55 "<@(remoting_webapp_js_proto_files)",
57 remoting_webapp_browsertest_all_js_files = [
58 "<@(remoting_webapp_browsertest_js_files)",
59 "<@(remoting_webapp_browsertest_js_mock_files)",
63 # Webapp unittest JavaScript files.
66 # These product files are excluded from our JavaScript unittest
67 remoting_webapp_unittests_exclude_js_files = [
68 # background.js is where the onLoad handler is defined, which
69 # makes it the entry point of the background page.
70 "crd/js/background.js",
73 # The unit test cases for the webapp
74 remoting_webapp_unittests_js_files = [
75 # TODO(jrw): Move spy_promise to base.
76 "unittests/spy_promise.js",
77 "unittests/spy_promise_unittest.js",
78 "base/js/base_unittest.js",
79 "base/js/base_event_hook_unittest.js",
80 "base/js/base_inherits_unittest.js",
81 "base/js/client_session_unittest.js",
82 "base/js/dns_blackhole_checker_unittest.js",
83 "base/js/error_unittest.js",
84 "base/js/fallback_signal_strategy_unittest.js",
85 "base/js/identity_unittest.js",
86 "base/js/ipc_unittest.js",
87 "base/js/l10n_unittest.js",
88 "base/js/platform_unittest.js",
89 "base/js/protocol_extension_manager_unittest.js",
90 "base/js/typecheck_unittest.js",
91 "base/js/viewport_unittest.js",
92 "base/js/window_shape_unittest.js",
93 "base/js/xhr_unittest.js",
94 "base/js/xmpp_connection_unittest.js",
95 "base/js/xmpp_login_handler_unittest.js",
96 "base/js/xmpp_stream_parser_unittest.js",
97 "crd/js/apps_v2_migration_unittest.js",
98 "crd/js/gcd_client_unittest.js",
99 "crd/js/gcd_client_with_mock_xhr_unittest.js",
100 "crd/js/host_controller_unittest.js",
101 "crd/js/host_daemon_facade_unittest.js",
102 "crd/js/host_table_entry_unittest.js",
103 "crd/js/menu_button_unittest.js",
104 "crd/js/mock_xhr_unittest.js",
106 remoting_webapp_unittests_js_mock_files = [
107 "crd/js/mock_host_daemon_facade.js",
108 "crd/js/mock_signal_strategy.js",
109 "js_proto/chrome_mocks.js",
110 "unittests/sinon_helpers.js",
111 "crd/js/mock_xhr.js",
114 # Prototypes for objects that are not mocked.
115 remoting_webapp_unittests_js_proto_files = [
116 "js_proto/chrome_cast_proto.js",
117 "js_proto/chrome_proto.js",
118 "js_proto/dom_proto.js",
119 "js_proto/remoting_proto.js",
120 "js_proto/qunit_proto.js",
121 "js_proto/sinon_proto.js",
123 remoting_webapp_unittests_all_js_files = [
124 "<@(remoting_webapp_unittests_js_files)",
125 "<@(remoting_webapp_unittests_js_mock_files)",
126 "unittests/qunit_callbacks.js",
129 # All the files needed to run the unittests.
130 remoting_webapp_unittests_all_files = [
131 "crd/html/menu_button.css",
132 "<@(remoting_webapp_unittests_all_js_files)",
134 remoting_webapp_unittests_template_main = "crd/html/template_unittests.html"
137 # Shared webapp JavaScript file groups.
140 # Auth (Google account) JavaScript files.
141 remoting_webapp_shared_js_auth_google_files = [
142 "base/js/auth_init.js",
143 "base/js/identity.js",
145 "base/js/oauth2_api.js",
146 "base/js/oauth2_api_impl.js",
149 # Client JavaScript files.
150 remoting_webapp_shared_js_client_files = [
151 "base/js/activity.js",
152 "base/js/client_plugin.js",
153 "base/js/client_plugin_host_desktop_impl.js",
154 "base/js/client_plugin_impl.js",
155 "base/js/client_session.js",
156 "base/js/client_session_factory.js",
157 "base/js/clipboard.js",
158 "base/js/connected_view.js",
159 "base/js/connection_info.js",
160 "base/js/credentials_provider.js",
161 "base/js/host_desktop.js",
162 "base/js/smart_reconnector.js",
165 # Remoting core JavaScript files.
166 remoting_webapp_shared_js_core_files = [
167 "base/js/app_capabilities.js",
168 "base/js/application.js",
171 "base/js/modal_dialogs.js",
172 "base/js/platform.js",
173 "base/js/protocol_extension_manager.js",
174 "base/js/protocol_extension.js",
176 "base/js/plugin_settings.js",
177 "base/js/suspend_detector.js",
178 "base/js/typecheck.js",
182 # Host JavaScript files.
183 remoting_webapp_shared_js_host_files = [
185 "base/js/host_settings.js",
188 # Logging and stats JavaScript files.
189 remoting_webapp_shared_js_logging_files = [
190 "base/js/format_iq.js",
191 "base/js/log_to_server.js",
192 "base/js/server_log_entry.js",
193 "base/js/stats_accumulator.js",
196 # Remoting signaling files.
197 remoting_webapp_shared_js_signaling_files = [
198 "base/js/dns_blackhole_checker.js",
199 "base/js/fallback_signal_strategy.js",
200 "base/js/signal_strategy.js",
201 "base/js/tcp_socket.js",
202 "base/js/wcs_adapter.js",
203 "base/js/wcs_sandbox_container.js",
204 "base/js/xmpp_connection.js",
205 "base/js/xmpp_login_handler.js",
206 "base/js/xmpp_stream_parser.js",
209 # UI JavaScript files.
210 remoting_webapp_shared_js_ui_files = [
211 "base/js/connection_dropped_dialog.js",
212 "base/js/connection_stats.js",
214 "base/js/ui_mode.js",
215 "base/js/viewport.js",
216 "base/js/window_shape.js",
220 # DesktopRemoting webapp JavaScript file groups.
223 # Auth (apps v1) JavaScript files.
224 # These files aren"t included directly from main.html. They are
225 # referenced from the manifest.json file (appsv1 only).
226 remoting_webapp_js_auth_v1_files = [
227 "crd/js/cs_third_party_auth_trampoline.js", # client to host
228 "crd/js/cs_oauth2_trampoline.js", # Google account
231 # Auth (client to host) JavaScript files.
232 remoting_webapp_js_auth_client2host_files = [
233 "crd/js/third_party_host_permissions.js",
234 "crd/js/third_party_token_fetcher.js",
237 # Cast extension handler JavaScript files.
238 remoting_webapp_js_cast_extension_files = [ "crd/js/cast_extension_handler.js" ]
240 # Client JavaScript files.
241 remoting_webapp_js_client_files = [
242 "crd/js/apps_v2_migration.js",
243 "crd/js/event_handlers.js",
244 "crd/js/gcd_client.js",
245 "crd/js/video_frame_recorder.js",
248 # Gnubby authentication JavaScript files.
249 remoting_webapp_js_gnubby_auth_files = [ "crd/js/gnubby_auth_handler.js" ]
251 # Files for controlling the local machine as a host.
252 # Includes both it2me and me2me files.
253 remoting_webapp_js_host_control_files = [
254 "crd/js/buffered_signal_strategy.js",
255 "crd/js/host_controller.js",
256 "crd/js/host_daemon_facade.js",
257 "crd/js/host_screen.js",
258 "crd/js/host_session.js",
259 "crd/js/host_setup_dialog.js",
260 "crd/js/host_install_dialog.js",
261 "crd/js/host_installer.js",
262 "crd/js/it2me_host_facade.js",
263 "crd/js/paired_client_manager.js",
266 # Files for displaying (in the client) info about available hosts.
267 remoting_webapp_js_host_display_files = [
268 "crd/js/host_list.js",
269 "crd/js/host_list_api.js",
270 "crd/js/host_table_entry.js",
271 "crd/js/local_host_section.js",
273 # Must come after host_list_api.js because of an issue with
274 # JSCompiler. If an implementation of an interface occurs in a
275 # file processed before the interface itself, the @override tag
276 # doesn't always work correctly.
277 "crd/js/gcd_host_list_api.js",
278 "crd/js/legacy_host_list_api.js",
281 # The CRD-specific JavaScript files required by main.html.
282 remoting_webapp_crd_js_ui_files = [
283 "crd/js/bump_scroller.js",
284 "crd/js/butter_bar.js",
285 "crd/js/crd_auth_dialog.js",
286 "crd/js/crd_event_handlers.js",
287 "crd/js/crd_experimental.js",
288 "crd/js/desktop_connected_view.js",
289 "crd/js/desktop_remoting.js",
290 "crd/js/desktop_remoting_activity.js",
291 "crd/js/desktop_viewport.js",
292 "crd/js/feedback.js",
293 "crd/js/fullscreen.js",
294 "crd/js/fullscreen_v1.js",
295 "crd/js/fullscreen_v2.js",
296 "crd/js/it2me_activity.js",
297 "crd/js/me2me_activity.js",
298 "crd/js/menu_button.js",
299 "crd/js/options_menu.js",
301 "crd/js/window_frame.js",
305 # DesktopRemoting main.html generation files.
308 remoting_webapp_template_main = "crd/html/template_main.html"
310 # The shared JavaScript files required by main.html.
311 remoting_webapp_shared_main_html_js_files =
312 # Include the core files first as it is required by the other files.
313 # Otherwise, Jscompile will complain.
314 remoting_webapp_shared_js_core_files +
315 remoting_webapp_shared_js_auth_google_files +
316 remoting_webapp_shared_js_client_files +
317 remoting_webapp_shared_js_host_files +
318 remoting_webapp_shared_js_logging_files +
319 remoting_webapp_shared_js_ui_files +
320 remoting_webapp_shared_js_signaling_files +
321 remoting_webapp_js_auth_client2host_files +
322 remoting_webapp_js_client_files + remoting_webapp_js_gnubby_auth_files +
323 remoting_webapp_js_cast_extension_files +
324 remoting_webapp_js_host_control_files +
325 remoting_webapp_js_host_display_files
327 # Uncomment this line to include browser test files in the web app
328 # to expedite debugging or local development.
329 #+ remoting_webapp_browsertest_all_js_files
331 # The CRD-specific JavaScript files required by main.html.
332 remoting_webapp_crd_main_html_all_js_files =
333 remoting_webapp_shared_main_html_js_files +
334 remoting_webapp_crd_js_ui_files + [ "crd/js/crd_main.js" ]
336 # These template files are used to construct main.html.
337 remoting_webapp_template_files = [
338 "base/html/client_plugin.html",
339 "crd/html/butter_bar.html",
340 "crd/html/dialog_auth.html",
341 "crd/html/dialog_client_connect_failed.html",
342 "crd/html/dialog_client_connecting.html",
343 "crd/html/dialog_client_host_needs_upgrade.html",
344 "crd/html/dialog_client_pin_prompt.html",
345 "crd/html/dialog_client_session_finished.html",
346 "crd/html/dialog_client_third_party_auth.html",
347 "crd/html/dialog_client_unconnected.html",
348 "crd/html/dialog_confirm_host_delete.html",
349 "crd/html/dialog_connection_history.html",
350 "crd/html/dialog_host.html",
351 "crd/html/dialog_host_install.html",
352 "crd/html/dialog_host_setup.html",
353 "crd/html/dialog_manage_pairings.html",
354 "crd/html/dialog_token_refresh_failed.html",
355 "crd/html/toolbar.html",
356 "crd/html/ui_header.html",
357 "crd/html/ui_it2me.html",
358 "crd/html/ui_me2me.html",
359 "crd/html/window_frame.html",
363 # DesktopRemoting background.html generation files.
366 remoting_webapp_template_background = "crd/html/template_background.html"
368 # These JS files are specific to the background page and are not part of
370 remoting_webapp_background_html_js_files = [
371 "base/js/message_window_helper.js",
372 "base/js/message_window_manager.js",
373 "crd/js/activation_handler.js",
374 "crd/js/app_launcher.js",
375 "crd/js/background.js",
378 # All the JavaScript files required by background.html.
379 remoting_webapp_background_html_all_js_files =
380 remoting_webapp_background_html_js_files
381 remoting_webapp_background_html_all_js_files += [
384 "base/js/identity.js",
388 "base/js/oauth2_api.js",
389 "base/js/oauth2_api_impl.js",
390 "base/js/plugin_settings.js",
391 "base/js/typecheck.js",
393 "crd/js/host_installer.js",
394 "crd/js/host_session.js",
395 "crd/js/it2me_host_facade.js",
399 # DesktopRemoting wcs_sandbox.html generation files.
402 remoting_webapp_template_wcs_sandbox = "base/html/template_wcs_sandbox.html"
404 # These JS files are specific to the WCS sandbox page and are not part of
406 remoting_webapp_wcs_sandbox_html_js_files = [
408 "crd/js/wcs_loader.js",
409 "crd/js/wcs_sandbox_content.js",
410 "crd/js/xhr_proxy.js",
413 # All the JavaScript files required by wcs_sandbox.html.
414 remoting_webapp_wcs_sandbox_html_all_js_files =
415 remoting_webapp_wcs_sandbox_html_js_files
416 remoting_webapp_wcs_sandbox_html_all_js_files += [
418 "base/js/plugin_settings.js",
422 # DesktopRemoting message_window.html generation files.
425 remoting_webapp_template_message_window =
426 "base/html/template_message_window.html"
428 # These JS files are specific to the message window page and are not part of
430 remoting_webapp_message_window_html_js_files = [ "base/js/message_window.js" ]
432 # All the JavaScript files required by message_window.html.
433 remoting_webapp_message_window_html_all_js_files =
434 remoting_webapp_message_window_html_js_files + [ "base/js/base.js" ]
437 # DesktopRemoting webapp JS and resource files.
440 # All the JavaScript files that are shared by webapps.
441 remoting_webapp_shared_js_files = remoting_webapp_shared_main_html_js_files +
442 remoting_webapp_background_html_js_files +
443 remoting_webapp_message_window_html_js_files +
444 remoting_webapp_wcs_sandbox_html_js_files +
445 # JS files referenced in manifest.json.
446 remoting_webapp_js_auth_v1_files
448 # All the JavaScript files required by DesktopRemoting.
449 remoting_webapp_crd_js_files =
450 remoting_webapp_shared_js_files + remoting_webapp_crd_main_html_all_js_files
452 remoting_webapp_info_files = [
453 "../resources/chromoting16.webp",
454 "../resources/chromoting48.webp",
455 "../resources/chromoting128.webp",
458 # All the resource files required by DesktopRemoting.
459 remoting_webapp_resource_files = [
460 "../resources/disclosure_arrow_down.webp",
461 "../resources/disclosure_arrow_right.webp",
462 "../resources/drag.webp",
463 "../resources/host_setup_instructions.webp",
464 "../resources/icon_close.webp",
465 "../resources/icon_cross.webp",
466 "../resources/icon_disconnect.webp",
467 "../resources/icon_fullscreen.webp",
468 "../resources/icon_help.webp",
469 "../resources/icon_host.webp",
470 "../resources/icon_maximize_restore.webp",
471 "../resources/icon_minimize.webp",
472 "../resources/icon_options.webp",
473 "../resources/icon_pencil.webp",
474 "../resources/icon_warning.webp",
475 "../resources/infographic_my_computers.webp",
476 "../resources/infographic_remote_assistance.webp",
477 "../resources/plus.webp",
478 "../resources/reload.webp",
479 "../resources/tick.webp",
480 "base/html/connection_stats.css",
481 "base/html/main.css",
482 "base/html/message_window.css",
483 "base/resources/open_sans.css",
484 "base/resources/open_sans.woff",
485 "base/resources/spinner.gif",
486 "crd/html/butter_bar.css",
487 "crd/html/crd_main.css",
488 "crd/html/toolbar.css",
489 "crd/html/menu_button.css",
490 "crd/html/window_frame.css",
491 "crd/resources/scale-to-fit.webp",
494 remoting_webapp_crd_files =
495 remoting_webapp_info_files + remoting_webapp_crd_js_files +
496 remoting_webapp_resource_files
498 # Files that contain localizable strings.
499 desktop_remoting_webapp_localizable_files = [
500 "webapp/crd/manifest.json.jinja2",
501 "<(remoting_webapp_template_background)",
502 "<(remoting_webapp_template_main)",
503 "<(remoting_webapp_template_message_window)",
504 "<(remoting_webapp_template_wcs_sandbox)",
505 "<@(remoting_webapp_template_files)",
506 "<@(remoting_webapp_crd_js_files)",
513 ar_shared_resource_files = [
514 "app_remoting/html/ar_dialog.css",
515 "app_remoting/html/ar_main.css",
516 "app_remoting/html/feedback_consent.css",
517 "app_remoting/html/loading_window.css",
518 "app_remoting/html/context_menu.css",
519 "../resources/drag.webp",
520 ] + remoting_webapp_resource_files
523 # AppRemoting main.html generation files.
526 # These template files are used to construct the webapp html files.
527 ar_main_template = "app_remoting/html/template_lg.html"
529 ar_main_template_files = [
530 "base/html/client_plugin.html",
531 "base/html/connection_dropped_dialog.html",
532 "app_remoting/html/context_menu.html",
533 "app_remoting/html/idle_dialog.html",
537 "app_remoting/js/application_context_menu.js",
538 "app_remoting/js/app_connected_view.js",
539 "app_remoting/js/app_remoting.js",
540 "app_remoting/js/app_remoting_activity.js",
541 "app_remoting/js/ar_auth_dialog.js",
542 "app_remoting/js/ar_main.js",
543 "app_remoting/js/context_menu_adapter.js",
544 "app_remoting/js/context_menu_chrome.js",
545 "app_remoting/js/context_menu_dom.js",
546 "app_remoting/js/drag_and_drop.js",
547 "app_remoting/js/gaia_license_manager.js",
548 "app_remoting/js/idle_detector.js",
549 "app_remoting/js/keyboard_layouts_menu.js",
550 "app_remoting/js/license_manager.js",
551 "app_remoting/js/loading_window.js",
552 "app_remoting/js/submenu_manager.js",
553 "app_remoting/js/window_activation_menu.js",
554 "base/js/application.js",
556 "base/js/message_window_helper.js",
557 "base/js/message_window_manager.js",
558 ] + remoting_webapp_shared_js_auth_google_files +
559 remoting_webapp_shared_js_client_files +
560 remoting_webapp_shared_js_core_files +
561 remoting_webapp_shared_js_host_files +
562 remoting_webapp_shared_js_logging_files +
563 remoting_webapp_shared_js_signaling_files +
564 remoting_webapp_shared_js_ui_files
567 # AppRemoting feedback_consent.html generation files.
570 ar_feedback_consent_template =
571 "app_remoting/html/template_feedback_consent.html"
573 # These JS files are specific to the feedback consent page and are not part
574 # of the main JS files.
575 ar_feedback_consent_html_js_files = [ "app_remoting/js/feedback_consent.js" ]
577 # All the JavaScript files required by feedback_consent.html.
578 ar_feedback_consent_html_all_js_files = [
579 "app_remoting/js/feedback_consent.js",
582 "base/js/identity.js",
583 "base/js/oauth2_api.js",
584 "base/js/oauth2_api_impl.js",
585 "base/js/plugin_settings.js",
591 # AppRemoting loading_window.html generation files.
594 # Variables for loading_window.html. Note that the JS files are the same as
595 # for message_window.html, and are not duplicated here.
596 ar_loading_window_template = "app_remoting/html/template_loading_window.html"
599 # AppRemoting background JS files.
600 # These files are referenced from the manifest
603 ar_background_js_files = [
604 "app_remoting/js/ar_background.js",
605 "base/js/platform.js",
609 ar_main_js_files + ar_feedback_consent_html_js_files +
610 remoting_webapp_message_window_html_js_files +
611 remoting_webapp_wcs_sandbox_html_js_files + ar_background_js_files
613 # Files that contain localizable strings.
614 app_remoting_webapp_localizable_files =
617 ar_feedback_consent_template,
618 ar_loading_window_template,
619 remoting_webapp_template_message_window,
620 remoting_webapp_template_wcs_sandbox,
621 ] + ar_main_template_files + ar_all_js_files