handsontable 0.0.0-next-fd66c90-20240209 → 0.0.0-next-d255844-20240209

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

package/base.js CHANGED
@@ -45,8 +45,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
45
45
  Handsontable.CellCoords = _src.CellCoords;
46
46
  Handsontable.CellRange = _src.CellRange;
47
47
  Handsontable.packageName = 'handsontable';
48
- Handsontable.buildDate = "09/02/2024 11:01:20";
49
- Handsontable.version = "0.0.0-next-fd66c90-20240209";
48
+ Handsontable.buildDate = "09/02/2024 11:21:39";
49
+ Handsontable.version = "0.0.0-next-d255844-20240209";
50
50
  Handsontable.languages = {
51
51
  dictionaryKeys: _registry.dictionaryKeys,
52
52
  getLanguageDictionary: _registry.getLanguageDictionary,
package/base.mjs CHANGED
@@ -35,8 +35,8 @@ Handsontable.hooks = Hooks.getSingleton();
35
35
  Handsontable.CellCoords = CellCoords;
36
36
  Handsontable.CellRange = CellRange;
37
37
  Handsontable.packageName = 'handsontable';
38
- Handsontable.buildDate = "09/02/2024 11:01:26";
39
- Handsontable.version = "0.0.0-next-fd66c90-20240209";
38
+ Handsontable.buildDate = "09/02/2024 11:21:45";
39
+ Handsontable.version = "0.0.0-next-d255844-20240209";
40
40
  Handsontable.languages = {
41
41
  dictionaryKeys,
42
42
  getLanguageDictionary,
@@ -218,7 +218,7 @@ class MetaManager {
218
218
 
219
219
  /**
220
220
  * Returns all cell meta objects that were created during the Handsontable operation but for
221
- * specyfic row index.
221
+ * specific row index.
222
222
  *
223
223
  * @param {number} physicalRow The physical row index.
224
224
  * @returns {object[]}
@@ -214,7 +214,7 @@ export default class MetaManager {
214
214
 
215
215
  /**
216
216
  * Returns all cell meta objects that were created during the Handsontable operation but for
217
- * specyfic row index.
217
+ * specific row index.
218
218
  *
219
219
  * @param {number} physicalRow The physical row index.
220
220
  * @returns {object[]}
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-fd66c90-20240209
29
- * Release date: 16/01/2024 (built at 09/02/2024 11:01:31)
28
+ * Version: 0.0.0-next-d255844-20240209
29
+ * Release date: 16/01/2024 (built at 09/02/2024 11:21:50)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-fd66c90-20240209
29
- * Release date: 16/01/2024 (built at 09/02/2024 11:01:31)
28
+ * Version: 0.0.0-next-d255844-20240209
29
+ * Release date: 16/01/2024 (built at 09/02/2024 11:21:50)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-fd66c90-20240209
29
- * Release date: 16/01/2024 (built at 09/02/2024 11:01:31)
28
+ * Version: 0.0.0-next-d255844-20240209
29
+ * Release date: 16/01/2024 (built at 09/02/2024 11:21:50)
30
30
  */
31
31
  (function webpackUniversalModuleDefinition(root, factory) {
32
32
  if(typeof exports === 'object' && typeof module === 'object')
@@ -43097,8 +43097,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
43097
43097
  Handsontable.CellCoords = _src.CellCoords;
43098
43098
  Handsontable.CellRange = _src.CellRange;
43099
43099
  Handsontable.packageName = 'handsontable';
43100
- Handsontable.buildDate = "09/02/2024 11:01:31";
43101
- Handsontable.version = "0.0.0-next-fd66c90-20240209";
43100
+ Handsontable.buildDate = "09/02/2024 11:21:50";
43101
+ Handsontable.version = "0.0.0-next-d255844-20240209";
43102
43102
  Handsontable.languages = {
43103
43103
  dictionaryKeys: _registry.dictionaryKeys,
43104
43104
  getLanguageDictionary: _registry.getLanguageDictionary,
@@ -53173,7 +53173,7 @@ const domMessages = {
53173
53173
  function _injectProductInfo(key, element) {
53174
53174
  const hasValidType = !isEmpty(key);
53175
53175
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
53176
- const hotVersion = "0.0.0-next-fd66c90-20240209";
53176
+ const hotVersion = "0.0.0-next-d255844-20240209";
53177
53177
  let keyValidityDate;
53178
53178
  let consoleMessageState = 'invalid';
53179
53179
  let domMessageState = 'invalid';
@@ -63733,6 +63733,16 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
63733
63733
  * @param {number} column Visual column index.
63734
63734
  */
63735
63735
  'modifyColWidth',
63736
+ /**
63737
+ * Fired when rendering the list of values in the multiple-selection component of the Filters dropdown.
63738
+ * The hook allows modifying the displayed values in that component.
63739
+ *
63740
+ * @since 14.2.0
63741
+ * @event Hooks#modifyFiltersMultiSelectValue
63742
+ * @param {object} item The item in the list of values.
63743
+ * @param {object} meta The cell properties object.
63744
+ */
63745
+ 'modifyFiltersMultiSelectValue',
63736
63746
  /**
63737
63747
  * Fired when focusing a cell or a header element. Allows replacing the element to be focused by returning a
63738
63748
  * different HTML element.
@@ -87887,7 +87897,7 @@ class MetaManager {
87887
87897
 
87888
87898
  /**
87889
87899
  * Returns all cell meta objects that were created during the Handsontable operation but for
87890
- * specyfic row index.
87900
+ * specific row index.
87891
87901
  *
87892
87902
  * @param {number} physicalRow The physical row index.
87893
87903
  * @returns {object[]}
@@ -101712,6 +101722,7 @@ exports.__esModule = true;
101712
101722
  var _numericRenderer = __webpack_require__(731);
101713
101723
  exports.RENDERER_TYPE = _numericRenderer.RENDERER_TYPE;
101714
101724
  exports.numericRenderer = _numericRenderer.numericRenderer;
101725
+ exports.getRenderedValue = _numericRenderer.getRenderedValue;
101715
101726
 
101716
101727
  /***/ }),
101717
101728
  /* 731 */
@@ -101722,6 +101733,7 @@ exports.numericRenderer = _numericRenderer.numericRenderer;
101722
101733
 
101723
101734
  var _interopRequireDefault = __webpack_require__(198);
101724
101735
  exports.__esModule = true;
101736
+ exports.getRenderedValue = getRenderedValue;
101725
101737
  exports.numericRenderer = numericRenderer;
101726
101738
  __webpack_require__(205);
101727
101739
  var _numbro = _interopRequireDefault(__webpack_require__(732));
@@ -101729,6 +101741,31 @@ var _textRenderer = __webpack_require__(691);
101729
101741
  var _number = __webpack_require__(480);
101730
101742
  const RENDERER_TYPE = exports.RENDERER_TYPE = 'numeric';
101731
101743
 
101744
+ /**
101745
+ * Get the rendered value.
101746
+ *
101747
+ * @param {*} value Value to be rendered.
101748
+ * @param {CellMeta} cellProperties Cell meta object.
101749
+ * @returns {*} Returns the rendered value.
101750
+ */
101751
+ function getRenderedValue(value, cellProperties) {
101752
+ if ((0, _number.isNumeric)(value)) {
101753
+ const numericFormat = cellProperties.numericFormat;
101754
+ const cellCulture = numericFormat && numericFormat.culture || '-';
101755
+ const cellFormatPattern = numericFormat && numericFormat.pattern;
101756
+ if (typeof cellCulture !== 'undefined' && !_numbro.default.languages()[cellCulture]) {
101757
+ const shortTag = cellCulture.replace('-', '');
101758
+ const langData = _numbro.default.allLanguages ? _numbro.default.allLanguages[cellCulture] : _numbro.default[shortTag];
101759
+ if (langData) {
101760
+ _numbro.default.registerLanguage(langData);
101761
+ }
101762
+ }
101763
+ _numbro.default.setLanguage(cellCulture);
101764
+ value = (0, _numbro.default)(value).format(cellFormatPattern || '0');
101765
+ }
101766
+ return value;
101767
+ }
101768
+
101732
101769
  /**
101733
101770
  * Numeric cell renderer.
101734
101771
  *
@@ -101744,20 +101781,9 @@ const RENDERER_TYPE = exports.RENDERER_TYPE = 'numeric';
101744
101781
  function numericRenderer(hotInstance, TD, row, col, prop, value, cellProperties) {
101745
101782
  let newValue = value;
101746
101783
  if ((0, _number.isNumeric)(newValue)) {
101747
- const numericFormat = cellProperties.numericFormat;
101748
- const cellCulture = numericFormat && numericFormat.culture || '-';
101749
- const cellFormatPattern = numericFormat && numericFormat.pattern;
101750
101784
  const className = cellProperties.className || '';
101751
101785
  const classArr = className.length ? className.split(' ') : [];
101752
- if (typeof cellCulture !== 'undefined' && !_numbro.default.languages()[cellCulture]) {
101753
- const shortTag = cellCulture.replace('-', '');
101754
- const langData = _numbro.default.allLanguages ? _numbro.default.allLanguages[cellCulture] : _numbro.default[shortTag];
101755
- if (langData) {
101756
- _numbro.default.registerLanguage(langData);
101757
- }
101758
- }
101759
- _numbro.default.setLanguage(cellCulture);
101760
- newValue = (0, _numbro.default)(newValue).format(cellFormatPattern || '0');
101786
+ newValue = getRenderedValue(newValue, cellProperties);
101761
101787
  if (classArr.indexOf('htLeft') < 0 && classArr.indexOf('htCenter') < 0 && classArr.indexOf('htRight') < 0 && classArr.indexOf('htJustify') < 0) {
101762
101788
  classArr.push('htRight');
101763
101789
  }
@@ -120449,7 +120475,7 @@ function toEmptyString(value) {
120449
120475
  }
120450
120476
 
120451
120477
  /**
120452
- * Unify column values (replace `null` and `undefined` values into empty string, unique values and sort them).
120478
+ * Unify column values (remove duplicated values and sort them).
120453
120479
  *
120454
120480
  * @param {Array} values An array of values.
120455
120481
  * @returns {Array}
@@ -121600,6 +121626,7 @@ var _base = __webpack_require__(881);
121600
121626
  var _multipleSelect = __webpack_require__(918);
121601
121627
  var _constants2 = __webpack_require__(882);
121602
121628
  var _conditionRegisterer = __webpack_require__(883);
121629
+ var _numericRenderer = __webpack_require__(730);
121603
121630
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
121604
121631
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
121605
121632
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
@@ -121610,12 +121637,29 @@ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(
121610
121637
  * @class ValueComponent
121611
121638
  */
121612
121639
  var _onInputKeyDown = /*#__PURE__*/new WeakSet();
121640
+ var _triggerModifyMultipleSelectionValueHook = /*#__PURE__*/new WeakSet();
121641
+ var _onModifyDisplayedValue = /*#__PURE__*/new WeakSet();
121613
121642
  class ValueComponent extends _base.BaseComponent {
121614
121643
  constructor(hotInstance, options) {
121615
121644
  super(hotInstance, {
121616
121645
  id: options.id,
121617
121646
  stateless: false
121618
121647
  });
121648
+ /**
121649
+ * Modify the value displayed in the multiple select list.
121650
+ *
121651
+ * @param {*} value Cell value.
121652
+ * @param {object} meta The cell meta object.
121653
+ * @returns {*} Returns the modified value.
121654
+ */
121655
+ _classPrivateMethodInitSpec(this, _onModifyDisplayedValue);
121656
+ /**
121657
+ * Trigger the `modifyFiltersMultiSelectValue` hook.
121658
+ *
121659
+ * @param {object} item Item from the multiple select list.
121660
+ * @param {Map} metaMap Map of row meta objects.
121661
+ */
121662
+ _classPrivateMethodInitSpec(this, _triggerModifyMultipleSelectionValueHook);
121619
121663
  /**
121620
121664
  * Key down listener.
121621
121665
  *
@@ -121640,6 +121684,7 @@ class ValueComponent extends _base.BaseComponent {
121640
121684
  */
121641
121685
  registerHooks() {
121642
121686
  this.getMultipleSelectElement().addLocalHook('keydown', event => _classPrivateMethodGet(this, _onInputKeyDown, _onInputKeyDown2).call(this, event)).addLocalHook('listTabKeydown', event => this.runLocalHooks('listTabKeydown', event));
121687
+ this.hot.addHook('modifyFiltersMultiSelectValue', (value, meta) => _classPrivateMethodGet(this, _onModifyDisplayedValue, _onModifyDisplayedValue2).call(this, value, meta));
121643
121688
  }
121644
121689
 
121645
121690
  /**
@@ -121697,15 +121742,19 @@ class ValueComponent extends _base.BaseComponent {
121697
121742
  const state = {};
121698
121743
  const defaultBlankCellValue = this.hot.getTranslatedPhrase(C.FILTERS_VALUES_BLANK_CELLS);
121699
121744
  if (firstByValueCondition) {
121700
- const rowValues = (0, _utils.unifyColumnValues)((0, _array.arrayMap)(filteredRowsFactory(physicalColumn, conditionsStack), row => row.value));
121745
+ const filteredRows = filteredRowsFactory(physicalColumn, conditionsStack);
121746
+ const rowValues = (0, _array.arrayMap)(filteredRows, row => row.value);
121747
+ const rowMetaMap = new Map(filteredRows.map(row => [row.value, this.hot.getCellMeta(row.meta.visualRow, row.meta.visualCol)]));
121748
+ const unifiedRowValues = (0, _utils.unifyColumnValues)(rowValues);
121701
121749
  if (conditionArgsChange) {
121702
121750
  firstByValueCondition.args[0] = conditionArgsChange;
121703
121751
  }
121704
121752
  const selectedValues = [];
121705
- const itemsSnapshot = (0, _utils.intersectValues)(rowValues, firstByValueCondition.args[0], defaultBlankCellValue, item => {
121753
+ const itemsSnapshot = (0, _utils.intersectValues)(unifiedRowValues, firstByValueCondition.args[0], defaultBlankCellValue, item => {
121706
121754
  if (item.checked) {
121707
121755
  selectedValues.push(item.value);
121708
121756
  }
121757
+ _classPrivateMethodGet(this, _triggerModifyMultipleSelectionValueHook, _triggerModifyMultipleSelectionValueHook2).call(this, item, rowMetaMap);
121709
121758
  });
121710
121759
  const column = stateInfo.editedConditionStack.column;
121711
121760
  state.locale = this.hot.getCellMeta(0, column).locale;
@@ -121766,8 +121815,13 @@ class ValueComponent extends _base.BaseComponent {
121766
121815
  */
121767
121816
  reset() {
121768
121817
  const defaultBlankCellValue = this.hot.getTranslatedPhrase(C.FILTERS_VALUES_BLANK_CELLS);
121769
- const values = (0, _utils.unifyColumnValues)(this._getColumnVisibleValues());
121770
- const items = (0, _utils.intersectValues)(values, values, defaultBlankCellValue);
121818
+ const rowEntries = this._getColumnVisibleValues();
121819
+ const rowValues = rowEntries.map(entry => entry.value);
121820
+ const rowMetaMap = new Map(rowEntries.map(row => [row.value, row.meta]));
121821
+ const values = (0, _utils.unifyColumnValues)(rowValues);
121822
+ const items = (0, _utils.intersectValues)(values, values, defaultBlankCellValue, item => {
121823
+ _classPrivateMethodGet(this, _triggerModifyMultipleSelectionValueHook, _triggerModifyMultipleSelectionValueHook2).call(this, item, rowMetaMap);
121824
+ });
121771
121825
  this.getMultipleSelectElement().setItems(items);
121772
121826
  super.reset();
121773
121827
  this.getMultipleSelectElement().setValue(values);
@@ -121787,7 +121841,12 @@ class ValueComponent extends _base.BaseComponent {
121787
121841
  if (selectedColumn === null) {
121788
121842
  return [];
121789
121843
  }
121790
- return (0, _array.arrayMap)(this.hot.getDataAtCol(selectedColumn.visualIndex), v => (0, _utils.toEmptyString)(v));
121844
+ return (0, _array.arrayMap)(this.hot.getDataAtCol(selectedColumn.visualIndex), (v, rowIndex) => {
121845
+ return {
121846
+ value: (0, _utils.toEmptyString)(v),
121847
+ meta: this.hot.getCellMeta(selectedColumn.visualIndex, rowIndex)
121848
+ };
121849
+ });
121791
121850
  }
121792
121851
  }
121793
121852
  exports.ValueComponent = ValueComponent;
@@ -121797,6 +121856,19 @@ function _onInputKeyDown2(event) {
121797
121856
  (0, _event.stopImmediatePropagation)(event);
121798
121857
  }
121799
121858
  }
121859
+ function _triggerModifyMultipleSelectionValueHook2(item, metaMap) {
121860
+ if (this.hot.hasHook('modifyFiltersMultiSelectValue')) {
121861
+ item.visualValue = this.hot.runHooks('modifyFiltersMultiSelectValue', item.visualValue, metaMap.get(item.value));
121862
+ }
121863
+ }
121864
+ function _onModifyDisplayedValue2(value, meta) {
121865
+ switch (meta.type) {
121866
+ case 'numeric':
121867
+ return (0, _numericRenderer.getRenderedValue)(value, meta);
121868
+ default:
121869
+ return value;
121870
+ }
121871
+ }
121800
121872
 
121801
121873
  /***/ }),
121802
121874
  /* 918 */
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-fd66c90-20240209
29
- * Release date: 16/01/2024 (built at 09/02/2024 11:01:49)
28
+ * Version: 0.0.0-next-d255844-20240209
29
+ * Release date: 16/01/2024 (built at 09/02/2024 11:22:08)
30
30
  */.handsontable .table td,.handsontable .table th{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child td,.handsontable .table caption+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table thead:first-child tr:first-child td,.handsontable .table thead:first-child tr:first-child th{border-top:1px solid #ccc}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered td,.handsontable .table-bordered th{border-left:none}.handsontable .table-bordered td:first-child,.handsontable .table-bordered th:first-child{border-left:1px solid #ccc}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{width:0}.handsontable .wtSpreader{height:auto;position:relative;width:0}.handsontable div,.handsontable input,.handsontable table,.handsontable tbody,.handsontable td,.handsontable textarea,.handsontable th,.handsontable thead{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:auto}.handsontable table.htCore{border-collapse:separate;border-spacing:0;border-width:0;cursor:default;margin:0;max-height:none;max-width:none;outline-width:0;table-layout:fixed;width:0}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable td,.handsontable th{background-color:#fff;border-bottom:1px solid #ccc;border-left-width:0;border-right:1px solid #ccc;border-top-width:0;empty-cells:show;height:22px;line-height:21px;outline:none;outline-width:0;overflow:hidden;padding:0 4px;vertical-align:top;white-space:pre-wrap}[dir=rtl].handsontable td,[dir=rtl].handsontable th{border-left:1px solid #ccc;border-right-width:0}.handsontable th:last-child{border-bottom:1px solid #ccc;border-left:none;border-right:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-left:1px solid #ccc;border-right:none}.handsontable td:first-of-type,.handsontable th:first-child,.handsontable th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable td:first-of-type,[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable th:nth-child(2){border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-left:1px solid #ccc;border-right-width:0}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child td,.handsontable tr:first-child th{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top) thead tr th:first-child{border-left:1px solid #ccc;border-right-width:0}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;font-weight:400;text-align:center;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{font-size:0;position:absolute}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{cursor:crosshair;font-size:0}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_clone_bottom,.ht_clone_inline_start,.ht_clone_top,.ht_master{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_clone_inline_start table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_master table.htCore>thead{visibility:hidden}.ht_clone_bottom .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_top .wtHolder{overflow:hidden}.handsontable{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;touch-action:manipulation}.handsontable a{color:#104acc}.handsontable.htAutoSize{left:-99000px;position:absolute;top:-99000px;visibility:hidden}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:hsla(0,0%,100%,0)}.hot-display-license-info{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.handsontable .htFocusCatcher{border:0;height:0;margin:0;opacity:0;padding:0;position:absolute;width:0;z-index:-1}.handsontable .manualColumnResizer{cursor:col-resize;height:25px;position:absolute;top:0;width:5px;z-index:210}.handsontable .manualRowResizer{cursor:row-resize;height:5px;left:0;position:absolute;width:50px;z-index:210}.handsontable .manualColumnResizer.active,.handsontable .manualColumnResizer:hover,.handsontable .manualRowResizer.active,.handsontable .manualRowResizer:hover{background-color:#34a9db}.handsontable .manualColumnResizerGuide{background-color:#34a9db;border-left:none;border-right:1px dashed #777;display:none;margin-left:5px;margin-right:unset;position:absolute;right:unset;top:0;width:0}[dir=rtl].handsontable .manualColumnResizerGuide{border-left:1px dashed #777;border-right:none;left:unset;margin-left:unset;margin-right:5px}.handsontable .manualRowResizerGuide{background-color:#34a9db;border-bottom:1px dashed #777;bottom:0;display:none;height:0;left:0;margin-top:5px;position:absolute}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable .columnSorting{position:relative}.handsontable .columnSorting.sortAction:hover{cursor:pointer;text-decoration:underline}.handsontable span.colHeader.columnSorting:before{background-position-x:right;background-repeat:no-repeat;background-size:contain;content:"";height:10px;left:unset;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;top:50%;width:5px}[dir=rtl].handsontable span.colHeader.columnSorting:before{background-position-x:left;left:-9px;padding-left:0;padding-right:8px;right:unset}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):before{content:"*";display:inline-block;padding-right:20px;position:relative}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{background:#005eff;bottom:0;bottom:-100%\9;content:"";left:0;position:absolute;right:0;top:0}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{bottom:-100%}}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{background-color:#fff;border:none;border-radius:0;box-shadow:inset 0 0 0 2px #5292f7;color:#000;display:block;font-family:inherit;font-size:inherit;line-height:21px;margin:0;outline-width:0;padding:1px 5px 0;resize:none}.handsontableInput:focus{outline:none}.handsontableInputHolder{left:0;position:absolute;top:0}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.htSelectEditor:focus{outline:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{color:#777;content:"▶";font-size:9px;position:absolute;right:5px}[dir=rtl].handsontable .htSubmenu :after{content:""}[dir=rtl].handsontable .htSubmenu :before{color:#777;content:"◀";font-size:9px;left:5px;position:absolute}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{background:#fff;border:1px solid #ccc;border-collapse:separate}.handsontable.listbox td,.handsontable.listbox th,.handsontable.listbox tr:first-child td,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th{border-color:transparent!important}.handsontable.listbox td,.handsontable.listbox th{text-overflow:ellipsis;white-space:nowrap}.handsontable.listbox td.htDimmed{color:inherit;cursor:default;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable .collapsibleIndicator{background:#eee;border:1px solid #a6a6a6;border-radius:10px;-webkit-box-shadow:0 0 0 6px #eee;-moz-box-shadow:0 0 0 6px #eee;box-shadow:0 0 0 3px #eee;color:#222;cursor:pointer;font-size:10px;height:10px;left:unset;line-height:8px;position:absolute;right:5px;text-align:center;top:50%;transform:translateY(-50%);width:10px}[dir=rtl].handsontable .collapsibleIndicator{left:5px;right:unset}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.handsontable.mobile .handsontableInput:focus{-webkit-appearance:none;-webkit-box-shadow:inset 0 0 0 2px #5292f7;-moz-box-shadow:inset 0 0 0 2px #5292f7;box-shadow:inset 0 0 0 2px #5292f7}.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea,.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea,[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea{left:unset;right:-10000px}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}
31
31
  /*!
32
32
  * Pikaday