| OLD | NEW |
| 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 {%- if use_new_js_bindings %} | 5 {%- if js_bindings_mode == "both" or js_bindings_mode == "new" %} |
| 6 {{"new"|set_current_mode}} |
| 6 | 7 |
| 7 'use strict'; | 8 'use strict'; |
| 8 | 9 |
| 10 {%- if js_bindings_mode == "both" %} |
| 11 if ((typeof mojo !== 'undefined') && mojo.internal && mojo.config) { |
| 12 {%- endif %} |
| 13 |
| 9 (function() { | 14 (function() { |
| 10 var mojomId = '{{module.path}}'; | 15 var mojomId = '{{module.path}}'; |
| 11 if (mojo.internal.isMojomLoaded(mojomId)) { | 16 if (mojo.internal.isMojomLoaded(mojomId)) { |
| 12 console.warn('The following mojom is loaded multiple times: ' + mojomId); | 17 console.warn('The following mojom is loaded multiple times: ' + mojomId); |
| 13 return; | 18 return; |
| 14 } | 19 } |
| 15 mojo.internal.markMojomLoaded(mojomId); | 20 mojo.internal.markMojomLoaded(mojomId); |
| 16 | 21 |
| 17 // TODO(yzshen): Define these aliases to minimize the differences between the | 22 // TODO(yzshen): Define these aliases to minimize the differences between the |
| 18 // old/new modes. Remove them when the old mode goes away. | 23 // old/new modes. Remove them when the old mode goes away. |
| 19 var bindings = mojo; | 24 var bindings = mojo; |
| 20 var associatedBindings = mojo; | 25 var associatedBindings = mojo; |
| 21 var codec = mojo.internal; | 26 var codec = mojo.internal; |
| 22 var validator = mojo.internal; | 27 var validator = mojo.internal; |
| 23 | 28 |
| 29 var exports = mojo.internal.exposeNamespace('{{module.namespace}}'); |
| 30 |
| 24 {%- for import in imports %} | 31 {%- for import in imports %} |
| 25 var {{import.unique_name}} = | 32 var {{import.unique_name}} = |
| 26 mojo.internal.exposeNamespace('{{import.namespace}}'); | 33 mojo.internal.exposeNamespace('{{import.namespace}}'); |
| 27 if (mojo.config.autoLoadMojomDeps) { | 34 if (mojo.config.autoLoadMojomDeps) { |
| 28 mojo.internal.loadMojomIfNecessary( | 35 mojo.internal.loadMojomIfNecessary( |
| 29 '{{import.path}}', | 36 '{{import.path}}', |
| 30 new URL('{{import|get_relative_url(module)}}.js', | 37 new URL('{{import|get_relative_url(module)}}.js', |
| 31 document.currentScript.src).href); | 38 document.currentScript.src).href); |
| 32 } | 39 } |
| 33 {%- endfor %} | 40 {%- endfor %} |
| 34 | 41 |
| 35 {% include "module_definition.tmpl" %} | 42 {% include "module_definition.tmpl" %} |
| 36 })(); | 43 })(); |
| 37 | 44 |
| 38 {%- else %} | 45 {%- if js_bindings_mode == "both" %} |
| 46 } |
| 47 {%- endif %} |
| 48 |
| 49 {%- endif %} |
| 50 |
| 51 {%- if js_bindings_mode == "both" or js_bindings_mode == "old" %} |
| 52 {{"old"|set_current_mode}} |
| 53 |
| 54 {%- if js_bindings_mode == "both" %} |
| 55 if ((typeof mojo === 'undefined') || !mojo.internal || !mojo.config) { |
| 56 {%- endif %} |
| 39 | 57 |
| 40 define("{{module.path}}", [ | 58 define("{{module.path}}", [ |
| 41 {%- if module.path != | 59 {%- if module.path != |
| 42 "mojo/public/interfaces/bindings/interface_control_messages.mojom" and | 60 "mojo/public/interfaces/bindings/interface_control_messages.mojom" and |
| 43 module.path != | 61 module.path != |
| 44 "mojo/public/interfaces/bindings/pipe_control_messages.mojom" %} | 62 "mojo/public/interfaces/bindings/pipe_control_messages.mojom" %} |
| 45 "mojo/public/js/associated_bindings", | 63 "mojo/public/js/associated_bindings", |
| 46 "mojo/public/js/bindings", | 64 "mojo/public/js/bindings", |
| 47 {%- endif %} | 65 {%- endif %} |
| 48 "mojo/public/js/codec", | 66 "mojo/public/js/codec", |
| 49 "mojo/public/js/core", | 67 "mojo/public/js/core", |
| 50 "mojo/public/js/validator", | 68 "mojo/public/js/validator", |
| 51 {%- for import in imports %} | 69 {%- for import in imports %} |
| 52 "{{import.path}}", | 70 "{{import.path}}", |
| 53 {%- endfor %} | 71 {%- endfor %} |
| 54 ], function( | 72 ], function( |
| 55 {%- if module.path != | 73 {%- if module.path != |
| 56 "mojo/public/interfaces/bindings/interface_control_messages.mojom" and | 74 "mojo/public/interfaces/bindings/interface_control_messages.mojom" and |
| 57 module.path != | 75 module.path != |
| 58 "mojo/public/interfaces/bindings/pipe_control_messages.mojom" -%} | 76 "mojo/public/interfaces/bindings/pipe_control_messages.mojom" -%} |
| 59 associatedBindings, bindings, {% endif -%} | 77 associatedBindings, bindings, {% endif -%} |
| 60 codec, core, validator | 78 codec, core, validator |
| 61 {%- for import in imports -%} | 79 {%- for import in imports -%} |
| 62 , {{import.unique_name}} | 80 , {{import.unique_name}} |
| 63 {%- endfor -%} | 81 {%- endfor -%} |
| 64 ) { | 82 ) { |
| 83 var exports = {}; |
| 65 | 84 |
| 66 {%- include "module_definition.tmpl" %} | 85 {%- include "module_definition.tmpl" %} |
| 67 | 86 |
| 68 return exports; | 87 return exports; |
| 69 }); | 88 }); |
| 70 | 89 |
| 90 {%- if js_bindings_mode == "both" %} |
| 91 } |
| 92 {%- endif %} |
| 93 |
| 71 {%- endif %} | 94 {%- endif %} |
| OLD | NEW |