Sha256: 304b20c235eb73d29b5cfd50fd4098d40dc13f756f8928e676866de39073ddc0

Contents?: true

Size: 1.47 KB

Versions: 54

Compression:

Stored size: 1.47 KB

Contents

"use strict";
const definitions = require("../../lib/definitions");
const formatBuilderName = require("../utils/formatBuilderName");
const lowerFirst = require("../utils/lowerFirst");

module.exports = function generateBuilders() {
  let output = `// @flow
/*
 * This file is auto-generated! Do not modify it directly.
 * To re-generate run 'make build'
 */
import builder from "../builder";\n\n`;

  Object.keys(definitions.BUILDER_KEYS).forEach(type => {
    output += `export function ${type}(...args: Array<any>): Object { return builder("${type}", ...args); }
export { ${type} as ${formatBuilderName(type)} };\n`;

    // This is needed for backwards compatibility.
    // It should be removed in the next major version.
    // JSXIdentifier -> jSXIdentifier
    if (/^[A-Z]{2}/.test(type)) {
      output += `export { ${type} as ${lowerFirst(type)} }\n`;
    }
  });

  Object.keys(definitions.DEPRECATED_KEYS).forEach(type => {
    const newType = definitions.DEPRECATED_KEYS[type];
    output += `export function ${type}(...args: Array<any>): Object {
  console.trace("The node type ${type} has been renamed to ${newType}");
  return ${type}("${type}", ...args);
}
export { ${type} as ${formatBuilderName(type)} };\n`;

    // This is needed for backwards compatibility.
    // It should be removed in the next major version.
    // JSXIdentifier -> jSXIdentifier
    if (/^[A-Z]{2}/.test(type)) {
      output += `export { ${type} as ${lowerFirst(type)} }\n`;
    }
  });

  return output;
};

Version data entries

54 entries across 54 versions & 8 rubygems

Version Path
disco_app-0.18.0 test/dummy/node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.18.2 test/dummy/node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.7 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.6 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.5 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.4 node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.16.1 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.15.2 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.3 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.2 node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.18.4 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.18.1 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.12.7.pre.puma.pre.3 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.14.0 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
disco_app-0.13.6.pre.puma.pre.3 test/dummy/node_modules/@babel/preset-modules/node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.1 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-4.3.5 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-5.0.0 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-4.3.4 node_modules/@babel/types/scripts/generators/generateBuilders.js
trusty-cms-4.3.3 node_modules/@babel/types/scripts/generators/generateBuilders.js