@public-ui/hydrate 2.2.19-rc.1 → 2.2.20-3e68a967427d721cf5890286bc87047a988f4113.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +126 -589
- package/dist/index.mjs +126 -589
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
|
@@ -3835,7 +3835,7 @@ const validateAlignment = (component, propName, value) => {
|
|
|
3835
3835
|
});
|
|
3836
3836
|
};
|
|
3837
3837
|
|
|
3838
|
-
const isObject$
|
|
3838
|
+
const isObject$1 = (value) => typeof value === 'object' && value !== null;
|
|
3839
3839
|
const isString$2 = (value, minLength = 0) => typeof value === 'string' && value.length >= minLength;
|
|
3840
3840
|
const isStyle = (style) => {
|
|
3841
3841
|
if (typeof style === 'object' && style !== null) {
|
|
@@ -3888,7 +3888,7 @@ const validateTabIndex = (component, value) => {
|
|
|
3888
3888
|
};
|
|
3889
3889
|
|
|
3890
3890
|
const validateAccordionCallbacks = (component, value) => {
|
|
3891
|
-
watchValidator(component, `_on`, (value) => isObject$
|
|
3891
|
+
watchValidator(component, `_on`, (value) => isObject$1(value), new Set(['AccordionCallbacksPropType {Events.onClick}']), value);
|
|
3892
3892
|
};
|
|
3893
3893
|
|
|
3894
3894
|
const validateActive = (component, value, options) => {
|
|
@@ -3949,7 +3949,7 @@ const validateBadgeText = (component, value) => {
|
|
|
3949
3949
|
};
|
|
3950
3950
|
|
|
3951
3951
|
const validateButtonCallbacks = (component, value) => {
|
|
3952
|
-
watchValidator(component, `_on`, (value) => isObject$
|
|
3952
|
+
watchValidator(component, `_on`, (value) => isObject$1(value), new Set(['ButtonCallbacksPropType {Events.onClick, Events.onMouseDown}']), value);
|
|
3953
3953
|
};
|
|
3954
3954
|
|
|
3955
3955
|
const buttonTypePropTypeOptions = ['button', 'reset', 'submit'];
|
|
@@ -4077,7 +4077,7 @@ const validateCustomClass = (component, value) => {
|
|
|
4077
4077
|
};
|
|
4078
4078
|
|
|
4079
4079
|
const validateDetailsCallbacks = (component, value) => {
|
|
4080
|
-
watchValidator(component, `_on`, (value) => isObject$
|
|
4080
|
+
watchValidator(component, `_on`, (value) => isObject$1(value), new Set(['DetailsCallbacksPropType {Events.onToggle}']), value);
|
|
4081
4081
|
};
|
|
4082
4082
|
|
|
4083
4083
|
const validateDisabled = (component, value) => {
|
|
@@ -4134,7 +4134,7 @@ const validateHref = (component, value, options = {}) => {
|
|
|
4134
4134
|
};
|
|
4135
4135
|
|
|
4136
4136
|
const mapCustomIcon = (state, alignment, icon) => {
|
|
4137
|
-
if (isObject$
|
|
4137
|
+
if (isObject$1(icon)) {
|
|
4138
4138
|
state[alignment] = icon;
|
|
4139
4139
|
}
|
|
4140
4140
|
else if (isString$2(icon, 1)) {
|
|
@@ -4152,7 +4152,7 @@ const mapIconProp2State = (icon) => {
|
|
|
4152
4152
|
},
|
|
4153
4153
|
};
|
|
4154
4154
|
}
|
|
4155
|
-
else if (isObject$
|
|
4155
|
+
else if (isObject$1(icon)) {
|
|
4156
4156
|
const icons = icon;
|
|
4157
4157
|
mapCustomIcon(state, 'top', icons.top);
|
|
4158
4158
|
mapCustomIcon(state, 'right', icons.right);
|
|
@@ -4168,7 +4168,7 @@ const beforePatchIcon = (component) => {
|
|
|
4168
4168
|
(_c = component.nextState) === null || _c === void 0 ? void 0 : _c.set('_icons', mapIconProp2State(icons));
|
|
4169
4169
|
}
|
|
4170
4170
|
};
|
|
4171
|
-
const isIcon = (value) => isObject$
|
|
4171
|
+
const isIcon = (value) => isObject$1(value) &&
|
|
4172
4172
|
(typeof value.style === 'undefined' || isStyle(value.style)) &&
|
|
4173
4173
|
(typeof value.label === 'undefined' || isString$2(value.label)) &&
|
|
4174
4174
|
isString$2(value.icon, 1);
|
|
@@ -4181,11 +4181,11 @@ const validateIcons = (component, value, options = {}) => {
|
|
|
4181
4181
|
catch (e) {
|
|
4182
4182
|
}
|
|
4183
4183
|
watchValidator(component, '_icons', (value) => {
|
|
4184
|
-
const valueIsEmptyObject = isObject$
|
|
4184
|
+
const valueIsEmptyObject = isObject$1(value) && Object.keys(value).length === 0;
|
|
4185
4185
|
return (value === null ||
|
|
4186
4186
|
valueIsEmptyObject ||
|
|
4187
4187
|
isString$2(value, 1) ||
|
|
4188
|
-
(isObject$
|
|
4188
|
+
(isObject$1(value) &&
|
|
4189
4189
|
(isString$2(value.left, 1) ||
|
|
4190
4190
|
isIcon(value.left) ||
|
|
4191
4191
|
isString$2(value.right, 1) ||
|
|
@@ -4287,7 +4287,7 @@ const validateMsg = (component, value) => {
|
|
|
4287
4287
|
}
|
|
4288
4288
|
catch (e) {
|
|
4289
4289
|
}
|
|
4290
|
-
watchValidator(component, `_msg`, (value) => isObject$
|
|
4290
|
+
watchValidator(component, `_msg`, (value) => isObject$1(value) && typeof (value === null || value === void 0 ? void 0 : value._description) === 'string', new Set(['MsgPropType']), value, {
|
|
4291
4291
|
defaultValue: {
|
|
4292
4292
|
_description: '',
|
|
4293
4293
|
_type: 'error',
|
|
@@ -4309,7 +4309,7 @@ const validateOpen = (component, value, options) => {
|
|
|
4309
4309
|
};
|
|
4310
4310
|
|
|
4311
4311
|
const validateOptions = (component, value, options = {}) => {
|
|
4312
|
-
watchJsonArrayString(component, '_options', (item) => isObject$
|
|
4312
|
+
watchJsonArrayString(component, '_options', (item) => isObject$1(item) && typeof item.label === 'string' && item.label.length > 0, value, undefined, options);
|
|
4313
4313
|
};
|
|
4314
4314
|
const validateOptionsWithOptgroup = (component, value, options = {}) => {
|
|
4315
4315
|
watchJsonArrayString(component, '_options', validateInputSelectOptions, value, undefined, options);
|
|
@@ -4327,7 +4327,7 @@ const validatePopoverAlign = (component, value) => {
|
|
|
4327
4327
|
};
|
|
4328
4328
|
|
|
4329
4329
|
const validatePopoverCallbacks = (component, value) => {
|
|
4330
|
-
watchValidator(component, `_on`, (value) => isObject$
|
|
4330
|
+
watchValidator(component, `_on`, (value) => isObject$1(value), new Set(['PopoverCallbacksPropType {Events.onClose}']), value);
|
|
4331
4331
|
};
|
|
4332
4332
|
|
|
4333
4333
|
const validateReadOnly = (component, value) => {
|
|
@@ -4374,10 +4374,10 @@ const validateTabBehavior = (component, value) => {
|
|
|
4374
4374
|
};
|
|
4375
4375
|
|
|
4376
4376
|
const validateTableCallbacks = (component, value) => {
|
|
4377
|
-
watchValidator(component, `_on`, (value) => isObject$
|
|
4377
|
+
watchValidator(component, `_on`, (value) => isObject$1(value), new Set(['TableCallbacksPropType {Events.onSort, Events.onSelectionChange}']), value);
|
|
4378
4378
|
};
|
|
4379
4379
|
const validateTableStatefulCallbacks = (component, value) => {
|
|
4380
|
-
watchValidator(component, `_on`, (value) => isObject$
|
|
4380
|
+
watchValidator(component, `_on`, (value) => isObject$1(value), new Set(['TableStatefulCallbacksPropType {Events.onSelectionChange}']), value);
|
|
4381
4381
|
};
|
|
4382
4382
|
|
|
4383
4383
|
const validateTableData = (component, value, setStateHooks) => {
|
|
@@ -4391,7 +4391,7 @@ const validateTableData = (component, value, setStateHooks) => {
|
|
|
4391
4391
|
}
|
|
4392
4392
|
catch (e) {
|
|
4393
4393
|
}
|
|
4394
|
-
if (Array.isArray(value) && value.every((data) => isObject$
|
|
4394
|
+
if (Array.isArray(value) && value.every((data) => isObject$1(data))) {
|
|
4395
4395
|
setState(component, '_data', value, setStateHooks);
|
|
4396
4396
|
}
|
|
4397
4397
|
});
|
|
@@ -4409,7 +4409,7 @@ const validateTableDataFoot = (component, value, setStateHooks) => {
|
|
|
4409
4409
|
}
|
|
4410
4410
|
catch (e) {
|
|
4411
4411
|
}
|
|
4412
|
-
if (Array.isArray(value) && value.every((data) => isObject$
|
|
4412
|
+
if (Array.isArray(value) && value.every((data) => isObject$1(data))) {
|
|
4413
4413
|
setState(component, '_dataFoot', value, setStateHooks);
|
|
4414
4414
|
}
|
|
4415
4415
|
});
|
|
@@ -4444,7 +4444,7 @@ const validateTableSelection = (component, value) => {
|
|
|
4444
4444
|
}
|
|
4445
4445
|
};
|
|
4446
4446
|
const validateObject = (value) => {
|
|
4447
|
-
return value && isObject$
|
|
4447
|
+
return value && isObject$1(value) && typeof value.label === 'function' && (!value.selectedKeys || Array.isArray(value.selectedKeys));
|
|
4448
4448
|
};
|
|
4449
4449
|
const objectValue = typeof value === 'string' ? parseSerializedValue() : value;
|
|
4450
4450
|
if (validateObject(objectValue)) {
|
|
@@ -4463,7 +4463,7 @@ const validateToolbarItems = (component, value) => {
|
|
|
4463
4463
|
}
|
|
4464
4464
|
catch (e) {
|
|
4465
4465
|
}
|
|
4466
|
-
if (Array.isArray(value) && value.every((items) => isObject$
|
|
4466
|
+
if (Array.isArray(value) && value.every((items) => isObject$1(items))) {
|
|
4467
4467
|
setState(component, '_items', value);
|
|
4468
4468
|
}
|
|
4469
4469
|
});
|
|
@@ -8251,7 +8251,7 @@ InputDateController.isoTimeRegex = /^[0-2]\d:[0-5]\d(:[0-5]\d(?:\.\d+)?)?/;
|
|
|
8251
8251
|
InputDateController.isoWeekRegex = /^\d{4}-W(?:[0-4]\d|5[0-3])$/;
|
|
8252
8252
|
InputDateController.DEFAULT_MAX_DATE = new Date(9999, 11, 31, 23, 59, 59);
|
|
8253
8253
|
|
|
8254
|
-
const defaultStyleCss$w = "/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, unset);\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip-wc .tooltip-floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip-wc .tooltip-floating.show {\n animation-name: showTooltip;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .required label > span::after,\n .required legend > span::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n input,\n textarea {\n cursor: text;\n }\n input[type=checkbox],\n input[type=color],\n input[type=file],\n input[type=radio],\n input[type=range],\n label,\n option,\n select {\n cursor: pointer;\n }\n /* input[type='checkbox'], */\n /* input[type='radio'], */\n /* input[type='range'], */\n input[type=color],\n input[type=date],\n input[type=datetime-local],\n input[type=email],\n input[type=file],\n input[type=month],\n input[type=number],\n input[type=password],\n input[type=search],\n input[type=tel],\n input[type=text],\n input[type=time],\n input[type=url],\n input[type=week],\n option,\n select,\n textarea {\n background-color: transparent;\n width: 100%;\n }\n /* needed hack for vertical alignment */\n input[type=file] {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 10) 0.5em;\n }\n /* needed hack for vertical alignment */\n select[multiple] option {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 2) 0.5em;\n }\n}\n@layer kol-component {\n .kol-alert-wc {\n display: grid;\n }\n .kol-alert-wc .heading {\n display: flex;\n place-items: center;\n }\n .kol-alert-wc .heading > div {\n flex-grow: 1;\n }\n .close {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n .kol-input {\n display: grid;\n }\n .kol-input .input-slot {\n flex-grow: 1;\n }\n input:focus,\n option:focus,\n select:focus,\n textarea:focus {\n outline: 0;\n }\n .input {\n background-color: white;\n display: flex;\n align-items: center;\n cursor: pointer;\n }\n button:not([role=link]) {\n min-height: auto;\n }\n .input > .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input.required .input-tooltip .span-label::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n /**\n * Workaround for detecting focus state of the native date input's calendar icon.\n * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n * This should be replaced once native focus detection for the icon is available.\n */\n :host input[type=date],\n :host input[type=datetime-local],\n :host input[type=month],\n :host input[type=time],\n :host input[type=week] {\n content: \"native-icon-focused\";\n }\n :host input[type=date]:focus-visible,\n :host input[type=datetime-local]:focus-visible,\n :host input[type=month]:focus-visible,\n :host input[type=time]:focus-visible,\n :host input[type=week]:focus-visible {\n content: \"native-icon-not-focused\";\n }\n}";
|
|
8254
|
+
const defaultStyleCss$w = "/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, unset);\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip-wc .tooltip-floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip-wc .tooltip-floating.show {\n animation-name: showTooltip;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .required label > span::after,\n .required legend > span::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n input,\n textarea {\n cursor: text;\n }\n input[type=checkbox],\n input[type=color],\n input[type=file],\n input[type=radio],\n input[type=range],\n label,\n option,\n select {\n cursor: pointer;\n }\n /* input[type='checkbox'], */\n /* input[type='radio'], */\n /* input[type='range'], */\n input[type=color],\n input[type=date],\n input[type=datetime-local],\n input[type=email],\n input[type=file],\n input[type=month],\n input[type=number],\n input[type=password],\n input[type=search],\n input[type=tel],\n input[type=text],\n input[type=time],\n input[type=url],\n input[type=week],\n option,\n select,\n textarea {\n background-color: transparent;\n width: 100%;\n }\n /* needed hack for vertical alignment */\n input[type=file] {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 10) 0.5em;\n }\n /* needed hack for vertical alignment */\n select[multiple] option {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 2) 0.5em;\n }\n}\n@layer kol-component {\n .kol-alert-wc {\n display: grid;\n }\n .kol-alert-wc .heading {\n display: flex;\n place-items: center;\n }\n .kol-alert-wc .heading > div {\n flex-grow: 1;\n }\n .close {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n .kol-input {\n display: grid;\n }\n .kol-input .input-slot {\n flex-grow: 1;\n }\n input:focus,\n option:focus,\n select:focus,\n textarea:focus {\n outline: 0;\n }\n .input {\n background-color: white;\n display: flex;\n align-items: center;\n cursor: pointer;\n }\n button:not([role=link]) {\n min-height: auto;\n }\n .input > .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input.required .input-tooltip .span-label::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n /**\n * Workaround for detecting focus state of the native date input's calendar icon.\n * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n * This should be replaced once native focus detection for the icon is available.\n */\n :host input[type=date],\n :host input[type=datetime-local],\n :host input[type=month],\n :host input[type=time],\n :host input[type=week] {\n content: \"native-icon-focused\";\n }\n :host input[type=date]:focus-visible,\n :host input[type=datetime-local]:focus-visible,\n :host input[type=month]:focus-visible,\n :host input[type=time]:focus-visible,\n :host input[type=week]:focus-visible {\n content: \"native-icon-not-focused\";\n }\n .input {\n cursor: text;\n }\n .input input::-webkit-calendar-picker-indicator {\n cursor: pointer;\n }\n}";
|
|
8255
8255
|
var KolInputDateDefaultStyle0 = defaultStyleCss$w;
|
|
8256
8256
|
|
|
8257
8257
|
class KolInputDate {
|
|
@@ -8558,495 +8558,19 @@ const validatePasswordVariant = (component, value) => {
|
|
|
8558
8558
|
watchValidator(component, '_variant', (value) => typeof value === 'string' && PasswordVariantPropTypeOptions.includes(value), new Set(PasswordVariantPropTypeOptions), value);
|
|
8559
8559
|
};
|
|
8560
8560
|
|
|
8561
|
-
|
|
8562
|
-
|
|
8563
|
-
|
|
8564
|
-
|
|
8565
|
-
|
|
8566
|
-
|
|
8567
|
-
|
|
8568
|
-
|
|
8569
|
-
|
|
8570
|
-
|
|
8571
|
-
|
|
8572
|
-
var root$1 = root;
|
|
8573
|
-
|
|
8574
|
-
/** Built-in value references. */
|
|
8575
|
-
var Symbol = root$1.Symbol;
|
|
8576
|
-
|
|
8577
|
-
var Symbol$1 = Symbol;
|
|
8578
|
-
|
|
8579
|
-
/** Used for built-in method references. */
|
|
8580
|
-
var objectProto$1 = Object.prototype;
|
|
8581
|
-
|
|
8582
|
-
/** Used to check objects for own properties. */
|
|
8583
|
-
var hasOwnProperty = objectProto$1.hasOwnProperty;
|
|
8584
|
-
|
|
8585
|
-
/**
|
|
8586
|
-
* Used to resolve the
|
|
8587
|
-
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
|
|
8588
|
-
* of values.
|
|
8589
|
-
*/
|
|
8590
|
-
var nativeObjectToString$1 = objectProto$1.toString;
|
|
8591
|
-
|
|
8592
|
-
/** Built-in value references. */
|
|
8593
|
-
var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : undefined;
|
|
8594
|
-
|
|
8595
|
-
/**
|
|
8596
|
-
* A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
|
|
8597
|
-
*
|
|
8598
|
-
* @private
|
|
8599
|
-
* @param {*} value The value to query.
|
|
8600
|
-
* @returns {string} Returns the raw `toStringTag`.
|
|
8601
|
-
*/
|
|
8602
|
-
function getRawTag(value) {
|
|
8603
|
-
var isOwn = hasOwnProperty.call(value, symToStringTag$1),
|
|
8604
|
-
tag = value[symToStringTag$1];
|
|
8605
|
-
|
|
8606
|
-
try {
|
|
8607
|
-
value[symToStringTag$1] = undefined;
|
|
8608
|
-
var unmasked = true;
|
|
8609
|
-
} catch (e) {}
|
|
8610
|
-
|
|
8611
|
-
var result = nativeObjectToString$1.call(value);
|
|
8612
|
-
if (unmasked) {
|
|
8613
|
-
if (isOwn) {
|
|
8614
|
-
value[symToStringTag$1] = tag;
|
|
8615
|
-
} else {
|
|
8616
|
-
delete value[symToStringTag$1];
|
|
8617
|
-
}
|
|
8618
|
-
}
|
|
8619
|
-
return result;
|
|
8620
|
-
}
|
|
8621
|
-
|
|
8622
|
-
/** Used for built-in method references. */
|
|
8623
|
-
var objectProto = Object.prototype;
|
|
8624
|
-
|
|
8625
|
-
/**
|
|
8626
|
-
* Used to resolve the
|
|
8627
|
-
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
|
|
8628
|
-
* of values.
|
|
8629
|
-
*/
|
|
8630
|
-
var nativeObjectToString = objectProto.toString;
|
|
8631
|
-
|
|
8632
|
-
/**
|
|
8633
|
-
* Converts `value` to a string using `Object.prototype.toString`.
|
|
8634
|
-
*
|
|
8635
|
-
* @private
|
|
8636
|
-
* @param {*} value The value to convert.
|
|
8637
|
-
* @returns {string} Returns the converted string.
|
|
8638
|
-
*/
|
|
8639
|
-
function objectToString(value) {
|
|
8640
|
-
return nativeObjectToString.call(value);
|
|
8641
|
-
}
|
|
8642
|
-
|
|
8643
|
-
/** `Object#toString` result references. */
|
|
8644
|
-
var nullTag = '[object Null]',
|
|
8645
|
-
undefinedTag = '[object Undefined]';
|
|
8646
|
-
|
|
8647
|
-
/** Built-in value references. */
|
|
8648
|
-
var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : undefined;
|
|
8649
|
-
|
|
8650
|
-
/**
|
|
8651
|
-
* The base implementation of `getTag` without fallbacks for buggy environments.
|
|
8652
|
-
*
|
|
8653
|
-
* @private
|
|
8654
|
-
* @param {*} value The value to query.
|
|
8655
|
-
* @returns {string} Returns the `toStringTag`.
|
|
8656
|
-
*/
|
|
8657
|
-
function baseGetTag(value) {
|
|
8658
|
-
if (value == null) {
|
|
8659
|
-
return value === undefined ? undefinedTag : nullTag;
|
|
8660
|
-
}
|
|
8661
|
-
return (symToStringTag && symToStringTag in Object(value))
|
|
8662
|
-
? getRawTag(value)
|
|
8663
|
-
: objectToString(value);
|
|
8664
|
-
}
|
|
8665
|
-
|
|
8666
|
-
/**
|
|
8667
|
-
* Checks if `value` is object-like. A value is object-like if it's not `null`
|
|
8668
|
-
* and has a `typeof` result of "object".
|
|
8669
|
-
*
|
|
8670
|
-
* @static
|
|
8671
|
-
* @memberOf _
|
|
8672
|
-
* @since 4.0.0
|
|
8673
|
-
* @category Lang
|
|
8674
|
-
* @param {*} value The value to check.
|
|
8675
|
-
* @returns {boolean} Returns `true` if `value` is object-like, else `false`.
|
|
8676
|
-
* @example
|
|
8677
|
-
*
|
|
8678
|
-
* _.isObjectLike({});
|
|
8679
|
-
* // => true
|
|
8680
|
-
*
|
|
8681
|
-
* _.isObjectLike([1, 2, 3]);
|
|
8682
|
-
* // => true
|
|
8683
|
-
*
|
|
8684
|
-
* _.isObjectLike(_.noop);
|
|
8685
|
-
* // => false
|
|
8686
|
-
*
|
|
8687
|
-
* _.isObjectLike(null);
|
|
8688
|
-
* // => false
|
|
8689
|
-
*/
|
|
8690
|
-
function isObjectLike(value) {
|
|
8691
|
-
return value != null && typeof value == 'object';
|
|
8692
|
-
}
|
|
8693
|
-
|
|
8694
|
-
/** `Object#toString` result references. */
|
|
8695
|
-
var symbolTag = '[object Symbol]';
|
|
8696
|
-
|
|
8697
|
-
/**
|
|
8698
|
-
* Checks if `value` is classified as a `Symbol` primitive or object.
|
|
8699
|
-
*
|
|
8700
|
-
* @static
|
|
8701
|
-
* @memberOf _
|
|
8702
|
-
* @since 4.0.0
|
|
8703
|
-
* @category Lang
|
|
8704
|
-
* @param {*} value The value to check.
|
|
8705
|
-
* @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
|
|
8706
|
-
* @example
|
|
8707
|
-
*
|
|
8708
|
-
* _.isSymbol(Symbol.iterator);
|
|
8709
|
-
* // => true
|
|
8710
|
-
*
|
|
8711
|
-
* _.isSymbol('abc');
|
|
8712
|
-
* // => false
|
|
8713
|
-
*/
|
|
8714
|
-
function isSymbol(value) {
|
|
8715
|
-
return typeof value == 'symbol' ||
|
|
8716
|
-
(isObjectLike(value) && baseGetTag(value) == symbolTag);
|
|
8717
|
-
}
|
|
8718
|
-
|
|
8719
|
-
/** Used to match a single whitespace character. */
|
|
8720
|
-
var reWhitespace = /\s/;
|
|
8721
|
-
|
|
8722
|
-
/**
|
|
8723
|
-
* Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace
|
|
8724
|
-
* character of `string`.
|
|
8725
|
-
*
|
|
8726
|
-
* @private
|
|
8727
|
-
* @param {string} string The string to inspect.
|
|
8728
|
-
* @returns {number} Returns the index of the last non-whitespace character.
|
|
8729
|
-
*/
|
|
8730
|
-
function trimmedEndIndex(string) {
|
|
8731
|
-
var index = string.length;
|
|
8732
|
-
|
|
8733
|
-
while (index-- && reWhitespace.test(string.charAt(index))) {}
|
|
8734
|
-
return index;
|
|
8735
|
-
}
|
|
8736
|
-
|
|
8737
|
-
/** Used to match leading whitespace. */
|
|
8738
|
-
var reTrimStart = /^\s+/;
|
|
8739
|
-
|
|
8740
|
-
/**
|
|
8741
|
-
* The base implementation of `_.trim`.
|
|
8742
|
-
*
|
|
8743
|
-
* @private
|
|
8744
|
-
* @param {string} string The string to trim.
|
|
8745
|
-
* @returns {string} Returns the trimmed string.
|
|
8746
|
-
*/
|
|
8747
|
-
function baseTrim(string) {
|
|
8748
|
-
return string
|
|
8749
|
-
? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')
|
|
8750
|
-
: string;
|
|
8751
|
-
}
|
|
8752
|
-
|
|
8753
|
-
/**
|
|
8754
|
-
* Checks if `value` is the
|
|
8755
|
-
* [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
|
|
8756
|
-
* of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
|
|
8757
|
-
*
|
|
8758
|
-
* @static
|
|
8759
|
-
* @memberOf _
|
|
8760
|
-
* @since 0.1.0
|
|
8761
|
-
* @category Lang
|
|
8762
|
-
* @param {*} value The value to check.
|
|
8763
|
-
* @returns {boolean} Returns `true` if `value` is an object, else `false`.
|
|
8764
|
-
* @example
|
|
8765
|
-
*
|
|
8766
|
-
* _.isObject({});
|
|
8767
|
-
* // => true
|
|
8768
|
-
*
|
|
8769
|
-
* _.isObject([1, 2, 3]);
|
|
8770
|
-
* // => true
|
|
8771
|
-
*
|
|
8772
|
-
* _.isObject(_.noop);
|
|
8773
|
-
* // => true
|
|
8774
|
-
*
|
|
8775
|
-
* _.isObject(null);
|
|
8776
|
-
* // => false
|
|
8777
|
-
*/
|
|
8778
|
-
function isObject$1(value) {
|
|
8779
|
-
var type = typeof value;
|
|
8780
|
-
return value != null && (type == 'object' || type == 'function');
|
|
8781
|
-
}
|
|
8782
|
-
|
|
8783
|
-
/** Used as references for various `Number` constants. */
|
|
8784
|
-
var NAN = 0 / 0;
|
|
8785
|
-
|
|
8786
|
-
/** Used to detect bad signed hexadecimal string values. */
|
|
8787
|
-
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
|
|
8788
|
-
|
|
8789
|
-
/** Used to detect binary string values. */
|
|
8790
|
-
var reIsBinary = /^0b[01]+$/i;
|
|
8791
|
-
|
|
8792
|
-
/** Used to detect octal string values. */
|
|
8793
|
-
var reIsOctal = /^0o[0-7]+$/i;
|
|
8794
|
-
|
|
8795
|
-
/** Built-in method references without a dependency on `root`. */
|
|
8796
|
-
var freeParseInt = parseInt;
|
|
8797
|
-
|
|
8798
|
-
/**
|
|
8799
|
-
* Converts `value` to a number.
|
|
8800
|
-
*
|
|
8801
|
-
* @static
|
|
8802
|
-
* @memberOf _
|
|
8803
|
-
* @since 4.0.0
|
|
8804
|
-
* @category Lang
|
|
8805
|
-
* @param {*} value The value to process.
|
|
8806
|
-
* @returns {number} Returns the number.
|
|
8807
|
-
* @example
|
|
8808
|
-
*
|
|
8809
|
-
* _.toNumber(3.2);
|
|
8810
|
-
* // => 3.2
|
|
8811
|
-
*
|
|
8812
|
-
* _.toNumber(Number.MIN_VALUE);
|
|
8813
|
-
* // => 5e-324
|
|
8814
|
-
*
|
|
8815
|
-
* _.toNumber(Infinity);
|
|
8816
|
-
* // => Infinity
|
|
8817
|
-
*
|
|
8818
|
-
* _.toNumber('3.2');
|
|
8819
|
-
* // => 3.2
|
|
8820
|
-
*/
|
|
8821
|
-
function toNumber(value) {
|
|
8822
|
-
if (typeof value == 'number') {
|
|
8823
|
-
return value;
|
|
8824
|
-
}
|
|
8825
|
-
if (isSymbol(value)) {
|
|
8826
|
-
return NAN;
|
|
8827
|
-
}
|
|
8828
|
-
if (isObject$1(value)) {
|
|
8829
|
-
var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
|
|
8830
|
-
value = isObject$1(other) ? (other + '') : other;
|
|
8831
|
-
}
|
|
8832
|
-
if (typeof value != 'string') {
|
|
8833
|
-
return value === 0 ? value : +value;
|
|
8834
|
-
}
|
|
8835
|
-
value = baseTrim(value);
|
|
8836
|
-
var isBinary = reIsBinary.test(value);
|
|
8837
|
-
return (isBinary || reIsOctal.test(value))
|
|
8838
|
-
? freeParseInt(value.slice(2), isBinary ? 2 : 8)
|
|
8839
|
-
: (reIsBadHex.test(value) ? NAN : +value);
|
|
8840
|
-
}
|
|
8841
|
-
|
|
8842
|
-
/**
|
|
8843
|
-
* Gets the timestamp of the number of milliseconds that have elapsed since
|
|
8844
|
-
* the Unix epoch (1 January 1970 00:00:00 UTC).
|
|
8845
|
-
*
|
|
8846
|
-
* @static
|
|
8847
|
-
* @memberOf _
|
|
8848
|
-
* @since 2.4.0
|
|
8849
|
-
* @category Date
|
|
8850
|
-
* @returns {number} Returns the timestamp.
|
|
8851
|
-
* @example
|
|
8852
|
-
*
|
|
8853
|
-
* _.defer(function(stamp) {
|
|
8854
|
-
* console.log(_.now() - stamp);
|
|
8855
|
-
* }, _.now());
|
|
8856
|
-
* // => Logs the number of milliseconds it took for the deferred invocation.
|
|
8857
|
-
*/
|
|
8858
|
-
var now = function() {
|
|
8859
|
-
return root$1.Date.now();
|
|
8561
|
+
const debounce = (callback, wait = 0) => {
|
|
8562
|
+
let timeoutId;
|
|
8563
|
+
return (...args) => {
|
|
8564
|
+
if (timeoutId) {
|
|
8565
|
+
clearTimeout(timeoutId);
|
|
8566
|
+
}
|
|
8567
|
+
timeoutId = setTimeout(() => {
|
|
8568
|
+
timeoutId = undefined;
|
|
8569
|
+
callback(...args);
|
|
8570
|
+
}, wait);
|
|
8571
|
+
};
|
|
8860
8572
|
};
|
|
8861
8573
|
|
|
8862
|
-
var now$1 = now;
|
|
8863
|
-
|
|
8864
|
-
/** Error message constants. */
|
|
8865
|
-
var FUNC_ERROR_TEXT = 'Expected a function';
|
|
8866
|
-
|
|
8867
|
-
/* Built-in method references for those with the same name as other `lodash` methods. */
|
|
8868
|
-
var nativeMax = Math.max,
|
|
8869
|
-
nativeMin = Math.min;
|
|
8870
|
-
|
|
8871
|
-
/**
|
|
8872
|
-
* Creates a debounced function that delays invoking `func` until after `wait`
|
|
8873
|
-
* milliseconds have elapsed since the last time the debounced function was
|
|
8874
|
-
* invoked. The debounced function comes with a `cancel` method to cancel
|
|
8875
|
-
* delayed `func` invocations and a `flush` method to immediately invoke them.
|
|
8876
|
-
* Provide `options` to indicate whether `func` should be invoked on the
|
|
8877
|
-
* leading and/or trailing edge of the `wait` timeout. The `func` is invoked
|
|
8878
|
-
* with the last arguments provided to the debounced function. Subsequent
|
|
8879
|
-
* calls to the debounced function return the result of the last `func`
|
|
8880
|
-
* invocation.
|
|
8881
|
-
*
|
|
8882
|
-
* **Note:** If `leading` and `trailing` options are `true`, `func` is
|
|
8883
|
-
* invoked on the trailing edge of the timeout only if the debounced function
|
|
8884
|
-
* is invoked more than once during the `wait` timeout.
|
|
8885
|
-
*
|
|
8886
|
-
* If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
|
|
8887
|
-
* until to the next tick, similar to `setTimeout` with a timeout of `0`.
|
|
8888
|
-
*
|
|
8889
|
-
* See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
|
|
8890
|
-
* for details over the differences between `_.debounce` and `_.throttle`.
|
|
8891
|
-
*
|
|
8892
|
-
* @static
|
|
8893
|
-
* @memberOf _
|
|
8894
|
-
* @since 0.1.0
|
|
8895
|
-
* @category Function
|
|
8896
|
-
* @param {Function} func The function to debounce.
|
|
8897
|
-
* @param {number} [wait=0] The number of milliseconds to delay.
|
|
8898
|
-
* @param {Object} [options={}] The options object.
|
|
8899
|
-
* @param {boolean} [options.leading=false]
|
|
8900
|
-
* Specify invoking on the leading edge of the timeout.
|
|
8901
|
-
* @param {number} [options.maxWait]
|
|
8902
|
-
* The maximum time `func` is allowed to be delayed before it's invoked.
|
|
8903
|
-
* @param {boolean} [options.trailing=true]
|
|
8904
|
-
* Specify invoking on the trailing edge of the timeout.
|
|
8905
|
-
* @returns {Function} Returns the new debounced function.
|
|
8906
|
-
* @example
|
|
8907
|
-
*
|
|
8908
|
-
* // Avoid costly calculations while the window size is in flux.
|
|
8909
|
-
* jQuery(window).on('resize', _.debounce(calculateLayout, 150));
|
|
8910
|
-
*
|
|
8911
|
-
* // Invoke `sendMail` when clicked, debouncing subsequent calls.
|
|
8912
|
-
* jQuery(element).on('click', _.debounce(sendMail, 300, {
|
|
8913
|
-
* 'leading': true,
|
|
8914
|
-
* 'trailing': false
|
|
8915
|
-
* }));
|
|
8916
|
-
*
|
|
8917
|
-
* // Ensure `batchLog` is invoked once after 1 second of debounced calls.
|
|
8918
|
-
* var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
|
|
8919
|
-
* var source = new EventSource('/stream');
|
|
8920
|
-
* jQuery(source).on('message', debounced);
|
|
8921
|
-
*
|
|
8922
|
-
* // Cancel the trailing debounced invocation.
|
|
8923
|
-
* jQuery(window).on('popstate', debounced.cancel);
|
|
8924
|
-
*/
|
|
8925
|
-
function debounce(func, wait, options) {
|
|
8926
|
-
var lastArgs,
|
|
8927
|
-
lastThis,
|
|
8928
|
-
maxWait,
|
|
8929
|
-
result,
|
|
8930
|
-
timerId,
|
|
8931
|
-
lastCallTime,
|
|
8932
|
-
lastInvokeTime = 0,
|
|
8933
|
-
leading = false,
|
|
8934
|
-
maxing = false,
|
|
8935
|
-
trailing = true;
|
|
8936
|
-
|
|
8937
|
-
if (typeof func != 'function') {
|
|
8938
|
-
throw new TypeError(FUNC_ERROR_TEXT);
|
|
8939
|
-
}
|
|
8940
|
-
wait = toNumber(wait) || 0;
|
|
8941
|
-
if (isObject$1(options)) {
|
|
8942
|
-
leading = !!options.leading;
|
|
8943
|
-
maxing = 'maxWait' in options;
|
|
8944
|
-
maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
|
|
8945
|
-
trailing = 'trailing' in options ? !!options.trailing : trailing;
|
|
8946
|
-
}
|
|
8947
|
-
|
|
8948
|
-
function invokeFunc(time) {
|
|
8949
|
-
var args = lastArgs,
|
|
8950
|
-
thisArg = lastThis;
|
|
8951
|
-
|
|
8952
|
-
lastArgs = lastThis = undefined;
|
|
8953
|
-
lastInvokeTime = time;
|
|
8954
|
-
result = func.apply(thisArg, args);
|
|
8955
|
-
return result;
|
|
8956
|
-
}
|
|
8957
|
-
|
|
8958
|
-
function leadingEdge(time) {
|
|
8959
|
-
// Reset any `maxWait` timer.
|
|
8960
|
-
lastInvokeTime = time;
|
|
8961
|
-
// Start the timer for the trailing edge.
|
|
8962
|
-
timerId = setTimeout(timerExpired, wait);
|
|
8963
|
-
// Invoke the leading edge.
|
|
8964
|
-
return leading ? invokeFunc(time) : result;
|
|
8965
|
-
}
|
|
8966
|
-
|
|
8967
|
-
function remainingWait(time) {
|
|
8968
|
-
var timeSinceLastCall = time - lastCallTime,
|
|
8969
|
-
timeSinceLastInvoke = time - lastInvokeTime,
|
|
8970
|
-
timeWaiting = wait - timeSinceLastCall;
|
|
8971
|
-
|
|
8972
|
-
return maxing
|
|
8973
|
-
? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
|
|
8974
|
-
: timeWaiting;
|
|
8975
|
-
}
|
|
8976
|
-
|
|
8977
|
-
function shouldInvoke(time) {
|
|
8978
|
-
var timeSinceLastCall = time - lastCallTime,
|
|
8979
|
-
timeSinceLastInvoke = time - lastInvokeTime;
|
|
8980
|
-
|
|
8981
|
-
// Either this is the first call, activity has stopped and we're at the
|
|
8982
|
-
// trailing edge, the system time has gone backwards and we're treating
|
|
8983
|
-
// it as the trailing edge, or we've hit the `maxWait` limit.
|
|
8984
|
-
return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
|
|
8985
|
-
(timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
|
|
8986
|
-
}
|
|
8987
|
-
|
|
8988
|
-
function timerExpired() {
|
|
8989
|
-
var time = now$1();
|
|
8990
|
-
if (shouldInvoke(time)) {
|
|
8991
|
-
return trailingEdge(time);
|
|
8992
|
-
}
|
|
8993
|
-
// Restart the timer.
|
|
8994
|
-
timerId = setTimeout(timerExpired, remainingWait(time));
|
|
8995
|
-
}
|
|
8996
|
-
|
|
8997
|
-
function trailingEdge(time) {
|
|
8998
|
-
timerId = undefined;
|
|
8999
|
-
|
|
9000
|
-
// Only invoke if we have `lastArgs` which means `func` has been
|
|
9001
|
-
// debounced at least once.
|
|
9002
|
-
if (trailing && lastArgs) {
|
|
9003
|
-
return invokeFunc(time);
|
|
9004
|
-
}
|
|
9005
|
-
lastArgs = lastThis = undefined;
|
|
9006
|
-
return result;
|
|
9007
|
-
}
|
|
9008
|
-
|
|
9009
|
-
function cancel() {
|
|
9010
|
-
if (timerId !== undefined) {
|
|
9011
|
-
clearTimeout(timerId);
|
|
9012
|
-
}
|
|
9013
|
-
lastInvokeTime = 0;
|
|
9014
|
-
lastArgs = lastCallTime = lastThis = timerId = undefined;
|
|
9015
|
-
}
|
|
9016
|
-
|
|
9017
|
-
function flush() {
|
|
9018
|
-
return timerId === undefined ? result : trailingEdge(now$1());
|
|
9019
|
-
}
|
|
9020
|
-
|
|
9021
|
-
function debounced() {
|
|
9022
|
-
var time = now$1(),
|
|
9023
|
-
isInvoking = shouldInvoke(time);
|
|
9024
|
-
|
|
9025
|
-
lastArgs = arguments;
|
|
9026
|
-
lastThis = this;
|
|
9027
|
-
lastCallTime = time;
|
|
9028
|
-
|
|
9029
|
-
if (isInvoking) {
|
|
9030
|
-
if (timerId === undefined) {
|
|
9031
|
-
return leadingEdge(lastCallTime);
|
|
9032
|
-
}
|
|
9033
|
-
if (maxing) {
|
|
9034
|
-
// Handle invocations in a tight loop.
|
|
9035
|
-
clearTimeout(timerId);
|
|
9036
|
-
timerId = setTimeout(timerExpired, wait);
|
|
9037
|
-
return invokeFunc(lastCallTime);
|
|
9038
|
-
}
|
|
9039
|
-
}
|
|
9040
|
-
if (timerId === undefined) {
|
|
9041
|
-
timerId = setTimeout(timerExpired, wait);
|
|
9042
|
-
}
|
|
9043
|
-
return result;
|
|
9044
|
-
}
|
|
9045
|
-
debounced.cancel = cancel;
|
|
9046
|
-
debounced.flush = flush;
|
|
9047
|
-
return debounced;
|
|
9048
|
-
}
|
|
9049
|
-
|
|
9050
8574
|
class InputPasswordController extends InputIconController {
|
|
9051
8575
|
constructor(component, name, host) {
|
|
9052
8576
|
super(component, name, host);
|
|
@@ -12874,6 +12398,71 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
|
12874
12398
|
return coords;
|
|
12875
12399
|
}
|
|
12876
12400
|
|
|
12401
|
+
/**
|
|
12402
|
+
* Resolves with an object of overflow side offsets that determine how much the
|
|
12403
|
+
* element is overflowing a given clipping boundary on each side.
|
|
12404
|
+
* - positive = overflowing the boundary by that number of pixels
|
|
12405
|
+
* - negative = how many pixels left before it will overflow
|
|
12406
|
+
* - 0 = lies flush with the boundary
|
|
12407
|
+
* @see https://floating-ui.com/docs/detectOverflow
|
|
12408
|
+
*/
|
|
12409
|
+
async function detectOverflow(state, options) {
|
|
12410
|
+
var _await$platform$isEle;
|
|
12411
|
+
if (options === void 0) {
|
|
12412
|
+
options = {};
|
|
12413
|
+
}
|
|
12414
|
+
const {
|
|
12415
|
+
x,
|
|
12416
|
+
y,
|
|
12417
|
+
platform,
|
|
12418
|
+
rects,
|
|
12419
|
+
elements,
|
|
12420
|
+
strategy
|
|
12421
|
+
} = state;
|
|
12422
|
+
const {
|
|
12423
|
+
boundary = 'clippingAncestors',
|
|
12424
|
+
rootBoundary = 'viewport',
|
|
12425
|
+
elementContext = 'floating',
|
|
12426
|
+
altBoundary = false,
|
|
12427
|
+
padding = 0
|
|
12428
|
+
} = evaluate(options, state);
|
|
12429
|
+
const paddingObject = getPaddingObject(padding);
|
|
12430
|
+
const altContext = elementContext === 'floating' ? 'reference' : 'floating';
|
|
12431
|
+
const element = elements[altBoundary ? altContext : elementContext];
|
|
12432
|
+
const clippingClientRect = rectToClientRect(await platform.getClippingRect({
|
|
12433
|
+
element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),
|
|
12434
|
+
boundary,
|
|
12435
|
+
rootBoundary,
|
|
12436
|
+
strategy
|
|
12437
|
+
}));
|
|
12438
|
+
const rect = elementContext === 'floating' ? {
|
|
12439
|
+
x,
|
|
12440
|
+
y,
|
|
12441
|
+
width: rects.floating.width,
|
|
12442
|
+
height: rects.floating.height
|
|
12443
|
+
} : rects.reference;
|
|
12444
|
+
const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
|
|
12445
|
+
const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {
|
|
12446
|
+
x: 1,
|
|
12447
|
+
y: 1
|
|
12448
|
+
} : {
|
|
12449
|
+
x: 1,
|
|
12450
|
+
y: 1
|
|
12451
|
+
};
|
|
12452
|
+
const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
|
|
12453
|
+
elements,
|
|
12454
|
+
rect,
|
|
12455
|
+
offsetParent,
|
|
12456
|
+
strategy
|
|
12457
|
+
}) : rect);
|
|
12458
|
+
return {
|
|
12459
|
+
top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
|
|
12460
|
+
bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
|
|
12461
|
+
left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
|
|
12462
|
+
right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
|
|
12463
|
+
};
|
|
12464
|
+
}
|
|
12465
|
+
|
|
12877
12466
|
/**
|
|
12878
12467
|
* Computes the `x` and `y` coordinates that will place the floating element
|
|
12879
12468
|
* next to a given reference element.
|
|
@@ -12903,6 +12492,7 @@ const computePosition$1 = async (reference, floating, config) => {
|
|
|
12903
12492
|
let middlewareData = {};
|
|
12904
12493
|
let resetCount = 0;
|
|
12905
12494
|
for (let i = 0; i < validMiddleware.length; i++) {
|
|
12495
|
+
var _platform$detectOverf;
|
|
12906
12496
|
const {
|
|
12907
12497
|
name,
|
|
12908
12498
|
fn
|
|
@@ -12920,7 +12510,10 @@ const computePosition$1 = async (reference, floating, config) => {
|
|
|
12920
12510
|
strategy,
|
|
12921
12511
|
middlewareData,
|
|
12922
12512
|
rects,
|
|
12923
|
-
platform
|
|
12513
|
+
platform: {
|
|
12514
|
+
...platform,
|
|
12515
|
+
detectOverflow: (_platform$detectOverf = platform.detectOverflow) != null ? _platform$detectOverf : detectOverflow
|
|
12516
|
+
},
|
|
12924
12517
|
elements: {
|
|
12925
12518
|
reference,
|
|
12926
12519
|
floating
|
|
@@ -12965,71 +12558,6 @@ const computePosition$1 = async (reference, floating, config) => {
|
|
|
12965
12558
|
};
|
|
12966
12559
|
};
|
|
12967
12560
|
|
|
12968
|
-
/**
|
|
12969
|
-
* Resolves with an object of overflow side offsets that determine how much the
|
|
12970
|
-
* element is overflowing a given clipping boundary on each side.
|
|
12971
|
-
* - positive = overflowing the boundary by that number of pixels
|
|
12972
|
-
* - negative = how many pixels left before it will overflow
|
|
12973
|
-
* - 0 = lies flush with the boundary
|
|
12974
|
-
* @see https://floating-ui.com/docs/detectOverflow
|
|
12975
|
-
*/
|
|
12976
|
-
async function detectOverflow(state, options) {
|
|
12977
|
-
var _await$platform$isEle;
|
|
12978
|
-
if (options === void 0) {
|
|
12979
|
-
options = {};
|
|
12980
|
-
}
|
|
12981
|
-
const {
|
|
12982
|
-
x,
|
|
12983
|
-
y,
|
|
12984
|
-
platform,
|
|
12985
|
-
rects,
|
|
12986
|
-
elements,
|
|
12987
|
-
strategy
|
|
12988
|
-
} = state;
|
|
12989
|
-
const {
|
|
12990
|
-
boundary = 'clippingAncestors',
|
|
12991
|
-
rootBoundary = 'viewport',
|
|
12992
|
-
elementContext = 'floating',
|
|
12993
|
-
altBoundary = false,
|
|
12994
|
-
padding = 0
|
|
12995
|
-
} = evaluate(options, state);
|
|
12996
|
-
const paddingObject = getPaddingObject(padding);
|
|
12997
|
-
const altContext = elementContext === 'floating' ? 'reference' : 'floating';
|
|
12998
|
-
const element = elements[altBoundary ? altContext : elementContext];
|
|
12999
|
-
const clippingClientRect = rectToClientRect(await platform.getClippingRect({
|
|
13000
|
-
element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),
|
|
13001
|
-
boundary,
|
|
13002
|
-
rootBoundary,
|
|
13003
|
-
strategy
|
|
13004
|
-
}));
|
|
13005
|
-
const rect = elementContext === 'floating' ? {
|
|
13006
|
-
x,
|
|
13007
|
-
y,
|
|
13008
|
-
width: rects.floating.width,
|
|
13009
|
-
height: rects.floating.height
|
|
13010
|
-
} : rects.reference;
|
|
13011
|
-
const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
|
|
13012
|
-
const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {
|
|
13013
|
-
x: 1,
|
|
13014
|
-
y: 1
|
|
13015
|
-
} : {
|
|
13016
|
-
x: 1,
|
|
13017
|
-
y: 1
|
|
13018
|
-
};
|
|
13019
|
-
const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
|
|
13020
|
-
elements,
|
|
13021
|
-
rect,
|
|
13022
|
-
offsetParent,
|
|
13023
|
-
strategy
|
|
13024
|
-
}) : rect);
|
|
13025
|
-
return {
|
|
13026
|
-
top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
|
|
13027
|
-
bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
|
|
13028
|
-
left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
|
|
13029
|
-
right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
|
|
13030
|
-
};
|
|
13031
|
-
}
|
|
13032
|
-
|
|
13033
12561
|
/**
|
|
13034
12562
|
* Provides data to position an inner element of the floating element so that it
|
|
13035
12563
|
* appears centered to the reference element.
|
|
@@ -13151,7 +12679,7 @@ const autoPlacement = function (options) {
|
|
|
13151
12679
|
...detectOverflowOptions
|
|
13152
12680
|
} = evaluate(options, state);
|
|
13153
12681
|
const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
|
|
13154
|
-
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
12682
|
+
const overflow = await platform.detectOverflow(state, detectOverflowOptions);
|
|
13155
12683
|
const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
|
|
13156
12684
|
const currentPlacement = placements$1[currentIndex];
|
|
13157
12685
|
if (currentPlacement == null) {
|
|
@@ -13265,7 +12793,7 @@ const flip$1 = function (options) {
|
|
|
13265
12793
|
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
13266
12794
|
}
|
|
13267
12795
|
const placements = [initialPlacement, ...fallbackPlacements];
|
|
13268
|
-
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
12796
|
+
const overflow = await platform.detectOverflow(state, detectOverflowOptions);
|
|
13269
12797
|
const overflows = [];
|
|
13270
12798
|
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
|
|
13271
12799
|
if (checkMainAxis) {
|
|
@@ -13372,7 +12900,8 @@ const hide = function (options) {
|
|
|
13372
12900
|
options,
|
|
13373
12901
|
async fn(state) {
|
|
13374
12902
|
const {
|
|
13375
|
-
rects
|
|
12903
|
+
rects,
|
|
12904
|
+
platform
|
|
13376
12905
|
} = state;
|
|
13377
12906
|
const {
|
|
13378
12907
|
strategy = 'referenceHidden',
|
|
@@ -13381,7 +12910,7 @@ const hide = function (options) {
|
|
|
13381
12910
|
switch (strategy) {
|
|
13382
12911
|
case 'referenceHidden':
|
|
13383
12912
|
{
|
|
13384
|
-
const overflow = await detectOverflow(state, {
|
|
12913
|
+
const overflow = await platform.detectOverflow(state, {
|
|
13385
12914
|
...detectOverflowOptions,
|
|
13386
12915
|
elementContext: 'reference'
|
|
13387
12916
|
});
|
|
@@ -13395,7 +12924,7 @@ const hide = function (options) {
|
|
|
13395
12924
|
}
|
|
13396
12925
|
case 'escaped':
|
|
13397
12926
|
{
|
|
13398
|
-
const overflow = await detectOverflow(state, {
|
|
12927
|
+
const overflow = await platform.detectOverflow(state, {
|
|
13399
12928
|
...detectOverflowOptions,
|
|
13400
12929
|
altBoundary: true
|
|
13401
12930
|
});
|
|
@@ -13649,7 +13178,8 @@ const shift$1 = function (options) {
|
|
|
13649
13178
|
const {
|
|
13650
13179
|
x,
|
|
13651
13180
|
y,
|
|
13652
|
-
placement
|
|
13181
|
+
placement,
|
|
13182
|
+
platform
|
|
13653
13183
|
} = state;
|
|
13654
13184
|
const {
|
|
13655
13185
|
mainAxis: checkMainAxis = true,
|
|
@@ -13672,7 +13202,7 @@ const shift$1 = function (options) {
|
|
|
13672
13202
|
x,
|
|
13673
13203
|
y
|
|
13674
13204
|
};
|
|
13675
|
-
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
13205
|
+
const overflow = await platform.detectOverflow(state, detectOverflowOptions);
|
|
13676
13206
|
const crossAxis = getSideAxis(getSide(placement));
|
|
13677
13207
|
const mainAxis = getOppositeAxis(crossAxis);
|
|
13678
13208
|
let mainAxisCoord = coords[mainAxis];
|
|
@@ -13804,7 +13334,7 @@ const size = function (options) {
|
|
|
13804
13334
|
apply = () => {},
|
|
13805
13335
|
...detectOverflowOptions
|
|
13806
13336
|
} = evaluate(options, state);
|
|
13807
|
-
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
13337
|
+
const overflow = await platform.detectOverflow(state, detectOverflowOptions);
|
|
13808
13338
|
const side = getSide(placement);
|
|
13809
13339
|
const alignment = getAlignment(placement);
|
|
13810
13340
|
const isYAxis = getSideAxis(placement) === 'y';
|
|
@@ -26070,6 +25600,7 @@ class KolTabs {
|
|
|
26070
25600
|
div.setAttribute('id', `tabpanel-${i}`);
|
|
26071
25601
|
div.setAttribute('role', 'tabpanel');
|
|
26072
25602
|
div.setAttribute('hidden', '');
|
|
25603
|
+
div.setAttribute('tabindex', '0');
|
|
26073
25604
|
const slot = document.createElement('slot');
|
|
26074
25605
|
slot.setAttribute('name', `tabpanel-slot-${i}`);
|
|
26075
25606
|
div.appendChild(slot);
|
|
@@ -26893,13 +26424,19 @@ class KolTooltipWc {
|
|
|
26893
26424
|
this.hideTooltip();
|
|
26894
26425
|
}
|
|
26895
26426
|
};
|
|
26896
|
-
this.
|
|
26427
|
+
this.isInsideTriggerOrTooltip = (node) => {
|
|
26428
|
+
var _a, _b;
|
|
26429
|
+
return Boolean(node && (((_a = this.previousSibling) === null || _a === void 0 ? void 0 : _a.contains(node)) || ((_b = this.tooltipElement) === null || _b === void 0 ? void 0 : _b.contains(node))));
|
|
26430
|
+
};
|
|
26431
|
+
this.handleMouseOver = (event) => {
|
|
26432
|
+
if (this.isInsideTriggerOrTooltip(event.relatedTarget)) {
|
|
26433
|
+
return;
|
|
26434
|
+
}
|
|
26897
26435
|
this.hasMouseIn = true;
|
|
26898
26436
|
this.showOrHideTooltip();
|
|
26899
26437
|
};
|
|
26900
|
-
this.
|
|
26901
|
-
|
|
26902
|
-
this.hasMouseIn = (_b = (_a = this.tooltipElement) === null || _a === void 0 ? void 0 : _a.contains(event.relatedTarget)) !== null && _b !== void 0 ? _b : false;
|
|
26438
|
+
this.handleMouseOut = (event) => {
|
|
26439
|
+
this.hasMouseIn = this.isInsideTriggerOrTooltip(event.relatedTarget);
|
|
26903
26440
|
this.showOrHideTooltip();
|
|
26904
26441
|
};
|
|
26905
26442
|
this.handleFocusIn = () => {
|
|
@@ -26911,14 +26448,14 @@ class KolTooltipWc {
|
|
|
26911
26448
|
this.showOrHideTooltip();
|
|
26912
26449
|
};
|
|
26913
26450
|
this.addListeners = (el) => {
|
|
26914
|
-
el.addEventListener('
|
|
26915
|
-
el.addEventListener('
|
|
26451
|
+
el.addEventListener('mouseover', this.handleMouseOver);
|
|
26452
|
+
el.addEventListener('mouseout', this.handleMouseOut);
|
|
26916
26453
|
el.addEventListener('focusin', this.handleFocusIn);
|
|
26917
26454
|
el.addEventListener('focusout', this.handleFocusout);
|
|
26918
26455
|
};
|
|
26919
26456
|
this.removeListeners = (el) => {
|
|
26920
|
-
el.removeEventListener('
|
|
26921
|
-
el.removeEventListener('
|
|
26457
|
+
el.removeEventListener('mouseover', this.handleMouseOver);
|
|
26458
|
+
el.removeEventListener('mouseout', this.handleMouseOut);
|
|
26922
26459
|
el.removeEventListener('focusin', this.handleFocusIn);
|
|
26923
26460
|
el.removeEventListener('focusout', this.handleFocusout);
|
|
26924
26461
|
};
|
|
@@ -26970,7 +26507,7 @@ class KolTooltipWc {
|
|
|
26970
26507
|
}
|
|
26971
26508
|
}
|
|
26972
26509
|
render() {
|
|
26973
|
-
return (hAsync(Host, { key: '
|
|
26510
|
+
return (hAsync(Host, { key: 'd4278e8c9307b1093a6f8e4d109c5b2b6cb1c769', class: "kol-tooltip-wc" }, this.state._label !== '' && (hAsync("div", { key: 'dc5aaea839ff71909abd425d128c87579d9c0c0d', class: "tooltip-floating", ref: this.catchTooltipElement }, hAsync("div", { key: '67317c8f02cd38102546f81ba057d6bf2d3e950e', class: "tooltip-area tooltip-arrow", ref: this.catchArrowElement }), hAsync(KolSpanWcTag, { key: 'db9627e640effd99584da3943c786ba0039f481f', class: "tooltip-area tooltip-content", id: this.state._id, _badgeText: this._badgeText, _label: this.state._label })))));
|
|
26974
26511
|
}
|
|
26975
26512
|
validateBadgeText(value) {
|
|
26976
26513
|
validateBadgeText(this, value);
|