<commit_before>import React from 'react';
import ReactDOM from 'react-dom';
import ReactBindCore from 'mangojuice-react-core';

// React interface implementation
const reactImpl = {
  Component: React.Component,
  createElement: React.createElement,
  unmountComponentAtNode: ReactDOM.unmountComponentAtNode,
  render: ReactDOM.render
};
const createElement = ReactBindCore.createElementWrapper(reactImpl);
reactImpl.wrappedCreateElement = createElement;
const Mounter = ReactBindCore.ReactMounter(reactImpl);

// Export react with createElement overrided
const toExport = { ...React, Mounter, createElement };
module.exports = toExport;
module.exports.default = toExport;<commit_msg>fix(react): do not export taboo fields from React (createClass, PropTypes)<commit_after>import React from 'react';
import ReactDOM from 'react-dom';
import ReactBindCore from 'mangojuice-react-core';

// React interface implementation
const reactImpl = {
  Component: React.Component,
  createElement: React.createElement,
  unmountComponentAtNode: ReactDOM.unmountComponentAtNode,
  render: ReactDOM.render
};
const createElement = ReactBindCore.createElementWrapper(reactImpl);
reactImpl.wrappedCreateElement = createElement;
const Mounter = ReactBindCore.ReactMounter(reactImpl);

// Export react with createElement overrided
const toExport = { Mounter, createElement };
const blacklistProps = {
  PropTypes: 1,
  createClass: 1,
  createElement: 1,
  Mounter: 1
};
for (let k in React) {
  if (!blacklistProps[k]) {
    toExport[k] = React[k];
  }
}

module.exports = toExport;
module.exports.default = toExport;
{'fraction_non_alphanumeric': 0.0975, 'fraction_numerical': 0.0025, 'mean_word_length': 6.021929824561403, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5614061', 'n_tokens_mistral': 462, 'n_tokens_neox': 451, 'n_words': 120}