Your IP : 216.73.216.17


Current Path : /etc/kibana/src/optimize/
Upload File :
Current File : //etc/kibana/src/optimize/create_ui_exports_module.js

"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = _default;

/*
 * Licensed to Elasticsearch B.V. under one or more contributor
 * license agreements. See the NOTICE file distributed with
 * this work for additional information regarding copyright
 * ownership. Elasticsearch B.V. licenses this file to you under
 * the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
// We normalize all path separators to `/` in generated files
function normalizePath(path) {
  return path.replace(/[\\\/]+/g, '/');
}

function _default() {
  if (!module.id.includes('?')) {
    throw new Error('create_ui_exports_module loaded without JSON args in module.id');
  }

  const {
    type,
    modules
  } = JSON.parse(module.id.slice(module.id.indexOf('?') + 1));
  const comment = `// dynamically generated to load ${type} uiExports from plugins`;
  const requires = modules.sort((a, b) => a.localeCompare(b)).map(m => `require('${normalizePath(m)}')`).join('\n        ');
  return {
    code: `${comment}\n${requires}\n`
  };
}

module.exports = exports.default;