bootstrap-table-sticky-header.js 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251
  1. (function (global, factory) {
  2. typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('jquery')) :
  3. typeof define === 'function' && define.amd ? define(['jquery'], factory) :
  4. (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jQuery));
  5. }(this, (function ($) { 'use strict';
  6. function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
  7. var $__default = /*#__PURE__*/_interopDefaultLegacy($);
  8. function _classCallCheck(instance, Constructor) {
  9. if (!(instance instanceof Constructor)) {
  10. throw new TypeError("Cannot call a class as a function");
  11. }
  12. }
  13. function _defineProperties(target, props) {
  14. for (var i = 0; i < props.length; i++) {
  15. var descriptor = props[i];
  16. descriptor.enumerable = descriptor.enumerable || false;
  17. descriptor.configurable = true;
  18. if ("value" in descriptor) descriptor.writable = true;
  19. Object.defineProperty(target, descriptor.key, descriptor);
  20. }
  21. }
  22. function _createClass(Constructor, protoProps, staticProps) {
  23. if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  24. if (staticProps) _defineProperties(Constructor, staticProps);
  25. return Constructor;
  26. }
  27. function _inherits(subClass, superClass) {
  28. if (typeof superClass !== "function" && superClass !== null) {
  29. throw new TypeError("Super expression must either be null or a function");
  30. }
  31. subClass.prototype = Object.create(superClass && superClass.prototype, {
  32. constructor: {
  33. value: subClass,
  34. writable: true,
  35. configurable: true
  36. }
  37. });
  38. if (superClass) _setPrototypeOf(subClass, superClass);
  39. }
  40. function _getPrototypeOf(o) {
  41. _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
  42. return o.__proto__ || Object.getPrototypeOf(o);
  43. };
  44. return _getPrototypeOf(o);
  45. }
  46. function _setPrototypeOf(o, p) {
  47. _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
  48. o.__proto__ = p;
  49. return o;
  50. };
  51. return _setPrototypeOf(o, p);
  52. }
  53. function _isNativeReflectConstruct() {
  54. if (typeof Reflect === "undefined" || !Reflect.construct) return false;
  55. if (Reflect.construct.sham) return false;
  56. if (typeof Proxy === "function") return true;
  57. try {
  58. Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
  59. return true;
  60. } catch (e) {
  61. return false;
  62. }
  63. }
  64. function _assertThisInitialized(self) {
  65. if (self === void 0) {
  66. throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  67. }
  68. return self;
  69. }
  70. function _possibleConstructorReturn(self, call) {
  71. if (call && (typeof call === "object" || typeof call === "function")) {
  72. return call;
  73. }
  74. return _assertThisInitialized(self);
  75. }
  76. function _createSuper(Derived) {
  77. var hasNativeReflectConstruct = _isNativeReflectConstruct();
  78. return function _createSuperInternal() {
  79. var Super = _getPrototypeOf(Derived),
  80. result;
  81. if (hasNativeReflectConstruct) {
  82. var NewTarget = _getPrototypeOf(this).constructor;
  83. result = Reflect.construct(Super, arguments, NewTarget);
  84. } else {
  85. result = Super.apply(this, arguments);
  86. }
  87. return _possibleConstructorReturn(this, result);
  88. };
  89. }
  90. function _superPropBase(object, property) {
  91. while (!Object.prototype.hasOwnProperty.call(object, property)) {
  92. object = _getPrototypeOf(object);
  93. if (object === null) break;
  94. }
  95. return object;
  96. }
  97. function _get(target, property, receiver) {
  98. if (typeof Reflect !== "undefined" && Reflect.get) {
  99. _get = Reflect.get;
  100. } else {
  101. _get = function _get(target, property, receiver) {
  102. var base = _superPropBase(target, property);
  103. if (!base) return;
  104. var desc = Object.getOwnPropertyDescriptor(base, property);
  105. if (desc.get) {
  106. return desc.get.call(receiver);
  107. }
  108. return desc.value;
  109. };
  110. }
  111. return _get(target, property, receiver || target);
  112. }
  113. var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
  114. function createCommonjsModule(fn, module) {
  115. return module = { exports: {} }, fn(module, module.exports), module.exports;
  116. }
  117. var check = function (it) {
  118. return it && it.Math == Math && it;
  119. };
  120. // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
  121. var global_1 =
  122. /* global globalThis -- safe */
  123. check(typeof globalThis == 'object' && globalThis) ||
  124. check(typeof window == 'object' && window) ||
  125. check(typeof self == 'object' && self) ||
  126. check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
  127. // eslint-disable-next-line no-new-func -- fallback
  128. (function () { return this; })() || Function('return this')();
  129. var fails = function (exec) {
  130. try {
  131. return !!exec();
  132. } catch (error) {
  133. return true;
  134. }
  135. };
  136. // Detect IE8's incomplete defineProperty implementation
  137. var descriptors = !fails(function () {
  138. return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
  139. });
  140. var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
  141. var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
  142. // Nashorn ~ JDK8 bug
  143. var NASHORN_BUG = getOwnPropertyDescriptor$1 && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
  144. // `Object.prototype.propertyIsEnumerable` method implementation
  145. // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
  146. var f$4 = NASHORN_BUG ? function propertyIsEnumerable(V) {
  147. var descriptor = getOwnPropertyDescriptor$1(this, V);
  148. return !!descriptor && descriptor.enumerable;
  149. } : nativePropertyIsEnumerable;
  150. var objectPropertyIsEnumerable = {
  151. f: f$4
  152. };
  153. var createPropertyDescriptor = function (bitmap, value) {
  154. return {
  155. enumerable: !(bitmap & 1),
  156. configurable: !(bitmap & 2),
  157. writable: !(bitmap & 4),
  158. value: value
  159. };
  160. };
  161. var toString = {}.toString;
  162. var classofRaw = function (it) {
  163. return toString.call(it).slice(8, -1);
  164. };
  165. var split = ''.split;
  166. // fallback for non-array-like ES3 and non-enumerable old V8 strings
  167. var indexedObject = fails(function () {
  168. // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
  169. // eslint-disable-next-line no-prototype-builtins -- safe
  170. return !Object('z').propertyIsEnumerable(0);
  171. }) ? function (it) {
  172. return classofRaw(it) == 'String' ? split.call(it, '') : Object(it);
  173. } : Object;
  174. // `RequireObjectCoercible` abstract operation
  175. // https://tc39.es/ecma262/#sec-requireobjectcoercible
  176. var requireObjectCoercible = function (it) {
  177. if (it == undefined) throw TypeError("Can't call method on " + it);
  178. return it;
  179. };
  180. // toObject with fallback for non-array-like ES3 strings
  181. var toIndexedObject = function (it) {
  182. return indexedObject(requireObjectCoercible(it));
  183. };
  184. var isObject = function (it) {
  185. return typeof it === 'object' ? it !== null : typeof it === 'function';
  186. };
  187. // `ToPrimitive` abstract operation
  188. // https://tc39.es/ecma262/#sec-toprimitive
  189. // instead of the ES6 spec version, we didn't implement @@toPrimitive case
  190. // and the second argument - flag - preferred type is a string
  191. var toPrimitive = function (input, PREFERRED_STRING) {
  192. if (!isObject(input)) return input;
  193. var fn, val;
  194. if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
  195. if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
  196. if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
  197. throw TypeError("Can't convert object to primitive value");
  198. };
  199. var hasOwnProperty = {}.hasOwnProperty;
  200. var has$1 = function (it, key) {
  201. return hasOwnProperty.call(it, key);
  202. };
  203. var document$1 = global_1.document;
  204. // typeof document.createElement is 'object' in old IE
  205. var EXISTS = isObject(document$1) && isObject(document$1.createElement);
  206. var documentCreateElement = function (it) {
  207. return EXISTS ? document$1.createElement(it) : {};
  208. };
  209. // Thank's IE8 for his funny defineProperty
  210. var ie8DomDefine = !descriptors && !fails(function () {
  211. return Object.defineProperty(documentCreateElement('div'), 'a', {
  212. get: function () { return 7; }
  213. }).a != 7;
  214. });
  215. var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
  216. // `Object.getOwnPropertyDescriptor` method
  217. // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
  218. var f$3 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
  219. O = toIndexedObject(O);
  220. P = toPrimitive(P, true);
  221. if (ie8DomDefine) try {
  222. return nativeGetOwnPropertyDescriptor(O, P);
  223. } catch (error) { /* empty */ }
  224. if (has$1(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
  225. };
  226. var objectGetOwnPropertyDescriptor = {
  227. f: f$3
  228. };
  229. var anObject = function (it) {
  230. if (!isObject(it)) {
  231. throw TypeError(String(it) + ' is not an object');
  232. } return it;
  233. };
  234. var nativeDefineProperty = Object.defineProperty;
  235. // `Object.defineProperty` method
  236. // https://tc39.es/ecma262/#sec-object.defineproperty
  237. var f$2 = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
  238. anObject(O);
  239. P = toPrimitive(P, true);
  240. anObject(Attributes);
  241. if (ie8DomDefine) try {
  242. return nativeDefineProperty(O, P, Attributes);
  243. } catch (error) { /* empty */ }
  244. if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
  245. if ('value' in Attributes) O[P] = Attributes.value;
  246. return O;
  247. };
  248. var objectDefineProperty = {
  249. f: f$2
  250. };
  251. var createNonEnumerableProperty = descriptors ? function (object, key, value) {
  252. return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
  253. } : function (object, key, value) {
  254. object[key] = value;
  255. return object;
  256. };
  257. var setGlobal = function (key, value) {
  258. try {
  259. createNonEnumerableProperty(global_1, key, value);
  260. } catch (error) {
  261. global_1[key] = value;
  262. } return value;
  263. };
  264. var SHARED = '__core-js_shared__';
  265. var store$1 = global_1[SHARED] || setGlobal(SHARED, {});
  266. var sharedStore = store$1;
  267. var functionToString = Function.toString;
  268. // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
  269. if (typeof sharedStore.inspectSource != 'function') {
  270. sharedStore.inspectSource = function (it) {
  271. return functionToString.call(it);
  272. };
  273. }
  274. var inspectSource = sharedStore.inspectSource;
  275. var WeakMap$1 = global_1.WeakMap;
  276. var nativeWeakMap = typeof WeakMap$1 === 'function' && /native code/.test(inspectSource(WeakMap$1));
  277. var shared = createCommonjsModule(function (module) {
  278. (module.exports = function (key, value) {
  279. return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
  280. })('versions', []).push({
  281. version: '3.9.1',
  282. mode: 'global',
  283. copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
  284. });
  285. });
  286. var id = 0;
  287. var postfix = Math.random();
  288. var uid = function (key) {
  289. return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
  290. };
  291. var keys = shared('keys');
  292. var sharedKey = function (key) {
  293. return keys[key] || (keys[key] = uid(key));
  294. };
  295. var hiddenKeys$1 = {};
  296. var WeakMap = global_1.WeakMap;
  297. var set, get, has;
  298. var enforce = function (it) {
  299. return has(it) ? get(it) : set(it, {});
  300. };
  301. var getterFor = function (TYPE) {
  302. return function (it) {
  303. var state;
  304. if (!isObject(it) || (state = get(it)).type !== TYPE) {
  305. throw TypeError('Incompatible receiver, ' + TYPE + ' required');
  306. } return state;
  307. };
  308. };
  309. if (nativeWeakMap) {
  310. var store = sharedStore.state || (sharedStore.state = new WeakMap());
  311. var wmget = store.get;
  312. var wmhas = store.has;
  313. var wmset = store.set;
  314. set = function (it, metadata) {
  315. metadata.facade = it;
  316. wmset.call(store, it, metadata);
  317. return metadata;
  318. };
  319. get = function (it) {
  320. return wmget.call(store, it) || {};
  321. };
  322. has = function (it) {
  323. return wmhas.call(store, it);
  324. };
  325. } else {
  326. var STATE = sharedKey('state');
  327. hiddenKeys$1[STATE] = true;
  328. set = function (it, metadata) {
  329. metadata.facade = it;
  330. createNonEnumerableProperty(it, STATE, metadata);
  331. return metadata;
  332. };
  333. get = function (it) {
  334. return has$1(it, STATE) ? it[STATE] : {};
  335. };
  336. has = function (it) {
  337. return has$1(it, STATE);
  338. };
  339. }
  340. var internalState = {
  341. set: set,
  342. get: get,
  343. has: has,
  344. enforce: enforce,
  345. getterFor: getterFor
  346. };
  347. var redefine = createCommonjsModule(function (module) {
  348. var getInternalState = internalState.get;
  349. var enforceInternalState = internalState.enforce;
  350. var TEMPLATE = String(String).split('String');
  351. (module.exports = function (O, key, value, options) {
  352. var unsafe = options ? !!options.unsafe : false;
  353. var simple = options ? !!options.enumerable : false;
  354. var noTargetGet = options ? !!options.noTargetGet : false;
  355. var state;
  356. if (typeof value == 'function') {
  357. if (typeof key == 'string' && !has$1(value, 'name')) {
  358. createNonEnumerableProperty(value, 'name', key);
  359. }
  360. state = enforceInternalState(value);
  361. if (!state.source) {
  362. state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
  363. }
  364. }
  365. if (O === global_1) {
  366. if (simple) O[key] = value;
  367. else setGlobal(key, value);
  368. return;
  369. } else if (!unsafe) {
  370. delete O[key];
  371. } else if (!noTargetGet && O[key]) {
  372. simple = true;
  373. }
  374. if (simple) O[key] = value;
  375. else createNonEnumerableProperty(O, key, value);
  376. // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
  377. })(Function.prototype, 'toString', function toString() {
  378. return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
  379. });
  380. });
  381. var path = global_1;
  382. var aFunction$1 = function (variable) {
  383. return typeof variable == 'function' ? variable : undefined;
  384. };
  385. var getBuiltIn = function (namespace, method) {
  386. return arguments.length < 2 ? aFunction$1(path[namespace]) || aFunction$1(global_1[namespace])
  387. : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];
  388. };
  389. var ceil = Math.ceil;
  390. var floor = Math.floor;
  391. // `ToInteger` abstract operation
  392. // https://tc39.es/ecma262/#sec-tointeger
  393. var toInteger = function (argument) {
  394. return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
  395. };
  396. var min$1 = Math.min;
  397. // `ToLength` abstract operation
  398. // https://tc39.es/ecma262/#sec-tolength
  399. var toLength = function (argument) {
  400. return argument > 0 ? min$1(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
  401. };
  402. var max = Math.max;
  403. var min = Math.min;
  404. // Helper for a popular repeating case of the spec:
  405. // Let integer be ? ToInteger(index).
  406. // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
  407. var toAbsoluteIndex = function (index, length) {
  408. var integer = toInteger(index);
  409. return integer < 0 ? max(integer + length, 0) : min(integer, length);
  410. };
  411. // `Array.prototype.{ indexOf, includes }` methods implementation
  412. var createMethod$1 = function (IS_INCLUDES) {
  413. return function ($this, el, fromIndex) {
  414. var O = toIndexedObject($this);
  415. var length = toLength(O.length);
  416. var index = toAbsoluteIndex(fromIndex, length);
  417. var value;
  418. // Array#includes uses SameValueZero equality algorithm
  419. // eslint-disable-next-line no-self-compare -- NaN check
  420. if (IS_INCLUDES && el != el) while (length > index) {
  421. value = O[index++];
  422. // eslint-disable-next-line no-self-compare -- NaN check
  423. if (value != value) return true;
  424. // Array#indexOf ignores holes, Array#includes - not
  425. } else for (;length > index; index++) {
  426. if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
  427. } return !IS_INCLUDES && -1;
  428. };
  429. };
  430. var arrayIncludes = {
  431. // `Array.prototype.includes` method
  432. // https://tc39.es/ecma262/#sec-array.prototype.includes
  433. includes: createMethod$1(true),
  434. // `Array.prototype.indexOf` method
  435. // https://tc39.es/ecma262/#sec-array.prototype.indexof
  436. indexOf: createMethod$1(false)
  437. };
  438. var indexOf = arrayIncludes.indexOf;
  439. var objectKeysInternal = function (object, names) {
  440. var O = toIndexedObject(object);
  441. var i = 0;
  442. var result = [];
  443. var key;
  444. for (key in O) !has$1(hiddenKeys$1, key) && has$1(O, key) && result.push(key);
  445. // Don't enum bug & hidden keys
  446. while (names.length > i) if (has$1(O, key = names[i++])) {
  447. ~indexOf(result, key) || result.push(key);
  448. }
  449. return result;
  450. };
  451. // IE8- don't enum bug keys
  452. var enumBugKeys = [
  453. 'constructor',
  454. 'hasOwnProperty',
  455. 'isPrototypeOf',
  456. 'propertyIsEnumerable',
  457. 'toLocaleString',
  458. 'toString',
  459. 'valueOf'
  460. ];
  461. var hiddenKeys = enumBugKeys.concat('length', 'prototype');
  462. // `Object.getOwnPropertyNames` method
  463. // https://tc39.es/ecma262/#sec-object.getownpropertynames
  464. var f$1 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  465. return objectKeysInternal(O, hiddenKeys);
  466. };
  467. var objectGetOwnPropertyNames = {
  468. f: f$1
  469. };
  470. var f = Object.getOwnPropertySymbols;
  471. var objectGetOwnPropertySymbols = {
  472. f: f
  473. };
  474. // all object keys, includes non-enumerable and symbols
  475. var ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
  476. var keys = objectGetOwnPropertyNames.f(anObject(it));
  477. var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
  478. return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
  479. };
  480. var copyConstructorProperties = function (target, source) {
  481. var keys = ownKeys(source);
  482. var defineProperty = objectDefineProperty.f;
  483. var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
  484. for (var i = 0; i < keys.length; i++) {
  485. var key = keys[i];
  486. if (!has$1(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
  487. }
  488. };
  489. var replacement = /#|\.prototype\./;
  490. var isForced = function (feature, detection) {
  491. var value = data[normalize(feature)];
  492. return value == POLYFILL ? true
  493. : value == NATIVE ? false
  494. : typeof detection == 'function' ? fails(detection)
  495. : !!detection;
  496. };
  497. var normalize = isForced.normalize = function (string) {
  498. return String(string).replace(replacement, '.').toLowerCase();
  499. };
  500. var data = isForced.data = {};
  501. var NATIVE = isForced.NATIVE = 'N';
  502. var POLYFILL = isForced.POLYFILL = 'P';
  503. var isForced_1 = isForced;
  504. var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
  505. /*
  506. options.target - name of the target object
  507. options.global - target is the global object
  508. options.stat - export as static methods of target
  509. options.proto - export as prototype methods of target
  510. options.real - real prototype method for the `pure` version
  511. options.forced - export even if the native feature is available
  512. options.bind - bind methods to the target, required for the `pure` version
  513. options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
  514. options.unsafe - use the simple assignment of property instead of delete + defineProperty
  515. options.sham - add a flag to not completely full polyfills
  516. options.enumerable - export as enumerable property
  517. options.noTargetGet - prevent calling a getter on target
  518. */
  519. var _export = function (options, source) {
  520. var TARGET = options.target;
  521. var GLOBAL = options.global;
  522. var STATIC = options.stat;
  523. var FORCED, target, key, targetProperty, sourceProperty, descriptor;
  524. if (GLOBAL) {
  525. target = global_1;
  526. } else if (STATIC) {
  527. target = global_1[TARGET] || setGlobal(TARGET, {});
  528. } else {
  529. target = (global_1[TARGET] || {}).prototype;
  530. }
  531. if (target) for (key in source) {
  532. sourceProperty = source[key];
  533. if (options.noTargetGet) {
  534. descriptor = getOwnPropertyDescriptor(target, key);
  535. targetProperty = descriptor && descriptor.value;
  536. } else targetProperty = target[key];
  537. FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
  538. // contained in target
  539. if (!FORCED && targetProperty !== undefined) {
  540. if (typeof sourceProperty === typeof targetProperty) continue;
  541. copyConstructorProperties(sourceProperty, targetProperty);
  542. }
  543. // add a flag to not completely full polyfills
  544. if (options.sham || (targetProperty && targetProperty.sham)) {
  545. createNonEnumerableProperty(sourceProperty, 'sham', true);
  546. }
  547. // extend global
  548. redefine(target, key, sourceProperty, options);
  549. }
  550. };
  551. // `IsArray` abstract operation
  552. // https://tc39.es/ecma262/#sec-isarray
  553. var isArray = Array.isArray || function isArray(arg) {
  554. return classofRaw(arg) == 'Array';
  555. };
  556. // `ToObject` abstract operation
  557. // https://tc39.es/ecma262/#sec-toobject
  558. var toObject = function (argument) {
  559. return Object(requireObjectCoercible(argument));
  560. };
  561. var createProperty = function (object, key, value) {
  562. var propertyKey = toPrimitive(key);
  563. if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
  564. else object[propertyKey] = value;
  565. };
  566. var engineIsNode = classofRaw(global_1.process) == 'process';
  567. var engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';
  568. var process = global_1.process;
  569. var versions = process && process.versions;
  570. var v8 = versions && versions.v8;
  571. var match, version;
  572. if (v8) {
  573. match = v8.split('.');
  574. version = match[0] + match[1];
  575. } else if (engineUserAgent) {
  576. match = engineUserAgent.match(/Edge\/(\d+)/);
  577. if (!match || match[1] >= 74) {
  578. match = engineUserAgent.match(/Chrome\/(\d+)/);
  579. if (match) version = match[1];
  580. }
  581. }
  582. var engineV8Version = version && +version;
  583. var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
  584. /* global Symbol -- required for testing */
  585. return !Symbol.sham &&
  586. // Chrome 38 Symbol has incorrect toString conversion
  587. // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
  588. (engineIsNode ? engineV8Version === 38 : engineV8Version > 37 && engineV8Version < 41);
  589. });
  590. var useSymbolAsUid = nativeSymbol
  591. /* global Symbol -- safe */
  592. && !Symbol.sham
  593. && typeof Symbol.iterator == 'symbol';
  594. var WellKnownSymbolsStore = shared('wks');
  595. var Symbol$1 = global_1.Symbol;
  596. var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;
  597. var wellKnownSymbol = function (name) {
  598. if (!has$1(WellKnownSymbolsStore, name) || !(nativeSymbol || typeof WellKnownSymbolsStore[name] == 'string')) {
  599. if (nativeSymbol && has$1(Symbol$1, name)) {
  600. WellKnownSymbolsStore[name] = Symbol$1[name];
  601. } else {
  602. WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
  603. }
  604. } return WellKnownSymbolsStore[name];
  605. };
  606. var SPECIES$1 = wellKnownSymbol('species');
  607. // `ArraySpeciesCreate` abstract operation
  608. // https://tc39.es/ecma262/#sec-arrayspeciescreate
  609. var arraySpeciesCreate = function (originalArray, length) {
  610. var C;
  611. if (isArray(originalArray)) {
  612. C = originalArray.constructor;
  613. // cross-realm fallback
  614. if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
  615. else if (isObject(C)) {
  616. C = C[SPECIES$1];
  617. if (C === null) C = undefined;
  618. }
  619. } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
  620. };
  621. var SPECIES = wellKnownSymbol('species');
  622. var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
  623. // We can't use this feature detection in V8 since it causes
  624. // deoptimization and serious performance degradation
  625. // https://github.com/zloirock/core-js/issues/677
  626. return engineV8Version >= 51 || !fails(function () {
  627. var array = [];
  628. var constructor = array.constructor = {};
  629. constructor[SPECIES] = function () {
  630. return { foo: 1 };
  631. };
  632. return array[METHOD_NAME](Boolean).foo !== 1;
  633. });
  634. };
  635. var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
  636. var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
  637. var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
  638. // We can't use this feature detection in V8 since it causes
  639. // deoptimization and serious performance degradation
  640. // https://github.com/zloirock/core-js/issues/679
  641. var IS_CONCAT_SPREADABLE_SUPPORT = engineV8Version >= 51 || !fails(function () {
  642. var array = [];
  643. array[IS_CONCAT_SPREADABLE] = false;
  644. return array.concat()[0] !== array;
  645. });
  646. var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
  647. var isConcatSpreadable = function (O) {
  648. if (!isObject(O)) return false;
  649. var spreadable = O[IS_CONCAT_SPREADABLE];
  650. return spreadable !== undefined ? !!spreadable : isArray(O);
  651. };
  652. var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
  653. // `Array.prototype.concat` method
  654. // https://tc39.es/ecma262/#sec-array.prototype.concat
  655. // with adding support of @@isConcatSpreadable and @@species
  656. _export({ target: 'Array', proto: true, forced: FORCED }, {
  657. // eslint-disable-next-line no-unused-vars -- required for `.length`
  658. concat: function concat(arg) {
  659. var O = toObject(this);
  660. var A = arraySpeciesCreate(O, 0);
  661. var n = 0;
  662. var i, k, length, len, E;
  663. for (i = -1, length = arguments.length; i < length; i++) {
  664. E = i === -1 ? O : arguments[i];
  665. if (isConcatSpreadable(E)) {
  666. len = toLength(E.length);
  667. if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
  668. for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
  669. } else {
  670. if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
  671. createProperty(A, n++, E);
  672. }
  673. }
  674. A.length = n;
  675. return A;
  676. }
  677. });
  678. var aFunction = function (it) {
  679. if (typeof it != 'function') {
  680. throw TypeError(String(it) + ' is not a function');
  681. } return it;
  682. };
  683. // optional / simple context binding
  684. var functionBindContext = function (fn, that, length) {
  685. aFunction(fn);
  686. if (that === undefined) return fn;
  687. switch (length) {
  688. case 0: return function () {
  689. return fn.call(that);
  690. };
  691. case 1: return function (a) {
  692. return fn.call(that, a);
  693. };
  694. case 2: return function (a, b) {
  695. return fn.call(that, a, b);
  696. };
  697. case 3: return function (a, b, c) {
  698. return fn.call(that, a, b, c);
  699. };
  700. }
  701. return function (/* ...args */) {
  702. return fn.apply(that, arguments);
  703. };
  704. };
  705. var push = [].push;
  706. // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
  707. var createMethod = function (TYPE) {
  708. var IS_MAP = TYPE == 1;
  709. var IS_FILTER = TYPE == 2;
  710. var IS_SOME = TYPE == 3;
  711. var IS_EVERY = TYPE == 4;
  712. var IS_FIND_INDEX = TYPE == 6;
  713. var IS_FILTER_OUT = TYPE == 7;
  714. var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  715. return function ($this, callbackfn, that, specificCreate) {
  716. var O = toObject($this);
  717. var self = indexedObject(O);
  718. var boundFunction = functionBindContext(callbackfn, that, 3);
  719. var length = toLength(self.length);
  720. var index = 0;
  721. var create = specificCreate || arraySpeciesCreate;
  722. var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
  723. var value, result;
  724. for (;length > index; index++) if (NO_HOLES || index in self) {
  725. value = self[index];
  726. result = boundFunction(value, index, O);
  727. if (TYPE) {
  728. if (IS_MAP) target[index] = result; // map
  729. else if (result) switch (TYPE) {
  730. case 3: return true; // some
  731. case 5: return value; // find
  732. case 6: return index; // findIndex
  733. case 2: push.call(target, value); // filter
  734. } else switch (TYPE) {
  735. case 4: return false; // every
  736. case 7: push.call(target, value); // filterOut
  737. }
  738. }
  739. }
  740. return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
  741. };
  742. };
  743. var arrayIteration = {
  744. // `Array.prototype.forEach` method
  745. // https://tc39.es/ecma262/#sec-array.prototype.foreach
  746. forEach: createMethod(0),
  747. // `Array.prototype.map` method
  748. // https://tc39.es/ecma262/#sec-array.prototype.map
  749. map: createMethod(1),
  750. // `Array.prototype.filter` method
  751. // https://tc39.es/ecma262/#sec-array.prototype.filter
  752. filter: createMethod(2),
  753. // `Array.prototype.some` method
  754. // https://tc39.es/ecma262/#sec-array.prototype.some
  755. some: createMethod(3),
  756. // `Array.prototype.every` method
  757. // https://tc39.es/ecma262/#sec-array.prototype.every
  758. every: createMethod(4),
  759. // `Array.prototype.find` method
  760. // https://tc39.es/ecma262/#sec-array.prototype.find
  761. find: createMethod(5),
  762. // `Array.prototype.findIndex` method
  763. // https://tc39.es/ecma262/#sec-array.prototype.findIndex
  764. findIndex: createMethod(6),
  765. // `Array.prototype.filterOut` method
  766. // https://github.com/tc39/proposal-array-filtering
  767. filterOut: createMethod(7)
  768. };
  769. // `Object.keys` method
  770. // https://tc39.es/ecma262/#sec-object.keys
  771. var objectKeys = Object.keys || function keys(O) {
  772. return objectKeysInternal(O, enumBugKeys);
  773. };
  774. // `Object.defineProperties` method
  775. // https://tc39.es/ecma262/#sec-object.defineproperties
  776. var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
  777. anObject(O);
  778. var keys = objectKeys(Properties);
  779. var length = keys.length;
  780. var index = 0;
  781. var key;
  782. while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
  783. return O;
  784. };
  785. var html = getBuiltIn('document', 'documentElement');
  786. var GT = '>';
  787. var LT = '<';
  788. var PROTOTYPE = 'prototype';
  789. var SCRIPT = 'script';
  790. var IE_PROTO = sharedKey('IE_PROTO');
  791. var EmptyConstructor = function () { /* empty */ };
  792. var scriptTag = function (content) {
  793. return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
  794. };
  795. // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
  796. var NullProtoObjectViaActiveX = function (activeXDocument) {
  797. activeXDocument.write(scriptTag(''));
  798. activeXDocument.close();
  799. var temp = activeXDocument.parentWindow.Object;
  800. activeXDocument = null; // avoid memory leak
  801. return temp;
  802. };
  803. // Create object with fake `null` prototype: use iframe Object with cleared prototype
  804. var NullProtoObjectViaIFrame = function () {
  805. // Thrash, waste and sodomy: IE GC bug
  806. var iframe = documentCreateElement('iframe');
  807. var JS = 'java' + SCRIPT + ':';
  808. var iframeDocument;
  809. iframe.style.display = 'none';
  810. html.appendChild(iframe);
  811. // https://github.com/zloirock/core-js/issues/475
  812. iframe.src = String(JS);
  813. iframeDocument = iframe.contentWindow.document;
  814. iframeDocument.open();
  815. iframeDocument.write(scriptTag('document.F=Object'));
  816. iframeDocument.close();
  817. return iframeDocument.F;
  818. };
  819. // Check for document.domain and active x support
  820. // No need to use active x approach when document.domain is not set
  821. // see https://github.com/es-shims/es5-shim/issues/150
  822. // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
  823. // avoid IE GC bug
  824. var activeXDocument;
  825. var NullProtoObject = function () {
  826. try {
  827. /* global ActiveXObject -- old IE */
  828. activeXDocument = document.domain && new ActiveXObject('htmlfile');
  829. } catch (error) { /* ignore */ }
  830. NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
  831. var length = enumBugKeys.length;
  832. while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
  833. return NullProtoObject();
  834. };
  835. hiddenKeys$1[IE_PROTO] = true;
  836. // `Object.create` method
  837. // https://tc39.es/ecma262/#sec-object.create
  838. var objectCreate = Object.create || function create(O, Properties) {
  839. var result;
  840. if (O !== null) {
  841. EmptyConstructor[PROTOTYPE] = anObject(O);
  842. result = new EmptyConstructor();
  843. EmptyConstructor[PROTOTYPE] = null;
  844. // add "__proto__" for Object.getPrototypeOf polyfill
  845. result[IE_PROTO] = O;
  846. } else result = NullProtoObject();
  847. return Properties === undefined ? result : objectDefineProperties(result, Properties);
  848. };
  849. var UNSCOPABLES = wellKnownSymbol('unscopables');
  850. var ArrayPrototype = Array.prototype;
  851. // Array.prototype[@@unscopables]
  852. // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
  853. if (ArrayPrototype[UNSCOPABLES] == undefined) {
  854. objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, {
  855. configurable: true,
  856. value: objectCreate(null)
  857. });
  858. }
  859. // add a key to Array.prototype[@@unscopables]
  860. var addToUnscopables = function (key) {
  861. ArrayPrototype[UNSCOPABLES][key] = true;
  862. };
  863. var $find = arrayIteration.find;
  864. var FIND = 'find';
  865. var SKIPS_HOLES = true;
  866. // Shouldn't skip holes
  867. if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
  868. // `Array.prototype.find` method
  869. // https://tc39.es/ecma262/#sec-array.prototype.find
  870. _export({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
  871. find: function find(callbackfn /* , that = undefined */) {
  872. return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  873. }
  874. });
  875. // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
  876. addToUnscopables(FIND);
  877. /**
  878. * @author vincent loh <vincent.ml@gmail.com>
  879. * @update J Manuel Corona <jmcg92@gmail.com>
  880. * @update zhixin wen <wenzhixin2010@gmail.com>
  881. */
  882. var Utils = $__default['default'].fn.bootstrapTable.utils;
  883. $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, {
  884. stickyHeader: false,
  885. stickyHeaderOffsetY: 0,
  886. stickyHeaderOffsetLeft: 0,
  887. stickyHeaderOffsetRight: 0
  888. });
  889. $__default['default'].BootstrapTable = /*#__PURE__*/function (_$$BootstrapTable) {
  890. _inherits(_class, _$$BootstrapTable);
  891. var _super = _createSuper(_class);
  892. function _class() {
  893. _classCallCheck(this, _class);
  894. return _super.apply(this, arguments);
  895. }
  896. _createClass(_class, [{
  897. key: "initHeader",
  898. value: function initHeader() {
  899. var _get2,
  900. _this = this;
  901. for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  902. args[_key] = arguments[_key];
  903. }
  904. (_get2 = _get(_getPrototypeOf(_class.prototype), "initHeader", this)).call.apply(_get2, [this].concat(args));
  905. if (!this.options.stickyHeader) {
  906. return;
  907. }
  908. this.$tableBody.find('.sticky-header-container,.sticky_anchor_begin,.sticky_anchor_end').remove();
  909. this.$el.before('<div class="sticky-header-container"></div>');
  910. this.$el.before('<div class="sticky_anchor_begin"></div>');
  911. this.$el.after('<div class="sticky_anchor_end"></div>');
  912. this.$header.addClass('sticky-header'); // clone header just once, to be used as sticky header
  913. // deep clone header, using source header affects tbody>td width
  914. this.$stickyContainer = this.$tableBody.find('.sticky-header-container');
  915. this.$stickyBegin = this.$tableBody.find('.sticky_anchor_begin');
  916. this.$stickyEnd = this.$tableBody.find('.sticky_anchor_end');
  917. this.$stickyHeader = this.$header.clone(true, true); // render sticky on window scroll or resize
  918. var resizeEvent = Utils.getEventName('resize.sticky-header-table', this.$el.attr('id'));
  919. var scrollEvent = Utils.getEventName('scroll.sticky-header-table', this.$el.attr('id'));
  920. $__default['default'](window).off(resizeEvent).on(resizeEvent, function () {
  921. return _this.renderStickyHeader();
  922. });
  923. $__default['default'](window).off(scrollEvent).on(scrollEvent, function () {
  924. return _this.renderStickyHeader();
  925. });
  926. this.$tableBody.off('scroll').on('scroll', function () {
  927. return _this.matchPositionX();
  928. });
  929. }
  930. }, {
  931. key: "onColumnSearch",
  932. value: function onColumnSearch(_ref) {
  933. var currentTarget = _ref.currentTarget,
  934. keyCode = _ref.keyCode;
  935. _get(_getPrototypeOf(_class.prototype), "onColumnSearch", this).call(this, {
  936. currentTarget: currentTarget,
  937. keyCode: keyCode
  938. });
  939. this.renderStickyHeader();
  940. }
  941. }, {
  942. key: "resetView",
  943. value: function resetView() {
  944. var _get3,
  945. _this2 = this;
  946. for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
  947. args[_key2] = arguments[_key2];
  948. }
  949. (_get3 = _get(_getPrototypeOf(_class.prototype), "resetView", this)).call.apply(_get3, [this].concat(args));
  950. $__default['default']('.bootstrap-table.fullscreen').off('scroll').on('scroll', function () {
  951. return _this2.renderStickyHeader();
  952. });
  953. }
  954. }, {
  955. key: "getCaret",
  956. value: function getCaret() {
  957. var _get4;
  958. for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
  959. args[_key3] = arguments[_key3];
  960. }
  961. (_get4 = _get(_getPrototypeOf(_class.prototype), "getCaret", this)).call.apply(_get4, [this].concat(args));
  962. if (this.$stickyHeader) {
  963. var $ths = this.$stickyHeader.find('th');
  964. this.$header.find('th').each(function (i, th) {
  965. $ths.eq(i).find('.sortable').attr('class', $__default['default'](th).find('.sortable').attr('class'));
  966. });
  967. }
  968. }
  969. }, {
  970. key: "horizontalScroll",
  971. value: function horizontalScroll() {
  972. var _this3 = this;
  973. _get(_getPrototypeOf(_class.prototype), "horizontalScroll", this).call(this);
  974. this.$tableBody.on('scroll', function () {
  975. return _this3.matchPositionX();
  976. });
  977. }
  978. }, {
  979. key: "renderStickyHeader",
  980. value: function renderStickyHeader() {
  981. var _this4 = this;
  982. var that = this;
  983. this.$stickyHeader = this.$header.clone(true, true);
  984. if (this.options.filterControl) {
  985. $__default['default'](this.$stickyHeader).off('keyup change mouseup').on('keyup change mouse', function (e) {
  986. var $target = $__default['default'](e.target);
  987. var value = $target.val();
  988. var field = $target.parents('th').data('field');
  989. var $coreTh = that.$header.find("th[data-field=\"".concat(field, "\"]"));
  990. if ($target.is('input')) {
  991. $coreTh.find('input').val(value);
  992. } else if ($target.is('select')) {
  993. var $select = $coreTh.find('select');
  994. $select.find('option[selected]').removeAttr('selected');
  995. $select.find("option[value=\"".concat(value, "\"]")).attr('selected', true);
  996. }
  997. that.triggerSearch();
  998. });
  999. }
  1000. var top = $__default['default'](window).scrollTop(); // top anchor scroll position, minus header height
  1001. var start = this.$stickyBegin.offset().top - this.options.stickyHeaderOffsetY; // bottom anchor scroll position, minus header height, minus sticky height
  1002. var end = this.$stickyEnd.offset().top - this.options.stickyHeaderOffsetY - this.$header.height(); // show sticky when top anchor touches header, and when bottom anchor not exceeded
  1003. if (top > start && top <= end) {
  1004. // ensure clone and source column widths are the same
  1005. this.$stickyHeader.find('tr:eq(0)').find('th').each(function (index, el) {
  1006. $__default['default'](el).css('min-width', _this4.$header.find('tr:eq(0)').find('th').eq(index).css('width'));
  1007. }); // match bootstrap table style
  1008. this.$stickyContainer.show().addClass('fix-sticky fixed-table-container'); // stick it in position
  1009. var coords = this.$tableBody[0].getBoundingClientRect();
  1010. var width = '100%';
  1011. var stickyHeaderOffsetLeft = this.options.stickyHeaderOffsetLeft;
  1012. var stickyHeaderOffsetRight = this.options.stickyHeaderOffsetRight;
  1013. if (!stickyHeaderOffsetLeft) {
  1014. stickyHeaderOffsetLeft = coords.left;
  1015. }
  1016. if (!stickyHeaderOffsetRight) {
  1017. width = "".concat(coords.width, "px");
  1018. }
  1019. if (this.$el.closest('.bootstrap-table').hasClass('fullscreen')) {
  1020. stickyHeaderOffsetLeft = 0;
  1021. stickyHeaderOffsetRight = 0;
  1022. width = '100%';
  1023. }
  1024. this.$stickyContainer.css('top', "".concat(this.options.stickyHeaderOffsetY, "px"));
  1025. this.$stickyContainer.css('left', "".concat(stickyHeaderOffsetLeft, "px"));
  1026. this.$stickyContainer.css('right', "".concat(stickyHeaderOffsetRight, "px"));
  1027. this.$stickyContainer.css('width', "".concat(width)); // create scrollable container for header
  1028. this.$stickyTable = $__default['default']('<table/>');
  1029. this.$stickyTable.addClass(this.options.classes); // append cloned header to dom
  1030. this.$stickyContainer.html(this.$stickyTable.append(this.$stickyHeader)); // match clone and source header positions when left-right scroll
  1031. this.matchPositionX();
  1032. } else {
  1033. this.$stickyContainer.removeClass('fix-sticky').hide();
  1034. }
  1035. }
  1036. }, {
  1037. key: "matchPositionX",
  1038. value: function matchPositionX() {
  1039. this.$stickyContainer.scrollLeft(this.$tableBody.scrollLeft());
  1040. }
  1041. }]);
  1042. return _class;
  1043. }($__default['default'].BootstrapTable);
  1044. })));