Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(364)

Side by Side Diff: remoting/webapp/base/js/base.js

Issue 877993002: Implement base.IPC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Ready for Checkin Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « remoting/remoting_webapp_files.gypi ('k') | remoting/webapp/base/js/ipc.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @fileoverview 6 * @fileoverview
7 * A module that contains basic utility components and methods for the 7 * A module that contains basic utility components and methods for the
8 * chromoting project 8 * chromoting project
9 * 9 *
10 */ 10 */
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 */ 105 */
106 base.values = function(dict) { 106 base.values = function(dict) {
107 return Object.keys(dict).map( 107 return Object.keys(dict).map(
108 /** @param {string} key */ 108 /** @param {string} key */
109 function(key) { 109 function(key) {
110 return dict[key]; 110 return dict[key];
111 }); 111 });
112 }; 112 };
113 113
114 /** 114 /**
115 * @param {*} value
116 * @return {*} a recursive copy of |value| or null if |value| is not copyable
117 * (e.g. undefined, NaN).
118 */
119 base.deepCopy = function (value) {
120 try {
121 return JSON.parse(JSON.stringify(value));
122 } catch (e) {}
123 return null;
124 };
125
126 /**
115 * @type {boolean|undefined} 127 * @type {boolean|undefined}
116 * @private 128 * @private
117 */ 129 */
118 base.isAppsV2_ = undefined; 130 base.isAppsV2_ = undefined;
119 131
120 /** 132 /**
121 * @return {boolean} True if this is a v2 app; false if it is a legacy app. 133 * @return {boolean} True if this is a v2 app; false if it is a legacy app.
122 */ 134 */
123 base.isAppsV2 = function() { 135 base.isAppsV2 = function() {
124 if (base.isAppsV2_ === undefined) { 136 if (base.isAppsV2_ === undefined) {
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after
461 * @return {Object|undefined} The decoded object, or undefined if the string 473 * @return {Object|undefined} The decoded object, or undefined if the string
462 * cannot be parsed. 474 * cannot be parsed.
463 */ 475 */
464 base.jsonParseSafe = function(jsonString) { 476 base.jsonParseSafe = function(jsonString) {
465 try { 477 try {
466 return /** @type {Object} */ (JSON.parse(jsonString)); 478 return /** @type {Object} */ (JSON.parse(jsonString));
467 } catch (err) { 479 } catch (err) {
468 return undefined; 480 return undefined;
469 } 481 }
470 } 482 }
OLDNEW
« no previous file with comments | « remoting/remoting_webapp_files.gypi ('k') | remoting/webapp/base/js/ipc.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698