index.js 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307
  1. 'use strict';
  2. require('core-js/modules/es6.map');
  3. require('core-js/modules/es6.set');
  4. require('core-js/modules/es6.weak-map');
  5. require('core-js/modules/es6.weak-set');
  6. require('core-js/modules/es6.promise');
  7. require('core-js/modules/es6.symbol');
  8. require('core-js/modules/es6.object.assign');
  9. require('core-js/modules/es6.object.is');
  10. require('core-js/modules/es6.object.set-prototype-of');
  11. require('core-js/modules/es6.function.name');
  12. require('core-js/modules/es6.string.raw');
  13. require('core-js/modules/es6.string.from-code-point');
  14. require('core-js/modules/es6.string.code-point-at');
  15. require('core-js/modules/es6.string.repeat');
  16. require('core-js/modules/es6.string.starts-with');
  17. require('core-js/modules/es6.string.ends-with');
  18. require('core-js/modules/es6.string.includes');
  19. require('core-js/modules/es6.regexp.flags');
  20. require('core-js/modules/es6.regexp.match');
  21. require('core-js/modules/es6.regexp.replace');
  22. require('core-js/modules/es6.regexp.split');
  23. require('core-js/modules/es6.regexp.search');
  24. require('core-js/modules/es6.array.from');
  25. require('core-js/modules/es6.array.of');
  26. require('core-js/modules/es6.array.copy-within');
  27. require('core-js/modules/es6.array.find');
  28. require('core-js/modules/es6.array.find-index');
  29. require('core-js/modules/es6.array.fill');
  30. require('core-js/modules/es6.array.iterator');
  31. require('core-js/modules/es6.number.is-finite');
  32. require('core-js/modules/es6.number.is-integer');
  33. require('core-js/modules/es6.number.is-safe-integer');
  34. require('core-js/modules/es6.number.is-nan');
  35. require('core-js/modules/es6.number.epsilon');
  36. require('core-js/modules/es6.number.min-safe-integer');
  37. require('core-js/modules/es6.number.max-safe-integer');
  38. require('core-js/modules/es7.array.includes');
  39. require('core-js/modules/es7.object.values');
  40. require('core-js/modules/es7.object.entries');
  41. require('core-js/modules/es7.object.get-own-property-descriptors');
  42. require('core-js/modules/es7.string.pad-start');
  43. require('core-js/modules/es7.string.pad-end');
  44. require('core-js/modules/web.immediate');
  45. require('core-js/modules/web.dom.iterable');
  46. var _editors = require('./editors');
  47. var _renderers = require('./renderers');
  48. var _validators = require('./validators');
  49. var _cellTypes = require('./cellTypes');
  50. var _core = require('./core');
  51. var _core2 = _interopRequireDefault(_core);
  52. var _jquery = require('./helpers/wrappers/jquery');
  53. var _jquery2 = _interopRequireDefault(_jquery);
  54. var _eventManager = require('./eventManager');
  55. var _eventManager2 = _interopRequireDefault(_eventManager);
  56. var _pluginHooks = require('./pluginHooks');
  57. var _pluginHooks2 = _interopRequireDefault(_pluginHooks);
  58. var _ghostTable = require('./utils/ghostTable');
  59. var _ghostTable2 = _interopRequireDefault(_ghostTable);
  60. var _array = require('./helpers/array');
  61. var arrayHelpers = _interopRequireWildcard(_array);
  62. var _browser = require('./helpers/browser');
  63. var browserHelpers = _interopRequireWildcard(_browser);
  64. var _data = require('./helpers/data');
  65. var dataHelpers = _interopRequireWildcard(_data);
  66. var _date = require('./helpers/date');
  67. var dateHelpers = _interopRequireWildcard(_date);
  68. var _feature = require('./helpers/feature');
  69. var featureHelpers = _interopRequireWildcard(_feature);
  70. var _function = require('./helpers/function');
  71. var functionHelpers = _interopRequireWildcard(_function);
  72. var _mixed = require('./helpers/mixed');
  73. var mixedHelpers = _interopRequireWildcard(_mixed);
  74. var _number = require('./helpers/number');
  75. var numberHelpers = _interopRequireWildcard(_number);
  76. var _object = require('./helpers/object');
  77. var objectHelpers = _interopRequireWildcard(_object);
  78. var _setting = require('./helpers/setting');
  79. var settingHelpers = _interopRequireWildcard(_setting);
  80. var _string = require('./helpers/string');
  81. var stringHelpers = _interopRequireWildcard(_string);
  82. var _unicode = require('./helpers/unicode');
  83. var unicodeHelpers = _interopRequireWildcard(_unicode);
  84. var _element = require('./helpers/dom/element');
  85. var domHelpers = _interopRequireWildcard(_element);
  86. var _event = require('./helpers/dom/event');
  87. var domEventHelpers = _interopRequireWildcard(_event);
  88. var _index = require('./plugins/index');
  89. var plugins = _interopRequireWildcard(_index);
  90. var _plugins = require('./plugins');
  91. var _defaultSettings = require('./defaultSettings');
  92. var _defaultSettings2 = _interopRequireDefault(_defaultSettings);
  93. function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
  94. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  95. function Handsontable(rootElement, userSettings) {
  96. var instance = new _core2.default(rootElement, userSettings || {});
  97. instance.init();
  98. return instance;
  99. }
  100. (0, _jquery2.default)(Handsontable);
  101. Handsontable.Core = _core2.default;
  102. Handsontable.DefaultSettings = _defaultSettings2.default;
  103. Handsontable.EventManager = _eventManager2.default;
  104. Handsontable._getListenersCounter = _eventManager.getListenersCounter; // For MemoryLeak tests
  105. Handsontable.buildDate = __HOT_BUILD_DATE__;
  106. Handsontable.packageName = __HOT_PACKAGE_NAME__;
  107. Handsontable.version = __HOT_VERSION__;
  108. var baseVersion = __HOT_BASE_VERSION__;
  109. if (baseVersion) {
  110. Handsontable.baseVersion = baseVersion;
  111. }
  112. // Export Hooks singleton
  113. Handsontable.hooks = _pluginHooks2.default.getSingleton();
  114. // TODO: Remove this exports after rewrite tests about this module
  115. Handsontable.__GhostTable = _ghostTable2.default;
  116. //
  117. // Export all helpers to the Handsontable object
  118. var HELPERS = [arrayHelpers, browserHelpers, dataHelpers, dateHelpers, featureHelpers, functionHelpers, mixedHelpers, numberHelpers, objectHelpers, settingHelpers, stringHelpers, unicodeHelpers];
  119. var DOM = [domHelpers, domEventHelpers];
  120. Handsontable.helper = {};
  121. Handsontable.dom = {};
  122. // Fill general helpers.
  123. arrayHelpers.arrayEach(HELPERS, function (helper) {
  124. arrayHelpers.arrayEach(Object.getOwnPropertyNames(helper), function (key) {
  125. if (key.charAt(0) !== '_') {
  126. Handsontable.helper[key] = helper[key];
  127. }
  128. });
  129. });
  130. // Fill DOM helpers.
  131. arrayHelpers.arrayEach(DOM, function (helper) {
  132. arrayHelpers.arrayEach(Object.getOwnPropertyNames(helper), function (key) {
  133. if (key.charAt(0) !== '_') {
  134. Handsontable.dom[key] = helper[key];
  135. }
  136. });
  137. });
  138. // Export cell types.
  139. Handsontable.cellTypes = {};
  140. arrayHelpers.arrayEach((0, _cellTypes.getRegisteredCellTypeNames)(), function (cellTypeName) {
  141. Handsontable.cellTypes[cellTypeName] = (0, _cellTypes.getCellType)(cellTypeName);
  142. });
  143. Handsontable.cellTypes.registerCellType = _cellTypes.registerCellType;
  144. Handsontable.cellTypes.getCellType = _cellTypes.getCellType;
  145. // Export all registered editors from the Handsontable.
  146. Handsontable.editors = {};
  147. arrayHelpers.arrayEach((0, _editors.getRegisteredEditorNames)(), function (editorName) {
  148. Handsontable.editors[stringHelpers.toUpperCaseFirst(editorName) + 'Editor'] = (0, _editors.getEditor)(editorName);
  149. });
  150. Handsontable.editors.registerEditor = _editors.registerEditor;
  151. Handsontable.editors.getEditor = _editors.getEditor;
  152. // Export all registered renderers from the Handsontable.
  153. Handsontable.renderers = {};
  154. arrayHelpers.arrayEach((0, _renderers.getRegisteredRendererNames)(), function (rendererName) {
  155. var renderer = (0, _renderers.getRenderer)(rendererName);
  156. if (rendererName === 'base') {
  157. Handsontable.renderers.cellDecorator = renderer;
  158. }
  159. Handsontable.renderers[stringHelpers.toUpperCaseFirst(rendererName) + 'Renderer'] = renderer;
  160. });
  161. Handsontable.renderers.registerRenderer = _renderers.registerRenderer;
  162. Handsontable.renderers.getRenderer = _renderers.getRenderer;
  163. // Export all registered validators from the Handsontable.
  164. Handsontable.validators = {};
  165. arrayHelpers.arrayEach((0, _validators.getRegisteredValidatorNames)(), function (validatorName) {
  166. Handsontable.validators[stringHelpers.toUpperCaseFirst(validatorName) + 'Validator'] = (0, _validators.getValidator)(validatorName);
  167. });
  168. Handsontable.validators.registerValidator = _validators.registerValidator;
  169. Handsontable.validators.getValidator = _validators.getValidator;
  170. // Export all registered plugins from the Handsontable.
  171. Handsontable.plugins = {};
  172. arrayHelpers.arrayEach(Object.getOwnPropertyNames(plugins), function (pluginName) {
  173. var plugin = plugins[pluginName];
  174. if (pluginName === 'Base') {
  175. Handsontable.plugins[pluginName + 'Plugin'] = plugin;
  176. } else {
  177. Handsontable.plugins[pluginName] = plugin;
  178. }
  179. });
  180. Handsontable.plugins.registerPlugin = _plugins.registerPlugin;
  181. // Export Handsontable
  182. module.exports = Handsontable;