blob: 3637b196ac0add92519244fcb54b4fa191713b0b [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
{%- if use_new_js_bindings %}
'use strict';
(function() {
var mojomId = '{{module.path}}';
if (mojo.internal.isMojomLoaded(mojomId)) {
console.warn('The following mojom is loaded multiple times: ' + mojomId);
return;
}
mojo.internal.markMojomLoaded(mojomId);
// TODO(yzshen): Define these aliases to minimize the differences between the
// old/new modes. Remove them when the old mode goes away.
var bindings = mojo;
var codec = mojo.internal;
var validator = mojo.internal;
{%- for import in imports %}
var {{import.unique_name}} =
mojo.internal.exposeNamespace('{{import.module.namespace}}');
if (mojo.config.autoLoadMojomDeps) {
mojo.internal.loadMojomIfNecessary(
'{{import.module.path}}',
new URL(
'{{import.module|get_relative_path(module)}}.js',
document.currentScript.src).href);
}
{%- endfor %}
{% include "module_definition.tmpl" %}
})();
{%- else %}
define("{{module.path}}", [
{%- if module.path !=
"mojo/public/interfaces/bindings/interface_control_messages.mojom" and
module.path !=
"mojo/public/interfaces/bindings/pipe_control_messages.mojom" %}
"mojo/public/js/bindings",
{%- endif %}
"mojo/public/js/codec",
"mojo/public/js/core",
"mojo/public/js/validator",
{%- for import in imports %}
"{{import.module.path}}",
{%- endfor %}
], function(
{%- if module.path !=
"mojo/public/interfaces/bindings/interface_control_messages.mojom" and
module.path !=
"mojo/public/interfaces/bindings/pipe_control_messages.mojom" -%}
bindings, {% endif -%}
codec, core, validator
{%- for import in imports -%}
, {{import.unique_name}}
{%- endfor -%}
) {
{%- include "module_definition.tmpl" %}
return exports;
});
{%- endif %}