handsontable 0.0.0-next-9e7a0e1-20241015 → 0.0.0-next-3e0b40d-20241017
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/3rdparty/walkontable/src/calculator/viewportRows.js +5 -1
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +5 -2
- package/3rdparty/walkontable/src/core/clone.js +1 -0
- package/3rdparty/walkontable/src/core/clone.mjs +1 -0
- package/3rdparty/walkontable/src/core/core.js +2 -0
- package/3rdparty/walkontable/src/core/core.mjs +2 -0
- package/3rdparty/walkontable/src/overlay/_base.js +3 -1
- package/3rdparty/walkontable/src/overlay/_base.mjs +3 -1
- package/3rdparty/walkontable/src/overlay/bottom.js +2 -2
- package/3rdparty/walkontable/src/overlay/bottom.mjs +2 -2
- package/3rdparty/walkontable/src/overlay/top.js +1 -1
- package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
- package/3rdparty/walkontable/src/settings.js +0 -2
- package/3rdparty/walkontable/src/settings.mjs +0 -2
- package/3rdparty/walkontable/src/table.js +11 -8
- package/3rdparty/walkontable/src/table.mjs +11 -8
- package/3rdparty/walkontable/src/utils/column.js +1 -1
- package/3rdparty/walkontable/src/utils/column.mjs +1 -1
- package/3rdparty/walkontable/src/utils/stylesHandler.js +185 -0
- package/3rdparty/walkontable/src/utils/stylesHandler.mjs +181 -0
- package/3rdparty/walkontable/src/viewport.js +1 -0
- package/3rdparty/walkontable/src/viewport.mjs +1 -0
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.js +11 -0
- package/core.mjs +11 -0
- package/dataMap/metaManager/metaSchema.js +17 -0
- package/dataMap/metaManager/metaSchema.mjs +17 -0
- package/dist/handsontable.css +236 -5
- package/dist/handsontable.full.css +3 -3
- package/dist/handsontable.full.js +3897 -3809
- package/dist/handsontable.full.min.css +4 -3
- package/dist/handsontable.full.min.js +26 -26
- package/dist/handsontable.js +3604 -3510
- package/dist/handsontable.min.css +9 -4
- package/dist/handsontable.min.js +24 -24
- package/editors/autocompleteEditor/autocompleteEditor.js +1 -1
- package/editors/autocompleteEditor/autocompleteEditor.mjs +1 -1
- package/editors/baseEditor/baseEditor.js +1 -1
- package/editors/baseEditor/baseEditor.mjs +1 -1
- package/editors/dateEditor/dateEditor.js +2 -0
- package/editors/dateEditor/dateEditor.mjs +2 -0
- package/editors/handsontableEditor/handsontableEditor.js +1 -1
- package/editors/handsontableEditor/handsontableEditor.mjs +1 -1
- package/editors/passwordEditor/passwordEditor.js +4 -0
- package/editors/passwordEditor/passwordEditor.mjs +5 -1
- package/editors/selectEditor/selectEditor.js +20 -9
- package/editors/selectEditor/selectEditor.mjs +20 -9
- package/editors/textEditor/textEditor.js +7 -11
- package/editors/textEditor/textEditor.mjs +8 -12
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/themes.js +17 -0
- package/helpers/themes.mjs +13 -0
- package/package.json +10 -3
- package/plugins/comments/commentEditor.js +8 -1
- package/plugins/comments/commentEditor.mjs +8 -1
- package/plugins/comments/comments.js +1 -1
- package/plugins/comments/comments.mjs +1 -1
- package/plugins/contextMenu/menu/menu.js +4 -4
- package/plugins/contextMenu/menu/menu.mjs +4 -4
- package/plugins/manualRowMove/manualRowMove.js +1 -1
- package/plugins/manualRowMove/manualRowMove.mjs +1 -1
- package/plugins/mergeCells/mergeCells.js +1 -1
- package/plugins/mergeCells/mergeCells.mjs +1 -1
- package/plugins/nestedRows/ui/headers.js +3 -1
- package/plugins/nestedRows/ui/headers.mjs +3 -1
- package/styles/handsontable.css +1920 -0
- package/styles/handsontable.min.css +30 -0
- package/styles/ht-theme-gemini.css +690 -0
- package/styles/ht-theme-gemini.min.css +30 -0
- package/styles/ht-theme-main.css +712 -0
- package/styles/ht-theme-main.min.css +30 -0
- package/tableView.js +33 -0
- package/tableView.mjs +33 -0
- package/utils/autoResize.js +4 -1
- package/utils/autoResize.mjs +4 -1
- package/utils/ghostTable.js +1 -1
- package/utils/ghostTable.mjs +1 -1
@@ -0,0 +1,181 @@
|
|
1
|
+
import "core-js/modules/es.error.cause.js";
|
2
|
+
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
3
|
+
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
4
|
+
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
5
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
6
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
7
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
8
|
+
var _rootElement = /*#__PURE__*/new WeakMap();
|
9
|
+
var _rootComputedStyle = /*#__PURE__*/new WeakMap();
|
10
|
+
var _rootDocument = /*#__PURE__*/new WeakMap();
|
11
|
+
var _isClassicTheme = /*#__PURE__*/new WeakMap();
|
12
|
+
var _cssVars = /*#__PURE__*/new WeakMap();
|
13
|
+
var _computedStyles = /*#__PURE__*/new WeakMap();
|
14
|
+
var _StylesHandler_brand = /*#__PURE__*/new WeakSet();
|
15
|
+
/**
|
16
|
+
* Handles the theme-related style operations.
|
17
|
+
*/
|
18
|
+
export class StylesHandler {
|
19
|
+
/**
|
20
|
+
* Initializes a new instance of the `StylesHandler` class.
|
21
|
+
*
|
22
|
+
* @param {object} domBindings - The DOM bindings for the instance.
|
23
|
+
*/
|
24
|
+
constructor(domBindings) {
|
25
|
+
var _classPrivateFieldGet2;
|
26
|
+
/**
|
27
|
+
* Retrieves and processes the computed styles for a `td` element.
|
28
|
+
*
|
29
|
+
* This method creates a temporary table structure, appends it to the root element,
|
30
|
+
* retrieves the computed styles for the `td` element, and then removes the table
|
31
|
+
* from the DOM. The computed styles are passed to the provided callback function.
|
32
|
+
*
|
33
|
+
* @param {Function} getterCallback - A callback function that processes the computed styles.
|
34
|
+
* It receives a `CSSStyleDeclaration` object as its argument.
|
35
|
+
* @private
|
36
|
+
*/
|
37
|
+
_classPrivateMethodInitSpec(this, _StylesHandler_brand);
|
38
|
+
/**
|
39
|
+
* The instance's root element.
|
40
|
+
*
|
41
|
+
* @type {HTMLElement}
|
42
|
+
*/
|
43
|
+
_classPrivateFieldInitSpec(this, _rootElement, void 0);
|
44
|
+
/**
|
45
|
+
* The computed style of the root element.
|
46
|
+
*
|
47
|
+
* @type {CSSStyleDeclaration}
|
48
|
+
* @private
|
49
|
+
*/
|
50
|
+
_classPrivateFieldInitSpec(this, _rootComputedStyle, void 0);
|
51
|
+
/**
|
52
|
+
* The root document of the instance.
|
53
|
+
*
|
54
|
+
* @type {Document}
|
55
|
+
* @private
|
56
|
+
*/
|
57
|
+
_classPrivateFieldInitSpec(this, _rootDocument, void 0);
|
58
|
+
/**
|
59
|
+
* `true` if the classic theme is enabled, `false` otherwise.
|
60
|
+
*
|
61
|
+
* @type {boolean}
|
62
|
+
*/
|
63
|
+
_classPrivateFieldInitSpec(this, _isClassicTheme, false);
|
64
|
+
/**
|
65
|
+
* An object to store CSS variable values.
|
66
|
+
*
|
67
|
+
* @type {object}
|
68
|
+
* @private
|
69
|
+
*/
|
70
|
+
_classPrivateFieldInitSpec(this, _cssVars, {});
|
71
|
+
/**
|
72
|
+
* Stores the computed styles for various elements.
|
73
|
+
*
|
74
|
+
* @type {object} - An object containing the computed styles if a nested structore of `element: { [element type]: {property: value} }`.
|
75
|
+
* @private
|
76
|
+
*/
|
77
|
+
_classPrivateFieldInitSpec(this, _computedStyles, {});
|
78
|
+
_classPrivateFieldSet(_rootElement, this, domBindings.rootTable.parentElement);
|
79
|
+
_classPrivateFieldSet(_rootComputedStyle, this, getComputedStyle(_classPrivateFieldGet(_rootElement, this)));
|
80
|
+
_classPrivateFieldSet(_rootDocument, this, domBindings.rootDocument);
|
81
|
+
if (((_classPrivateFieldGet2 = _classPrivateFieldGet(_rootComputedStyle, this)) === null || _classPrivateFieldGet2 === void 0 ? void 0 : _classPrivateFieldGet2.getPropertyValue('--ht-line-height')) === '') {
|
82
|
+
_classPrivateFieldSet(_isClassicTheme, this, true);
|
83
|
+
}
|
84
|
+
|
85
|
+
// Some of the properties are not stored in the CSS variables, so we need to get them from the computed style.
|
86
|
+
_assertClassBrand(_StylesHandler_brand, this, _getStylesForTD).call(this, computedStyle => {
|
87
|
+
_classPrivateFieldSet(_computedStyles, this, {
|
88
|
+
..._classPrivateFieldGet(_computedStyles, this),
|
89
|
+
...{
|
90
|
+
td: {
|
91
|
+
'box-sizing': computedStyle['box-sizing'],
|
92
|
+
'border-top-width': parseInt(computedStyle['border-top-width'], 10),
|
93
|
+
'border-bottom-width': parseInt(computedStyle['border-bottom-width'], 10)
|
94
|
+
}
|
95
|
+
}
|
96
|
+
});
|
97
|
+
});
|
98
|
+
}
|
99
|
+
|
100
|
+
/**
|
101
|
+
* Gets the value indicating whether the classic theme is enabled.
|
102
|
+
*
|
103
|
+
* @returns {boolean} `true` if the classic theme is enabled, `false` otherwise.
|
104
|
+
*/
|
105
|
+
isClassicTheme() {
|
106
|
+
return _classPrivateFieldGet(_isClassicTheme, this);
|
107
|
+
}
|
108
|
+
|
109
|
+
/**
|
110
|
+
* Retrieves the value of a specified CSS variable.
|
111
|
+
*
|
112
|
+
* @param {string} variableName - The name of the CSS variable to retrieve.
|
113
|
+
* @returns {number|string|undefined} The value of the specified CSS variable, or `undefined` if not found.
|
114
|
+
*/
|
115
|
+
getCSSVariableValue(variableName) {
|
116
|
+
if (_classPrivateFieldGet(_cssVars, this)[`--ht-${variableName}`]) {
|
117
|
+
return _classPrivateFieldGet(_cssVars, this)[`--ht-${variableName}`];
|
118
|
+
}
|
119
|
+
const acquiredValue = _assertClassBrand(_StylesHandler_brand, this, _getParsedCSSValue).call(this, `--ht-${variableName}`);
|
120
|
+
if (acquiredValue && acquiredValue !== '') {
|
121
|
+
_classPrivateFieldSet(_cssVars, this, {
|
122
|
+
..._classPrivateFieldGet(_cssVars, this),
|
123
|
+
...{
|
124
|
+
[variableName]: acquiredValue
|
125
|
+
}
|
126
|
+
});
|
127
|
+
return acquiredValue;
|
128
|
+
}
|
129
|
+
}
|
130
|
+
|
131
|
+
/**
|
132
|
+
* Retrieves the computed style value for a specified CSS property of a `td` element.
|
133
|
+
*
|
134
|
+
* @param {string} cssProperty - The CSS property to retrieve the value for.
|
135
|
+
* @returns {number|string|undefined} The value of the specified CSS property, or `undefined` if not found.
|
136
|
+
*/
|
137
|
+
getStyleForTD(cssProperty) {
|
138
|
+
var _classPrivateFieldGet3;
|
139
|
+
const value = (_classPrivateFieldGet3 = _classPrivateFieldGet(_computedStyles, this)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.td[cssProperty];
|
140
|
+
if (value !== undefined && value !== '') {
|
141
|
+
return value;
|
142
|
+
}
|
143
|
+
}
|
144
|
+
|
145
|
+
/**
|
146
|
+
* Calculates the row height based on the current theme and CSS variables.
|
147
|
+
*
|
148
|
+
* @returns {number} The calculated row height.
|
149
|
+
*/
|
150
|
+
getDefaultRowHeight() {
|
151
|
+
if (_classPrivateFieldGet(_isClassicTheme, this)) {
|
152
|
+
return 23;
|
153
|
+
}
|
154
|
+
return this.getStyleForTD('border-top-width') + this.getCSSVariableValue('cell-vertical-padding') * 2 + this.getCSSVariableValue('line-height') + this.getStyleForTD('border-bottom-width');
|
155
|
+
}
|
156
|
+
}
|
157
|
+
function _getStylesForTD(getterCallback) {
|
158
|
+
const table = _classPrivateFieldGet(_rootDocument, this).createElement('table');
|
159
|
+
const tbody = _classPrivateFieldGet(_rootDocument, this).createElement('tbody');
|
160
|
+
const tr = _classPrivateFieldGet(_rootDocument, this).createElement('tr');
|
161
|
+
// This needs not to be the first row in order to get "regular" vaules.
|
162
|
+
const tr2 = _classPrivateFieldGet(_rootDocument, this).createElement('tr');
|
163
|
+
const td = _classPrivateFieldGet(_rootDocument, this).createElement('td');
|
164
|
+
tr2.appendChild(td);
|
165
|
+
tbody.appendChild(tr);
|
166
|
+
tbody.appendChild(tr2);
|
167
|
+
table.appendChild(tbody);
|
168
|
+
_classPrivateFieldGet(_rootElement, this).appendChild(table);
|
169
|
+
getterCallback(getComputedStyle(td));
|
170
|
+
_classPrivateFieldGet(_rootElement, this).removeChild(table);
|
171
|
+
}
|
172
|
+
/**
|
173
|
+
* Parses the value of a specified CSS property from the root element's computed style.
|
174
|
+
*
|
175
|
+
* @param {string} property - The CSS property to retrieve and parse.
|
176
|
+
* @returns {number|string} The parsed value of the CSS property.
|
177
|
+
*/
|
178
|
+
function _getParsedCSSValue(property) {
|
179
|
+
var _classPrivateFieldGet4;
|
180
|
+
return parseInt((_classPrivateFieldGet4 = _classPrivateFieldGet(_rootComputedStyle, this)) === null || _classPrivateFieldGet4 === void 0 ? void 0 : _classPrivateFieldGet4.getPropertyValue(property), 10);
|
181
|
+
}
|
@@ -284,6 +284,7 @@ class Viewport {
|
|
284
284
|
viewportHeight: height,
|
285
285
|
scrollOffset: pos,
|
286
286
|
totalRows: wtSettings.getSetting('totalRows'),
|
287
|
+
defaultRowHeight: this.wot.stylesHandler.getDefaultRowHeight(),
|
287
288
|
rowHeightFn: sourceRow => wtTable.getRowHeight(sourceRow),
|
288
289
|
overrideFn: wtSettings.getSettingPure('viewportRowCalculatorOverride'),
|
289
290
|
horizontalScrollbarHeight: scrollbarHeight
|
@@ -281,6 +281,7 @@ class Viewport {
|
|
281
281
|
viewportHeight: height,
|
282
282
|
scrollOffset: pos,
|
283
283
|
totalRows: wtSettings.getSetting('totalRows'),
|
284
|
+
defaultRowHeight: this.wot.stylesHandler.getDefaultRowHeight(),
|
284
285
|
rowHeightFn: sourceRow => wtTable.getRowHeight(sourceRow),
|
285
286
|
overrideFn: wtSettings.getSettingPure('viewportRowCalculatorOverride'),
|
286
287
|
horizontalScrollbarHeight: scrollbarHeight
|
package/base.js
CHANGED
@@ -45,8 +45,8 @@ Handsontable.hooks = _hooks.Hooks.getSingleton();
|
|
45
45
|
Handsontable.CellCoords = _src.CellCoords;
|
46
46
|
Handsontable.CellRange = _src.CellRange;
|
47
47
|
Handsontable.packageName = 'handsontable';
|
48
|
-
Handsontable.buildDate = "
|
49
|
-
Handsontable.version = "0.0.0-next-
|
48
|
+
Handsontable.buildDate = "17/10/2024 06:56:07";
|
49
|
+
Handsontable.version = "0.0.0-next-3e0b40d-20241017";
|
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 = "
|
39
|
-
Handsontable.version = "0.0.0-next-
|
38
|
+
Handsontable.buildDate = "17/10/2024 06:56:13";
|
39
|
+
Handsontable.version = "0.0.0-next-3e0b40d-20241017";
|
40
40
|
Handsontable.languages = {
|
41
41
|
dictionaryKeys,
|
42
42
|
getLanguageDictionary,
|
package/core.js
CHANGED
@@ -43,6 +43,7 @@ var _index3 = require("./core/index");
|
|
43
43
|
var _uniqueMap = require("./utils/dataStructures/uniqueMap");
|
44
44
|
var _shortcuts = require("./shortcuts");
|
45
45
|
var _shortcutContexts = require("./shortcutContexts");
|
46
|
+
var _themes = require("./helpers/themes");
|
46
47
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
47
48
|
let activeGuid = null;
|
48
49
|
|
@@ -229,7 +230,17 @@ function Core(rootElement, userSettings) {
|
|
229
230
|
this.renderCall = false;
|
230
231
|
rootElement.insertBefore(this.container, rootElement.firstChild);
|
231
232
|
if ((0, _rootInstance.isRootInstance)(this)) {
|
233
|
+
var _rootElement$parentNo;
|
232
234
|
(0, _mixed._injectProductInfo)(userSettings.licenseKey, rootElement);
|
235
|
+
const rootThemeClassName = (0, _themes.getThemeClassName)(rootElement.className);
|
236
|
+
if (rootThemeClassName) {
|
237
|
+
tableMeta.themeName = rootThemeClassName;
|
238
|
+
}
|
239
|
+
(0, _element.addClass)(rootElement, tableMeta.themeName);
|
240
|
+
const licenseInfo = (_rootElement$parentNo = rootElement.parentNode) === null || _rootElement$parentNo === void 0 ? void 0 : _rootElement$parentNo.querySelector('.hot-display-license-info');
|
241
|
+
if (licenseInfo) {
|
242
|
+
(0, _element.addClass)(licenseInfo, tableMeta.themeName);
|
243
|
+
}
|
233
244
|
}
|
234
245
|
this.guid = `ht_${(0, _string.randomString)()}`; // this is the namespace for global events
|
235
246
|
|
package/core.mjs
CHANGED
@@ -39,6 +39,7 @@ import { installFocusCatcher, createViewportScroller } from "./core/index.mjs";
|
|
39
39
|
import { createUniqueMap } from "./utils/dataStructures/uniqueMap.mjs";
|
40
40
|
import { createShortcutManager } from "./shortcuts/index.mjs";
|
41
41
|
import { registerAllShortcutContexts } from "./shortcutContexts/index.mjs";
|
42
|
+
import { getThemeClassName } from "./helpers/themes.mjs";
|
42
43
|
let activeGuid = null;
|
43
44
|
|
44
45
|
/**
|
@@ -224,7 +225,17 @@ export default function Core(rootElement, userSettings) {
|
|
224
225
|
this.renderCall = false;
|
225
226
|
rootElement.insertBefore(this.container, rootElement.firstChild);
|
226
227
|
if (isRootInstance(this)) {
|
228
|
+
var _rootElement$parentNo;
|
227
229
|
_injectProductInfo(userSettings.licenseKey, rootElement);
|
230
|
+
const rootThemeClassName = getThemeClassName(rootElement.className);
|
231
|
+
if (rootThemeClassName) {
|
232
|
+
tableMeta.themeName = rootThemeClassName;
|
233
|
+
}
|
234
|
+
addClass(rootElement, tableMeta.themeName);
|
235
|
+
const licenseInfo = (_rootElement$parentNo = rootElement.parentNode) === null || _rootElement$parentNo === void 0 ? void 0 : _rootElement$parentNo.querySelector('.hot-display-license-info');
|
236
|
+
if (licenseInfo) {
|
237
|
+
addClass(licenseInfo, tableMeta.themeName);
|
238
|
+
}
|
228
239
|
}
|
229
240
|
this.guid = `ht_${randomString()}`; // this is the namespace for global events
|
230
241
|
|
@@ -4313,6 +4313,23 @@ var _default = () => {
|
|
4313
4313
|
* ```
|
4314
4314
|
*/
|
4315
4315
|
tableClassName: undefined,
|
4316
|
+
// TODO: add themeName description
|
4317
|
+
/**
|
4318
|
+
* The `themeName` option lets you add CSS class names
|
4319
|
+
*
|
4320
|
+
* @memberof Options#
|
4321
|
+
* @type {string|string[]}
|
4322
|
+
* @default undefined
|
4323
|
+
* @category Core
|
4324
|
+
*
|
4325
|
+
* @example
|
4326
|
+
* ```js
|
4327
|
+
* // add a `ht-theme-name` CSS class name
|
4328
|
+
* // to every Handsontable instance inside the `container` element
|
4329
|
+
* themeName: 'ht-theme-name',
|
4330
|
+
* ```
|
4331
|
+
*/
|
4332
|
+
themeName: 'ht-theme-main',
|
4316
4333
|
/**
|
4317
4334
|
* The `tabMoves` option configures the action of the <kbd>**Tab**</kbd> key.
|
4318
4335
|
*
|
@@ -4310,6 +4310,23 @@ export default () => {
|
|
4310
4310
|
* ```
|
4311
4311
|
*/
|
4312
4312
|
tableClassName: undefined,
|
4313
|
+
// TODO: add themeName description
|
4314
|
+
/**
|
4315
|
+
* The `themeName` option lets you add CSS class names
|
4316
|
+
*
|
4317
|
+
* @memberof Options#
|
4318
|
+
* @type {string|string[]}
|
4319
|
+
* @default undefined
|
4320
|
+
* @category Core
|
4321
|
+
*
|
4322
|
+
* @example
|
4323
|
+
* ```js
|
4324
|
+
* // add a `ht-theme-name` CSS class name
|
4325
|
+
* // to every Handsontable instance inside the `container` element
|
4326
|
+
* themeName: 'ht-theme-name',
|
4327
|
+
* ```
|
4328
|
+
*/
|
4329
|
+
themeName: 'ht-theme-main',
|
4313
4330
|
/**
|
4314
4331
|
* The `tabMoves` option configures the action of the <kbd>**Tab**</kbd> key.
|
4315
4332
|
*
|
package/dist/handsontable.css
CHANGED
@@ -25,13 +25,13 @@
|
|
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-
|
29
|
-
* Release date: 01/10/2024 (built at
|
28
|
+
* Version: 0.0.0-next-3e0b40d-20241017
|
29
|
+
* Release date: 01/10/2024 (built at 17/10/2024 06:57:10)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
33
33
|
*/
|
34
|
-
.handsontable .table th, .handsontable .table td {
|
34
|
+
.handsontable .table th, .handsontable .table td {
|
35
35
|
border-top: none;
|
36
36
|
}
|
37
37
|
|
@@ -792,6 +792,239 @@ TextRenderer placeholder value
|
|
792
792
|
animation-fill-mode: forwards;
|
793
793
|
-webkit-animation-fill-mode: forwards;
|
794
794
|
}
|
795
|
+
@charset "UTF-8";
|
796
|
+
/*!
|
797
|
+
* Pikaday
|
798
|
+
* Copyright © 2014 David Bushell | BSD & MIT license | https://dbushell.com/
|
799
|
+
*/
|
800
|
+
.pika-single {
|
801
|
+
z-index: 9999;
|
802
|
+
display: block;
|
803
|
+
position: relative;
|
804
|
+
color: #333;
|
805
|
+
background: #fff;
|
806
|
+
border: 1px solid #ccc;
|
807
|
+
border-bottom-color: #bbb;
|
808
|
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
809
|
+
}
|
810
|
+
|
811
|
+
/*
|
812
|
+
clear child float (pika-lendar), using the famous micro clearfix hack
|
813
|
+
http://nicolasgallagher.com/micro-clearfix-hack/
|
814
|
+
*/
|
815
|
+
.pika-single:before,
|
816
|
+
.pika-single:after {
|
817
|
+
content: " ";
|
818
|
+
display: table;
|
819
|
+
}
|
820
|
+
|
821
|
+
.pika-single:after {
|
822
|
+
clear: both;
|
823
|
+
}
|
824
|
+
|
825
|
+
.pika-single.is-hidden {
|
826
|
+
display: none;
|
827
|
+
}
|
828
|
+
|
829
|
+
.pika-single.is-bound {
|
830
|
+
position: absolute;
|
831
|
+
box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5);
|
832
|
+
}
|
833
|
+
|
834
|
+
.pika-lendar {
|
835
|
+
float: left;
|
836
|
+
width: 240px;
|
837
|
+
margin: 8px;
|
838
|
+
}
|
839
|
+
|
840
|
+
.pika-title {
|
841
|
+
position: relative;
|
842
|
+
text-align: center;
|
843
|
+
}
|
844
|
+
|
845
|
+
.pika-label {
|
846
|
+
display: inline-block;
|
847
|
+
position: relative;
|
848
|
+
z-index: 9999;
|
849
|
+
overflow: hidden;
|
850
|
+
margin: 0;
|
851
|
+
padding: 5px 3px;
|
852
|
+
font-size: 14px;
|
853
|
+
line-height: 20px;
|
854
|
+
font-weight: bold;
|
855
|
+
background-color: #fff;
|
856
|
+
}
|
857
|
+
|
858
|
+
.pika-title select {
|
859
|
+
cursor: pointer;
|
860
|
+
position: absolute;
|
861
|
+
z-index: 9998;
|
862
|
+
margin: 0;
|
863
|
+
left: 0;
|
864
|
+
top: 5px;
|
865
|
+
opacity: 0;
|
866
|
+
}
|
867
|
+
|
868
|
+
.pika-prev,
|
869
|
+
.pika-next {
|
870
|
+
display: block;
|
871
|
+
cursor: pointer;
|
872
|
+
position: relative;
|
873
|
+
outline: none;
|
874
|
+
border: 0;
|
875
|
+
padding: 0;
|
876
|
+
width: 20px;
|
877
|
+
height: 30px;
|
878
|
+
/* hide text using text-indent trick, using width value (it's enough) */
|
879
|
+
text-indent: 20px;
|
880
|
+
white-space: nowrap;
|
881
|
+
overflow: hidden;
|
882
|
+
background-color: transparent;
|
883
|
+
background-position: center center;
|
884
|
+
background-repeat: no-repeat;
|
885
|
+
background-size: 75% 75%;
|
886
|
+
opacity: 0.5;
|
887
|
+
}
|
888
|
+
|
889
|
+
.pika-prev:hover,
|
890
|
+
.pika-next:hover {
|
891
|
+
opacity: 1;
|
892
|
+
}
|
893
|
+
|
894
|
+
.pika-prev,
|
895
|
+
.is-rtl .pika-next {
|
896
|
+
float: left;
|
897
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==);
|
898
|
+
}
|
899
|
+
|
900
|
+
.pika-next,
|
901
|
+
.is-rtl .pika-prev {
|
902
|
+
float: right;
|
903
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=);
|
904
|
+
}
|
905
|
+
|
906
|
+
.pika-prev.is-disabled,
|
907
|
+
.pika-next.is-disabled {
|
908
|
+
cursor: default;
|
909
|
+
opacity: 0.2;
|
910
|
+
}
|
911
|
+
|
912
|
+
.pika-select {
|
913
|
+
display: inline-block;
|
914
|
+
}
|
915
|
+
|
916
|
+
.pika-table {
|
917
|
+
width: 100%;
|
918
|
+
border-collapse: collapse;
|
919
|
+
border-spacing: 0;
|
920
|
+
border: 0;
|
921
|
+
}
|
922
|
+
|
923
|
+
.pika-table th,
|
924
|
+
.pika-table td {
|
925
|
+
width: 14.2857142857%;
|
926
|
+
padding: 0;
|
927
|
+
}
|
928
|
+
|
929
|
+
.pika-table th {
|
930
|
+
color: #999;
|
931
|
+
font-size: 12px;
|
932
|
+
line-height: 25px;
|
933
|
+
font-weight: bold;
|
934
|
+
text-align: center;
|
935
|
+
}
|
936
|
+
|
937
|
+
.pika-button {
|
938
|
+
cursor: pointer;
|
939
|
+
display: block;
|
940
|
+
box-sizing: border-box;
|
941
|
+
-moz-box-sizing: border-box;
|
942
|
+
outline: none;
|
943
|
+
border: 0;
|
944
|
+
margin: 0;
|
945
|
+
width: 100%;
|
946
|
+
padding: 5px;
|
947
|
+
color: #666;
|
948
|
+
font-size: 12px;
|
949
|
+
line-height: 15px;
|
950
|
+
text-align: center;
|
951
|
+
background: #f5f5f5;
|
952
|
+
height: initial;
|
953
|
+
}
|
954
|
+
|
955
|
+
.pika-week {
|
956
|
+
font-size: 11px;
|
957
|
+
color: #999;
|
958
|
+
}
|
959
|
+
|
960
|
+
.is-today .pika-button {
|
961
|
+
color: #33aaff;
|
962
|
+
font-weight: bold;
|
963
|
+
}
|
964
|
+
|
965
|
+
.is-selected .pika-button,
|
966
|
+
.has-event .pika-button {
|
967
|
+
color: #fff;
|
968
|
+
font-weight: bold;
|
969
|
+
background: #33aaff;
|
970
|
+
box-shadow: inset 0 1px 3px #178fe5;
|
971
|
+
border-radius: 3px;
|
972
|
+
}
|
973
|
+
|
974
|
+
.has-event .pika-button {
|
975
|
+
background: #005da9;
|
976
|
+
box-shadow: inset 0 1px 3px #0076c9;
|
977
|
+
}
|
978
|
+
|
979
|
+
.is-disabled .pika-button,
|
980
|
+
.is-inrange .pika-button {
|
981
|
+
background: #D5E9F7;
|
982
|
+
}
|
983
|
+
|
984
|
+
.is-startrange .pika-button {
|
985
|
+
color: #fff;
|
986
|
+
background: #6CB31D;
|
987
|
+
box-shadow: none;
|
988
|
+
border-radius: 3px;
|
989
|
+
}
|
990
|
+
|
991
|
+
.is-endrange .pika-button {
|
992
|
+
color: #fff;
|
993
|
+
background: #33aaff;
|
994
|
+
box-shadow: none;
|
995
|
+
border-radius: 3px;
|
996
|
+
}
|
997
|
+
|
998
|
+
.is-disabled .pika-button {
|
999
|
+
pointer-events: none;
|
1000
|
+
cursor: default;
|
1001
|
+
color: #999;
|
1002
|
+
opacity: 0.3;
|
1003
|
+
}
|
1004
|
+
|
1005
|
+
.is-outside-current-month .pika-button {
|
1006
|
+
color: #999;
|
1007
|
+
opacity: 0.3;
|
1008
|
+
}
|
1009
|
+
|
1010
|
+
.is-selection-disabled {
|
1011
|
+
pointer-events: none;
|
1012
|
+
cursor: default;
|
1013
|
+
}
|
1014
|
+
|
1015
|
+
.pika-button:hover,
|
1016
|
+
.pika-row.pick-whole-week:hover .pika-button {
|
1017
|
+
color: #fff;
|
1018
|
+
background: #ff8000;
|
1019
|
+
box-shadow: none;
|
1020
|
+
border-radius: 3px;
|
1021
|
+
}
|
1022
|
+
|
1023
|
+
/* styling for abbr */
|
1024
|
+
.pika-table abbr {
|
1025
|
+
border-bottom: none;
|
1026
|
+
cursor: help;
|
1027
|
+
}
|
795
1028
|
/*
|
796
1029
|
AutocompleteRenderer down arrow
|
797
1030
|
*/
|
@@ -2056,5 +2289,3 @@ textarea.HandsontableCopyPaste {
|
|
2056
2289
|
left: 0;
|
2057
2290
|
right: unset;
|
2058
2291
|
}
|
2059
|
-
|
2060
|
-
/*# sourceMappingURL=handsontable.css.map*/
|
@@ -25,13 +25,13 @@
|
|
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-
|
29
|
-
* Release date: 01/10/2024 (built at
|
28
|
+
* Version: 0.0.0-next-3e0b40d-20241017
|
29
|
+
* Release date: 01/10/2024 (built at 17/10/2024 06:57:10)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
33
33
|
*/
|
34
|
-
.handsontable .table th, .handsontable .table td {
|
34
|
+
.handsontable .table th, .handsontable .table td {
|
35
35
|
border-top: none;
|
36
36
|
}
|
37
37
|
|