@public-ui/hydrate 4.1.1-rc.2 → 4.1.1
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 +124 -149
- package/dist/index.mjs +124 -149
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -146,7 +146,7 @@ function _mergeNamespaces(n, m) {
|
|
|
146
146
|
|
|
147
147
|
const NAMESPACE = 'kolibri';
|
|
148
148
|
const BUILD = /* kolibri */ { hydratedSelectorName: "hydrated", slotRelocation: true, state: true, updatable: true};
|
|
149
|
-
const Env = /* kolibri */ {"kolibriVersion":"4.1.1
|
|
149
|
+
const Env = /* kolibri */ {"kolibriVersion":"4.1.1"};
|
|
150
150
|
|
|
151
151
|
function getDefaultExportFromCjs (x) {
|
|
152
152
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
@@ -6924,7 +6924,13 @@ function createPropDefinition(normalize, validate = () => true) {
|
|
|
6924
6924
|
return {
|
|
6925
6925
|
normalize,
|
|
6926
6926
|
validate,
|
|
6927
|
-
apply(value, callback) {
|
|
6927
|
+
apply(value, callback, defaultValue) {
|
|
6928
|
+
if (value === undefined || value === null) {
|
|
6929
|
+
if (defaultValue !== undefined) {
|
|
6930
|
+
callback(defaultValue);
|
|
6931
|
+
}
|
|
6932
|
+
return;
|
|
6933
|
+
}
|
|
6928
6934
|
try {
|
|
6929
6935
|
const normalized = this.normalize(value);
|
|
6930
6936
|
if (this.validate(normalized)) {
|
|
@@ -6941,7 +6947,13 @@ function createDependentPropDefinition(normalize, validate = () => true) {
|
|
|
6941
6947
|
return {
|
|
6942
6948
|
normalize,
|
|
6943
6949
|
validate,
|
|
6944
|
-
apply(value, callback, deps) {
|
|
6950
|
+
apply(value, callback, deps, defaultValue) {
|
|
6951
|
+
if (value === undefined || value === null) {
|
|
6952
|
+
if (defaultValue !== undefined) {
|
|
6953
|
+
callback(defaultValue);
|
|
6954
|
+
}
|
|
6955
|
+
return;
|
|
6956
|
+
}
|
|
6945
6957
|
try {
|
|
6946
6958
|
const normalized = this.normalize(value, deps);
|
|
6947
6959
|
if (this.validate(normalized, deps)) {
|
|
@@ -6964,18 +6976,6 @@ function normalizeString(value) {
|
|
|
6964
6976
|
}
|
|
6965
6977
|
throw new Error(`Invalid string: ${value}`);
|
|
6966
6978
|
}
|
|
6967
|
-
function normalizeInteger(value) {
|
|
6968
|
-
if (typeof value === 'number') {
|
|
6969
|
-
return Number.isInteger(value) ? value : Math.round(value);
|
|
6970
|
-
}
|
|
6971
|
-
if (typeof value === 'string') {
|
|
6972
|
-
const parsed = parseInt(value, 10);
|
|
6973
|
-
if (!isNaN(parsed)) {
|
|
6974
|
-
return parsed;
|
|
6975
|
-
}
|
|
6976
|
-
}
|
|
6977
|
-
throw new Error(`Invalid integer: ${value}`);
|
|
6978
|
-
}
|
|
6979
6979
|
function normalizeNumber(value) {
|
|
6980
6980
|
if (typeof value === 'number') {
|
|
6981
6981
|
return value;
|
|
@@ -7026,30 +7026,8 @@ function validator(value) {
|
|
|
7026
7026
|
}
|
|
7027
7027
|
const colorProp = createPropDefinition(normalizer, validator);
|
|
7028
7028
|
|
|
7029
|
-
const countProp = createPropDefinition(normalizeInteger, (v) => v >= 0);
|
|
7030
|
-
|
|
7031
7029
|
const hrefProp = createPropDefinition(normalizeString, (v) => v.length > 0);
|
|
7032
7030
|
|
|
7033
|
-
const formatNameAsInitial = (name) => {
|
|
7034
|
-
if (name.length === 0) {
|
|
7035
|
-
return '';
|
|
7036
|
-
}
|
|
7037
|
-
return name[0].toUpperCase();
|
|
7038
|
-
};
|
|
7039
|
-
const normalizeInitials = (value) => {
|
|
7040
|
-
if (typeof value !== 'string') {
|
|
7041
|
-
throw new Error(`Invalid initials value: ${JSON.stringify(value)}`);
|
|
7042
|
-
}
|
|
7043
|
-
const names = value.trim().split(/\s+/);
|
|
7044
|
-
const first = names[0];
|
|
7045
|
-
const last = names[names.length - 1];
|
|
7046
|
-
if (names.length >= 2 && first && last) {
|
|
7047
|
-
return `${formatNameAsInitial(first)}${formatNameAsInitial(last)}`;
|
|
7048
|
-
}
|
|
7049
|
-
return formatNameAsInitial(value);
|
|
7050
|
-
};
|
|
7051
|
-
const initialsProp = createPropDefinition(normalizeInitials, (v) => v.length > 0);
|
|
7052
|
-
|
|
7053
7031
|
const labelProp = createPropDefinition(normalizeString, (v) => v.length >= 2 && v.length <= 80);
|
|
7054
7032
|
|
|
7055
7033
|
const LOADING_OPTIONS = ['eager', 'lazy'];
|
|
@@ -7095,9 +7073,10 @@ const QUOTE_VARIANT_SET = new Set(QUOTE_VARIANT_OPTIONS);
|
|
|
7095
7073
|
const variantQuoteProp = createPropDefinition((value) => normalizeString(value), (v) => QUOTE_VARIANT_SET.has(v));
|
|
7096
7074
|
|
|
7097
7075
|
class BaseController {
|
|
7098
|
-
constructor(component
|
|
7076
|
+
constructor(component = {}) {
|
|
7099
7077
|
this.component = component;
|
|
7100
|
-
this.props =
|
|
7078
|
+
this.props = {};
|
|
7079
|
+
this.rawProps = {};
|
|
7101
7080
|
}
|
|
7102
7081
|
setProp(key, value) {
|
|
7103
7082
|
this.props[key] = value;
|
|
@@ -7105,19 +7084,33 @@ class BaseController {
|
|
|
7105
7084
|
getProps() {
|
|
7106
7085
|
return this.props;
|
|
7107
7086
|
}
|
|
7087
|
+
setRawProp(key, value) {
|
|
7088
|
+
this.rawProps[key] = value;
|
|
7089
|
+
}
|
|
7090
|
+
getRawProps() {
|
|
7091
|
+
return this.rawProps;
|
|
7092
|
+
}
|
|
7108
7093
|
setState(key, value) {
|
|
7109
7094
|
this.component[key] = value;
|
|
7110
7095
|
}
|
|
7111
7096
|
}
|
|
7112
7097
|
|
|
7113
|
-
|
|
7114
|
-
|
|
7115
|
-
|
|
7116
|
-
color: { backgroundColor: '#d3d3d3', foregroundColor: '#3f3f3f' },
|
|
7117
|
-
label: '',
|
|
7118
|
-
src: '',
|
|
7119
|
-
});
|
|
7098
|
+
const formatNameAsInitial = (name) => {
|
|
7099
|
+
if (name.length === 0) {
|
|
7100
|
+
return '';
|
|
7120
7101
|
}
|
|
7102
|
+
return name[0].toUpperCase();
|
|
7103
|
+
};
|
|
7104
|
+
const normalizeInitials = (value) => {
|
|
7105
|
+
const names = value.trim().split(/\s+/);
|
|
7106
|
+
const first = names[0];
|
|
7107
|
+
const last = names[names.length - 1];
|
|
7108
|
+
if (names.length >= 2 && first && last) {
|
|
7109
|
+
return `${formatNameAsInitial(first)}${formatNameAsInitial(last)}`;
|
|
7110
|
+
}
|
|
7111
|
+
return formatNameAsInitial(value);
|
|
7112
|
+
};
|
|
7113
|
+
class AvatarController extends BaseController {
|
|
7121
7114
|
componentWillLoad(props) {
|
|
7122
7115
|
const { color, label, src } = props;
|
|
7123
7116
|
this.watchColor(color);
|
|
@@ -7127,20 +7120,21 @@ class AvatarController extends BaseController {
|
|
|
7127
7120
|
watchColor(value) {
|
|
7128
7121
|
colorProp.apply(value, (v) => {
|
|
7129
7122
|
this.setProp('color', v);
|
|
7123
|
+
}, {
|
|
7124
|
+
backgroundColor: '#d3d3d3',
|
|
7125
|
+
foregroundColor: '#3f3f3f',
|
|
7130
7126
|
});
|
|
7131
7127
|
}
|
|
7132
7128
|
watchLabel(value) {
|
|
7133
7129
|
labelProp.apply(value, (v) => {
|
|
7134
7130
|
this.setProp('label', v);
|
|
7135
|
-
|
|
7136
|
-
|
|
7137
|
-
this.setState('initials', v);
|
|
7138
|
-
});
|
|
7131
|
+
this.setState('initials', normalizeInitials(v));
|
|
7132
|
+
}, '');
|
|
7139
7133
|
}
|
|
7140
7134
|
watchSrc(value) {
|
|
7141
7135
|
srcProp.apply(value, (v) => {
|
|
7142
7136
|
this.setProp('src', v);
|
|
7143
|
-
});
|
|
7137
|
+
}, '');
|
|
7144
7138
|
}
|
|
7145
7139
|
}
|
|
7146
7140
|
|
|
@@ -19647,10 +19641,8 @@ const BEM_CLASS_CLICK_BUTTON__LABEL = clickButtonBem('label');
|
|
|
19647
19641
|
const ClickButtonFC = ({ label, handleClick, refButton }) => (hAsync("button", { class: BEM_CLASS_CLICK_BUTTON, ref: refButton, onClick: handleClick, onKeyDown: (event) => event.preventDefault() }, hAsync("span", { class: BEM_CLASS_CLICK_BUTTON__LABEL }, label)));
|
|
19648
19642
|
|
|
19649
19643
|
class ClickButtonController extends BaseController {
|
|
19650
|
-
constructor(
|
|
19651
|
-
super(
|
|
19652
|
-
label: '',
|
|
19653
|
-
});
|
|
19644
|
+
constructor() {
|
|
19645
|
+
super(...arguments);
|
|
19654
19646
|
this.handleClick = () => {
|
|
19655
19647
|
console.log(this, this.buttonRef, 'button clicked');
|
|
19656
19648
|
};
|
|
@@ -19665,7 +19657,7 @@ class ClickButtonController extends BaseController {
|
|
|
19665
19657
|
watchLabel(value) {
|
|
19666
19658
|
labelProp.apply(value, (v) => {
|
|
19667
19659
|
this.setProp('label', v);
|
|
19668
|
-
});
|
|
19660
|
+
}, '');
|
|
19669
19661
|
}
|
|
19670
19662
|
focus() {
|
|
19671
19663
|
var _a;
|
|
@@ -21234,7 +21226,7 @@ const bem = c();
|
|
|
21234
21226
|
const BEM_CLASS_ICON = bem('kol-icon');
|
|
21235
21227
|
const BEM_CLASS_ICON__ICON = bem('kol-icon', 'icon');
|
|
21236
21228
|
|
|
21237
|
-
const defaultStyleCss$y = "/* forward the rem function */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=
|
|
21229
|
+
const defaultStyleCss$y = "/* forward the rem function */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1773045157587\"); /* IE9*/\n src: url(\"kolicons.eot?t=1773045157587#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1773045157587\") format(\"woff2\"), url(\"kolicons.woff?t=1773045157587\") format(\"woff\"), url(\"kolicons.ttf?t=1773045157587\") format(\"truetype\"), url(\"kolicons.svg?t=1773045157587#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n[class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-size: inherit;\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.kolicon-alert-error::before {\n content: \"\\ea01\";\n}\n\n.kolicon-alert-info::before {\n content: \"\\ea02\";\n}\n\n.kolicon-alert-success::before {\n content: \"\\ea03\";\n}\n\n.kolicon-alert-warning::before {\n content: \"\\ea04\";\n}\n\n.kolicon-check::before {\n content: \"\\ea05\";\n}\n\n.kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n}\n\n.kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n}\n\n.kolicon-chevron-down::before {\n content: \"\\ea08\";\n}\n\n.kolicon-chevron-left::before {\n content: \"\\ea09\";\n}\n\n.kolicon-chevron-right::before {\n content: \"\\ea0a\";\n}\n\n.kolicon-chevron-up::before {\n content: \"\\ea0b\";\n}\n\n.kolicon-cogwheel::before {\n content: \"\\ea0c\";\n}\n\n.kolicon-cross::before {\n content: \"\\ea0d\";\n}\n\n.kolicon-eye-closed::before {\n content: \"\\ea0e\";\n}\n\n.kolicon-eye::before {\n content: \"\\ea0f\";\n}\n\n.kolicon-house::before {\n content: \"\\ea10\";\n}\n\n.kolicon-kolibri::before {\n content: \"\\ea11\";\n}\n\n.kolicon-link-external::before {\n content: \"\\ea12\";\n}\n\n.kolicon-link::before {\n content: \"\\ea13\";\n}\n\n.kolicon-minus::before {\n content: \"\\ea14\";\n}\n\n.kolicon-plus::before {\n content: \"\\ea15\";\n}\n\n.kolicon-settings::before {\n content: \"\\ea16\";\n}\n\n.kolicon-sort-asc::before {\n content: \"\\ea17\";\n}\n\n.kolicon-sort-desc::before {\n content: \"\\ea18\";\n}\n\n.kolicon-sort-neutral::before {\n content: \"\\ea19\";\n}\n\n.kolicon-up::before {\n content: \"\\ea1a\";\n}\n\n.kolicon-version::before {\n content: \"\\ea1b\";\n}\n\n@layer kol-component {\n /* :host implicitly inherits font-size, see below */\n :host {\n color: inherit;\n display: contents;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n}";
|
|
21238
21230
|
|
|
21239
21231
|
class KolIcon {
|
|
21240
21232
|
render() {
|
|
@@ -21285,15 +21277,6 @@ const ImageFC = (props) => {
|
|
|
21285
21277
|
};
|
|
21286
21278
|
|
|
21287
21279
|
class ImageController extends BaseController {
|
|
21288
|
-
constructor(states = {}) {
|
|
21289
|
-
super(states, {
|
|
21290
|
-
alt: '',
|
|
21291
|
-
loading: 'lazy',
|
|
21292
|
-
sizes: '',
|
|
21293
|
-
src: '',
|
|
21294
|
-
srcset: '',
|
|
21295
|
-
});
|
|
21296
|
-
}
|
|
21297
21280
|
componentWillLoad(props) {
|
|
21298
21281
|
const { alt, loading, sizes, src, srcset } = props;
|
|
21299
21282
|
this.watchAlt(alt);
|
|
@@ -21305,27 +21288,27 @@ class ImageController extends BaseController {
|
|
|
21305
21288
|
watchAlt(value) {
|
|
21306
21289
|
altProp.apply(value, (v) => {
|
|
21307
21290
|
this.setProp('alt', v);
|
|
21308
|
-
});
|
|
21291
|
+
}, '');
|
|
21309
21292
|
}
|
|
21310
21293
|
watchLoading(value) {
|
|
21311
21294
|
loadingProp.apply(value, (v) => {
|
|
21312
21295
|
this.setProp('loading', v);
|
|
21313
|
-
});
|
|
21296
|
+
}, 'lazy');
|
|
21314
21297
|
}
|
|
21315
21298
|
watchSizes(value) {
|
|
21316
21299
|
sizesProp.apply(value, (v) => {
|
|
21317
21300
|
this.setProp('sizes', v);
|
|
21318
|
-
});
|
|
21301
|
+
}, '');
|
|
21319
21302
|
}
|
|
21320
21303
|
watchSrc(value) {
|
|
21321
21304
|
srcProp.apply(value, (v) => {
|
|
21322
21305
|
this.setProp('src', v);
|
|
21323
|
-
});
|
|
21306
|
+
}, '');
|
|
21324
21307
|
}
|
|
21325
21308
|
watchSrcset(value) {
|
|
21326
21309
|
srcsetProp.apply(value, (v) => {
|
|
21327
21310
|
this.setProp('srcset', v);
|
|
21328
|
-
});
|
|
21311
|
+
}, '');
|
|
21329
21312
|
}
|
|
21330
21313
|
}
|
|
21331
21314
|
|
|
@@ -27797,15 +27780,6 @@ const ProgressFC = (props) => {
|
|
|
27797
27780
|
};
|
|
27798
27781
|
|
|
27799
27782
|
class ProgressController extends BaseController {
|
|
27800
|
-
constructor(states) {
|
|
27801
|
-
super(states, {
|
|
27802
|
-
label: '',
|
|
27803
|
-
max: 100,
|
|
27804
|
-
unit: '%',
|
|
27805
|
-
value: 0,
|
|
27806
|
-
variant: 'bar',
|
|
27807
|
-
});
|
|
27808
|
-
}
|
|
27809
27783
|
componentWillLoad(props) {
|
|
27810
27784
|
const { label, max, unit, value, variant } = props;
|
|
27811
27785
|
this.watchLabel(label);
|
|
@@ -27814,37 +27788,34 @@ class ProgressController extends BaseController {
|
|
|
27814
27788
|
this.watchValue(value);
|
|
27815
27789
|
this.watchVariant(variant);
|
|
27816
27790
|
this.setState('liveValue', this.getProps().value);
|
|
27817
|
-
this.setState('max', this.getProps().max);
|
|
27818
27791
|
this.startLiveValueInterval();
|
|
27819
27792
|
}
|
|
27820
27793
|
watchLabel(value) {
|
|
27821
27794
|
labelProp.apply(value, (v) => {
|
|
27822
27795
|
this.setProp('label', v);
|
|
27823
|
-
});
|
|
27796
|
+
}, '');
|
|
27824
27797
|
}
|
|
27825
27798
|
watchMax(value) {
|
|
27826
27799
|
maxProp.apply(value, (v) => {
|
|
27827
27800
|
this.setProp('max', v);
|
|
27828
|
-
this.
|
|
27829
|
-
});
|
|
27830
|
-
this.watchValue(this.getProps().value);
|
|
27801
|
+
this.watchValue(this.getRawProps().value);
|
|
27802
|
+
}, 100);
|
|
27831
27803
|
}
|
|
27832
27804
|
watchUnit(value) {
|
|
27833
27805
|
unitProp.apply(value, (v) => {
|
|
27834
27806
|
this.setProp('unit', v);
|
|
27835
|
-
|
|
27836
|
-
});
|
|
27807
|
+
}, '%');
|
|
27837
27808
|
}
|
|
27838
27809
|
watchValue(value) {
|
|
27810
|
+
this.setRawProp('value', value);
|
|
27839
27811
|
clampedNumberValueProp.apply(value, (v) => {
|
|
27840
27812
|
this.setProp('value', v);
|
|
27841
|
-
}, { min: 0, max: this.getProps().max });
|
|
27813
|
+
}, { min: 0, max: this.getProps().max }, 0);
|
|
27842
27814
|
}
|
|
27843
27815
|
watchVariant(value) {
|
|
27844
27816
|
variantProgressProp.apply(value, (v) => {
|
|
27845
27817
|
this.setProp('variant', v);
|
|
27846
|
-
|
|
27847
|
-
});
|
|
27818
|
+
}, 'bar');
|
|
27848
27819
|
}
|
|
27849
27820
|
startLiveValueInterval() {
|
|
27850
27821
|
this.interval = setInterval(() => {
|
|
@@ -27868,10 +27839,7 @@ class KolProgress {
|
|
|
27868
27839
|
constructor(hostRef) {
|
|
27869
27840
|
registerInstance(this, hostRef);
|
|
27870
27841
|
this.ctrl = new ProgressController(this);
|
|
27871
|
-
this.unit = '%';
|
|
27872
|
-
this.variant = 'bar';
|
|
27873
27842
|
this.liveValue = 0;
|
|
27874
|
-
this.max = this._max;
|
|
27875
27843
|
}
|
|
27876
27844
|
watchLabel(value) {
|
|
27877
27845
|
this.ctrl.watchLabel(value);
|
|
@@ -27903,7 +27871,7 @@ class KolProgress {
|
|
|
27903
27871
|
render() {
|
|
27904
27872
|
const { label, max, unit, value, variant } = this.ctrl.getProps();
|
|
27905
27873
|
const { liveValue } = this;
|
|
27906
|
-
return (hAsync(Host, { key: '
|
|
27874
|
+
return (hAsync(Host, { key: '3e780e20fdf0435675aa4139a34784d335b8ca0d' }, hAsync(ProgressFC, { key: '7c57e3c56ada9b13315f48565c9de2efa580b196', label: label, max: max, unit: unit, value: value, variant: variant, liveValue: liveValue })));
|
|
27907
27875
|
}
|
|
27908
27876
|
static get watchers() { return {
|
|
27909
27877
|
"_label": ["watchLabel"],
|
|
@@ -27924,10 +27892,7 @@ class KolProgress {
|
|
|
27924
27892
|
"_unit": [1],
|
|
27925
27893
|
"_value": [2],
|
|
27926
27894
|
"_variant": [1],
|
|
27927
|
-
"
|
|
27928
|
-
"variant": [32],
|
|
27929
|
-
"liveValue": [32],
|
|
27930
|
-
"max": [32]
|
|
27895
|
+
"liveValue": [32]
|
|
27931
27896
|
},
|
|
27932
27897
|
"$listeners$": undefined,
|
|
27933
27898
|
"$lazyBundleId$": "-",
|
|
@@ -27948,14 +27913,6 @@ const QuoteFC = (props) => {
|
|
|
27948
27913
|
};
|
|
27949
27914
|
|
|
27950
27915
|
class QuoteController extends BaseController {
|
|
27951
|
-
constructor() {
|
|
27952
|
-
super({}, {
|
|
27953
|
-
href: '',
|
|
27954
|
-
label: '',
|
|
27955
|
-
quote: '',
|
|
27956
|
-
variant: 'inline',
|
|
27957
|
-
});
|
|
27958
|
-
}
|
|
27959
27916
|
componentWillLoad(props) {
|
|
27960
27917
|
const { href, label, quote, variant } = props;
|
|
27961
27918
|
this.watchHref(href);
|
|
@@ -27966,22 +27923,22 @@ class QuoteController extends BaseController {
|
|
|
27966
27923
|
watchHref(value) {
|
|
27967
27924
|
hrefProp.apply(value, (v) => {
|
|
27968
27925
|
this.setProp('href', v);
|
|
27969
|
-
});
|
|
27926
|
+
}, '');
|
|
27970
27927
|
}
|
|
27971
27928
|
watchLabel(value) {
|
|
27972
27929
|
labelProp.apply(value, (v) => {
|
|
27973
27930
|
this.setProp('label', v);
|
|
27974
|
-
});
|
|
27931
|
+
}, '');
|
|
27975
27932
|
}
|
|
27976
27933
|
watchQuote(value) {
|
|
27977
27934
|
quoteProp.apply(value, (v) => {
|
|
27978
27935
|
this.setProp('quote', v);
|
|
27979
|
-
});
|
|
27936
|
+
}, '');
|
|
27980
27937
|
}
|
|
27981
27938
|
watchVariant(value) {
|
|
27982
27939
|
variantQuoteProp.apply(value, (v) => {
|
|
27983
27940
|
this.setProp('variant', v);
|
|
27984
|
-
});
|
|
27941
|
+
}, 'inline');
|
|
27985
27942
|
}
|
|
27986
27943
|
}
|
|
27987
27944
|
|
|
@@ -29112,10 +29069,7 @@ const SkeletonFC = (props) => {
|
|
|
29112
29069
|
|
|
29113
29070
|
class SkeletonController extends BaseController {
|
|
29114
29071
|
constructor(states) {
|
|
29115
|
-
super(states
|
|
29116
|
-
count: 0,
|
|
29117
|
-
name: '',
|
|
29118
|
-
});
|
|
29072
|
+
super(states);
|
|
29119
29073
|
this.onKeydown = (event) => {
|
|
29120
29074
|
if (event.key === 'Escape') {
|
|
29121
29075
|
console.log('Show should be toggled');
|
|
@@ -29124,9 +29078,8 @@ class SkeletonController extends BaseController {
|
|
|
29124
29078
|
};
|
|
29125
29079
|
this.handleClick = () => {
|
|
29126
29080
|
Log.debug('Button clicked, count should be increased');
|
|
29127
|
-
const { count } = this.
|
|
29081
|
+
const { count } = this.component;
|
|
29128
29082
|
const nextCount = count + 1;
|
|
29129
|
-
this.setProp('count', nextCount);
|
|
29130
29083
|
this.setState('count', nextCount);
|
|
29131
29084
|
};
|
|
29132
29085
|
this.setButtonRef = (element) => {
|
|
@@ -29136,30 +29089,16 @@ class SkeletonController extends BaseController {
|
|
|
29136
29089
|
this.startLoadedEventInterval();
|
|
29137
29090
|
}
|
|
29138
29091
|
componentWillLoad(props) {
|
|
29139
|
-
const {
|
|
29140
|
-
this.watchCount(count);
|
|
29092
|
+
const { name } = props;
|
|
29141
29093
|
this.watchName(name);
|
|
29142
|
-
this.watchLabel(this.component.label);
|
|
29143
29094
|
this.clickButtonCtrl.componentWillLoad({
|
|
29144
29095
|
label: this.component.label,
|
|
29145
29096
|
});
|
|
29146
29097
|
}
|
|
29147
|
-
watchCount(value) {
|
|
29148
|
-
countProp.apply(value, (v) => {
|
|
29149
|
-
this.setProp('count', v);
|
|
29150
|
-
this.setState('count', v);
|
|
29151
|
-
});
|
|
29152
|
-
}
|
|
29153
29098
|
watchName(value) {
|
|
29154
29099
|
nameProp.apply(value, (v) => {
|
|
29155
29100
|
this.setProp('name', v);
|
|
29156
|
-
});
|
|
29157
|
-
}
|
|
29158
|
-
watchLabel(value) {
|
|
29159
|
-
labelProp.apply(value, (v) => {
|
|
29160
|
-
this.setState('label', v);
|
|
29161
|
-
this.clickButtonCtrl.watchLabel(v);
|
|
29162
|
-
});
|
|
29101
|
+
}, '');
|
|
29163
29102
|
}
|
|
29164
29103
|
toggle() {
|
|
29165
29104
|
this.setState('show', !this.component.show);
|
|
@@ -29169,7 +29108,7 @@ class SkeletonController extends BaseController {
|
|
|
29169
29108
|
}
|
|
29170
29109
|
startLoadedEventInterval() {
|
|
29171
29110
|
this.intervalId = setInterval(() => {
|
|
29172
|
-
const { count } = this.
|
|
29111
|
+
const { count } = this.component;
|
|
29173
29112
|
this.emitLoaded(count);
|
|
29174
29113
|
}, 2000);
|
|
29175
29114
|
}
|
|
@@ -29195,9 +29134,9 @@ class KolSkeleton {
|
|
|
29195
29134
|
this.loaded = createEvent(this, "loaded");
|
|
29196
29135
|
this.rendered = createEvent(this, "rendered");
|
|
29197
29136
|
this.ctrl = new SkeletonController(this);
|
|
29137
|
+
this.count = 0;
|
|
29198
29138
|
this.label = 'Label';
|
|
29199
29139
|
this.show = true;
|
|
29200
|
-
this.count = 0;
|
|
29201
29140
|
}
|
|
29202
29141
|
async focus() {
|
|
29203
29142
|
return Promise.resolve(this.ctrl.focus());
|
|
@@ -29205,9 +29144,6 @@ class KolSkeleton {
|
|
|
29205
29144
|
async toggle() {
|
|
29206
29145
|
return Promise.resolve(this.ctrl.toggle());
|
|
29207
29146
|
}
|
|
29208
|
-
watchCount(value) {
|
|
29209
|
-
this.ctrl.watchCount(value);
|
|
29210
|
-
}
|
|
29211
29147
|
watchName(value) {
|
|
29212
29148
|
this.ctrl.watchName(value);
|
|
29213
29149
|
}
|
|
@@ -29222,7 +29158,6 @@ class KolSkeleton {
|
|
|
29222
29158
|
}
|
|
29223
29159
|
componentWillLoad() {
|
|
29224
29160
|
this.ctrl.componentWillLoad({
|
|
29225
|
-
count: this._count,
|
|
29226
29161
|
name: this._name,
|
|
29227
29162
|
});
|
|
29228
29163
|
this.ctrl.setOnLoadedCallback((count) => {
|
|
@@ -29238,23 +29173,21 @@ class KolSkeleton {
|
|
|
29238
29173
|
this.ctrl.destroy();
|
|
29239
29174
|
}
|
|
29240
29175
|
render() {
|
|
29241
|
-
const {
|
|
29242
|
-
const { label, show } = this;
|
|
29243
|
-
return (hAsync(Host, { key: '
|
|
29176
|
+
const { name } = this.ctrl.getProps();
|
|
29177
|
+
const { count, label, show } = this;
|
|
29178
|
+
return (hAsync(Host, { key: '5f1160b2f3d269b6db7a26a01c73669d39410cfc' }, hAsync(SkeletonFC, { key: 'dd668006b85713834366c4831105f7f047c6797b', count: count, label: label, name: name, handleClick: () => this.ctrl.handleClick(), onLoaded: this.loaded, onRendered: this.rendered, show: show, refButton: (element) => this.ctrl.setButtonRef(element) })));
|
|
29244
29179
|
}
|
|
29245
29180
|
static get watchers() { return {
|
|
29246
|
-
"_count": ["watchCount"],
|
|
29247
29181
|
"_name": ["watchName"]
|
|
29248
29182
|
}; }
|
|
29249
29183
|
static get cmpMeta() { return {
|
|
29250
29184
|
"$flags$": 265,
|
|
29251
29185
|
"$tagName$": "kol-skeleton",
|
|
29252
29186
|
"$members$": {
|
|
29253
|
-
"_count": [8],
|
|
29254
29187
|
"_name": [1],
|
|
29188
|
+
"count": [32],
|
|
29255
29189
|
"label": [32],
|
|
29256
29190
|
"show": [32],
|
|
29257
|
-
"count": [32],
|
|
29258
29191
|
"focus": [64],
|
|
29259
29192
|
"toggle": [64]
|
|
29260
29193
|
},
|
|
@@ -30057,6 +29990,7 @@ let KolTableStateless$1 = class KolTableStateless {
|
|
|
30057
29990
|
}; }
|
|
30058
29991
|
};
|
|
30059
29992
|
|
|
29993
|
+
const RESIZE_DEBOUNCE_DELAY = 150;
|
|
30060
29994
|
class KolTableStateless {
|
|
30061
29995
|
constructor(hostRef) {
|
|
30062
29996
|
registerInstance(this, hostRef);
|
|
@@ -30079,6 +30013,7 @@ class KolTableStateless {
|
|
|
30079
30013
|
this.maxCols = 0;
|
|
30080
30014
|
this.fixedOffsets = [];
|
|
30081
30015
|
this.tableDivElementHasScrollbar = false;
|
|
30016
|
+
this.stickyColsDisabled = false;
|
|
30082
30017
|
this.renderTableRow = (row, rowIndex, isVertical, isFooter = false) => {
|
|
30083
30018
|
var _a, _b;
|
|
30084
30019
|
let key = String(rowIndex);
|
|
@@ -30154,6 +30089,7 @@ class KolTableStateless {
|
|
|
30154
30089
|
}
|
|
30155
30090
|
validateFixedCols(value) {
|
|
30156
30091
|
validateFixedCols(this, value);
|
|
30092
|
+
this.checkAndUpdateStickyState();
|
|
30157
30093
|
}
|
|
30158
30094
|
validateHeaderCells(value) {
|
|
30159
30095
|
validateTableHeaderCells(this, value);
|
|
@@ -30172,6 +30108,7 @@ class KolTableStateless {
|
|
|
30172
30108
|
}
|
|
30173
30109
|
validateSelection(value) {
|
|
30174
30110
|
validateTableSelection(this, value);
|
|
30111
|
+
this.checkAndUpdateStickyState();
|
|
30175
30112
|
}
|
|
30176
30113
|
handleKeyDown(event) {
|
|
30177
30114
|
var _a;
|
|
@@ -30197,9 +30134,10 @@ class KolTableStateless {
|
|
|
30197
30134
|
}
|
|
30198
30135
|
componentDidLoad() {
|
|
30199
30136
|
if (this.tableDivElement && ResizeObserver) {
|
|
30200
|
-
this.tableDivElementResizeObserver = new ResizeObserver(this.
|
|
30137
|
+
this.tableDivElementResizeObserver = new ResizeObserver(this.handleResize.bind(this));
|
|
30201
30138
|
this.tableDivElementResizeObserver.observe(this.tableDivElement);
|
|
30202
30139
|
}
|
|
30140
|
+
this.checkAndUpdateStickyState();
|
|
30203
30141
|
}
|
|
30204
30142
|
handleSettingsChange(event) {
|
|
30205
30143
|
var _a;
|
|
@@ -30212,12 +30150,48 @@ class KolTableStateless {
|
|
|
30212
30150
|
disconnectedCallback() {
|
|
30213
30151
|
var _a;
|
|
30214
30152
|
(_a = this.tableDivElementResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
30153
|
+
clearTimeout(this.resizeDebounceTimeout);
|
|
30154
|
+
}
|
|
30155
|
+
handleResize() {
|
|
30156
|
+
this.checkDivElementScrollbar();
|
|
30157
|
+
clearTimeout(this.resizeDebounceTimeout);
|
|
30158
|
+
this.resizeDebounceTimeout = setTimeout(() => {
|
|
30159
|
+
this.checkAndUpdateStickyState();
|
|
30160
|
+
}, RESIZE_DEBOUNCE_DELAY);
|
|
30215
30161
|
}
|
|
30216
30162
|
checkDivElementScrollbar() {
|
|
30217
30163
|
if (this.tableDivElement) {
|
|
30218
30164
|
this.tableDivElementHasScrollbar = this.tableDivElement.scrollWidth > this.tableDivElement.clientWidth;
|
|
30219
30165
|
}
|
|
30220
30166
|
}
|
|
30167
|
+
calculateFixedColsWidth() {
|
|
30168
|
+
var _a, _b, _c, _d, _e, _f;
|
|
30169
|
+
if (!this._fixedCols)
|
|
30170
|
+
return 0;
|
|
30171
|
+
const primaryHeader = this.getPrimaryHeaders(this.state._headerCells);
|
|
30172
|
+
let totalWidth = 0;
|
|
30173
|
+
for (let i = 0; i < this._fixedCols[0] && i < primaryHeader.length; i++) {
|
|
30174
|
+
totalWidth += (_b = (_a = primaryHeader[i]) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 0;
|
|
30175
|
+
}
|
|
30176
|
+
const startRight = this.maxCols - this._fixedCols[1];
|
|
30177
|
+
for (let i = startRight; i < this.maxCols && i < primaryHeader.length; i++) {
|
|
30178
|
+
totalWidth += (_d = (_c = primaryHeader[i]) === null || _c === void 0 ? void 0 : _c.width) !== null && _d !== void 0 ? _d : 0;
|
|
30179
|
+
}
|
|
30180
|
+
if (this.state._selection) {
|
|
30181
|
+
const selectionCell = (_e = this.tableDivElement) === null || _e === void 0 ? void 0 : _e.querySelector('.kol-table__cell--selection');
|
|
30182
|
+
totalWidth += (_f = selectionCell === null || selectionCell === void 0 ? void 0 : selectionCell.offsetWidth) !== null && _f !== void 0 ? _f : 0;
|
|
30183
|
+
}
|
|
30184
|
+
return totalWidth;
|
|
30185
|
+
}
|
|
30186
|
+
checkAndUpdateStickyState() {
|
|
30187
|
+
if (!this.tableDivElement || !this._fixedCols) {
|
|
30188
|
+
this.stickyColsDisabled = false;
|
|
30189
|
+
return;
|
|
30190
|
+
}
|
|
30191
|
+
const containerWidth = this.tableDivElement.clientWidth;
|
|
30192
|
+
const fixedColsWidth = this.calculateFixedColsWidth();
|
|
30193
|
+
this.stickyColsDisabled = fixedColsWidth > 0 && fixedColsWidth >= containerWidth;
|
|
30194
|
+
}
|
|
30221
30195
|
updateDataToKeyMap(data) {
|
|
30222
30196
|
data.forEach((data) => {
|
|
30223
30197
|
if (!this.dataToKeyMap.has(data)) {
|
|
@@ -30437,7 +30411,7 @@ class KolTableStateless {
|
|
|
30437
30411
|
return dataField;
|
|
30438
30412
|
}
|
|
30439
30413
|
isFixedCol(index) {
|
|
30440
|
-
if (!this._fixedCols || index === undefined) {
|
|
30414
|
+
if (!this._fixedCols || index === undefined || this.stickyColsDisabled) {
|
|
30441
30415
|
return undefined;
|
|
30442
30416
|
}
|
|
30443
30417
|
if (index < this._fixedCols[0]) {
|
|
@@ -30724,12 +30698,12 @@ class KolTableStateless {
|
|
|
30724
30698
|
const dataField = this.createDataField(this.state._data, this.state._headerCells);
|
|
30725
30699
|
this.checkboxRefs = [];
|
|
30726
30700
|
const horizontalHeaders = this.state._headerCells.horizontal;
|
|
30727
|
-
return (hAsync("div", { key: '
|
|
30701
|
+
return (hAsync("div", { key: '5ddf10f82b6aeef72bae63ff222daac7e9cb76c2', class: "kol-table" }, this.state._hasSettingsMenu && hAsync(KolTableSettingsWcTag, { key: '35dc658b20b20949fb2a2c251243b1868e23fff1', _horizontalHeaderCells: horizontalHeaders !== null && horizontalHeaders !== void 0 ? horizontalHeaders : [] }), hAsync("div", { key: 'da2904a5dacc000f911eaef29cc6f01ba31fb418', ref: (element) => (this.tableDivElement = element), class: "kol-table__scroll-container", tabindex: this.tableDivElementHasScrollbar ? '-1' : undefined }, hAsync("table", { key: '1529eb6a1d029c1df0942f244b3dac52fc937bbc', class: "kol-table__table", style: {
|
|
30728
30702
|
minWidth: this.getTableMinWidth(),
|
|
30729
|
-
} }, hAsync("caption", { key: '
|
|
30703
|
+
} }, hAsync("caption", { key: '1cf7ded256d54d7c7fb05a0366a888f51149dc1c', class: "kol-table__focus-element kol-table__caption", id: "caption", tabindex: this.tableDivElementHasScrollbar ? '0' : undefined }, this.state._label), Array.isArray(horizontalHeaders) && (hAsync("thead", { key: '4ea94abfaba71e502d3cbcfc5c56ad9945944df2', class: "kol-table__head" }, [
|
|
30730
30704
|
horizontalHeaders.map((cols, rowIndex) => (hAsync("tr", { class: "kol-table__head-row", key: `thead-${rowIndex}` }, this.state._selection && this.renderHeadingSelectionCell(), rowIndex === 0 && this.renderHeaderTdCell(), Array.isArray(cols) && cols.map((cell, colIndex) => this.renderHeadingCell(cell, rowIndex, colIndex, false))))),
|
|
30731
30705
|
this.renderSpacer('head', horizontalHeaders),
|
|
30732
|
-
])), hAsync("tbody", { key: '
|
|
30706
|
+
])), hAsync("tbody", { key: '956ba95c28f4593fe01d94c6191002d4b105d0f1', class: "kol-table__body" }, dataField.map((row, rowIndex) => this.renderTableRow(row, rowIndex, true))), this.renderFoot()))));
|
|
30733
30707
|
}
|
|
30734
30708
|
get host() { return getElement(this); }
|
|
30735
30709
|
static get watchers() { return {
|
|
@@ -30756,6 +30730,7 @@ class KolTableStateless {
|
|
|
30756
30730
|
"_hasSettingsMenu": [4, "_has-settings-menu"],
|
|
30757
30731
|
"state": [32],
|
|
30758
30732
|
"tableDivElementHasScrollbar": [32],
|
|
30733
|
+
"stickyColsDisabled": [32],
|
|
30759
30734
|
"previousHeaderCells": [32]
|
|
30760
30735
|
},
|
|
30761
30736
|
"$listeners$": [[0, "keydown", "handleKeyDown"], [0, "changeheadercells", "handleSettingsChange"]],
|
package/dist/index.mjs
CHANGED
|
@@ -144,7 +144,7 @@ function _mergeNamespaces(n, m) {
|
|
|
144
144
|
|
|
145
145
|
const NAMESPACE = 'kolibri';
|
|
146
146
|
const BUILD = /* kolibri */ { hydratedSelectorName: "hydrated", slotRelocation: true, state: true, updatable: true};
|
|
147
|
-
const Env = /* kolibri */ {"kolibriVersion":"4.1.1
|
|
147
|
+
const Env = /* kolibri */ {"kolibriVersion":"4.1.1"};
|
|
148
148
|
|
|
149
149
|
function getDefaultExportFromCjs (x) {
|
|
150
150
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
@@ -6922,7 +6922,13 @@ function createPropDefinition(normalize, validate = () => true) {
|
|
|
6922
6922
|
return {
|
|
6923
6923
|
normalize,
|
|
6924
6924
|
validate,
|
|
6925
|
-
apply(value, callback) {
|
|
6925
|
+
apply(value, callback, defaultValue) {
|
|
6926
|
+
if (value === undefined || value === null) {
|
|
6927
|
+
if (defaultValue !== undefined) {
|
|
6928
|
+
callback(defaultValue);
|
|
6929
|
+
}
|
|
6930
|
+
return;
|
|
6931
|
+
}
|
|
6926
6932
|
try {
|
|
6927
6933
|
const normalized = this.normalize(value);
|
|
6928
6934
|
if (this.validate(normalized)) {
|
|
@@ -6939,7 +6945,13 @@ function createDependentPropDefinition(normalize, validate = () => true) {
|
|
|
6939
6945
|
return {
|
|
6940
6946
|
normalize,
|
|
6941
6947
|
validate,
|
|
6942
|
-
apply(value, callback, deps) {
|
|
6948
|
+
apply(value, callback, deps, defaultValue) {
|
|
6949
|
+
if (value === undefined || value === null) {
|
|
6950
|
+
if (defaultValue !== undefined) {
|
|
6951
|
+
callback(defaultValue);
|
|
6952
|
+
}
|
|
6953
|
+
return;
|
|
6954
|
+
}
|
|
6943
6955
|
try {
|
|
6944
6956
|
const normalized = this.normalize(value, deps);
|
|
6945
6957
|
if (this.validate(normalized, deps)) {
|
|
@@ -6962,18 +6974,6 @@ function normalizeString(value) {
|
|
|
6962
6974
|
}
|
|
6963
6975
|
throw new Error(`Invalid string: ${value}`);
|
|
6964
6976
|
}
|
|
6965
|
-
function normalizeInteger(value) {
|
|
6966
|
-
if (typeof value === 'number') {
|
|
6967
|
-
return Number.isInteger(value) ? value : Math.round(value);
|
|
6968
|
-
}
|
|
6969
|
-
if (typeof value === 'string') {
|
|
6970
|
-
const parsed = parseInt(value, 10);
|
|
6971
|
-
if (!isNaN(parsed)) {
|
|
6972
|
-
return parsed;
|
|
6973
|
-
}
|
|
6974
|
-
}
|
|
6975
|
-
throw new Error(`Invalid integer: ${value}`);
|
|
6976
|
-
}
|
|
6977
6977
|
function normalizeNumber(value) {
|
|
6978
6978
|
if (typeof value === 'number') {
|
|
6979
6979
|
return value;
|
|
@@ -7024,30 +7024,8 @@ function validator(value) {
|
|
|
7024
7024
|
}
|
|
7025
7025
|
const colorProp = createPropDefinition(normalizer, validator);
|
|
7026
7026
|
|
|
7027
|
-
const countProp = createPropDefinition(normalizeInteger, (v) => v >= 0);
|
|
7028
|
-
|
|
7029
7027
|
const hrefProp = createPropDefinition(normalizeString, (v) => v.length > 0);
|
|
7030
7028
|
|
|
7031
|
-
const formatNameAsInitial = (name) => {
|
|
7032
|
-
if (name.length === 0) {
|
|
7033
|
-
return '';
|
|
7034
|
-
}
|
|
7035
|
-
return name[0].toUpperCase();
|
|
7036
|
-
};
|
|
7037
|
-
const normalizeInitials = (value) => {
|
|
7038
|
-
if (typeof value !== 'string') {
|
|
7039
|
-
throw new Error(`Invalid initials value: ${JSON.stringify(value)}`);
|
|
7040
|
-
}
|
|
7041
|
-
const names = value.trim().split(/\s+/);
|
|
7042
|
-
const first = names[0];
|
|
7043
|
-
const last = names[names.length - 1];
|
|
7044
|
-
if (names.length >= 2 && first && last) {
|
|
7045
|
-
return `${formatNameAsInitial(first)}${formatNameAsInitial(last)}`;
|
|
7046
|
-
}
|
|
7047
|
-
return formatNameAsInitial(value);
|
|
7048
|
-
};
|
|
7049
|
-
const initialsProp = createPropDefinition(normalizeInitials, (v) => v.length > 0);
|
|
7050
|
-
|
|
7051
7029
|
const labelProp = createPropDefinition(normalizeString, (v) => v.length >= 2 && v.length <= 80);
|
|
7052
7030
|
|
|
7053
7031
|
const LOADING_OPTIONS = ['eager', 'lazy'];
|
|
@@ -7093,9 +7071,10 @@ const QUOTE_VARIANT_SET = new Set(QUOTE_VARIANT_OPTIONS);
|
|
|
7093
7071
|
const variantQuoteProp = createPropDefinition((value) => normalizeString(value), (v) => QUOTE_VARIANT_SET.has(v));
|
|
7094
7072
|
|
|
7095
7073
|
class BaseController {
|
|
7096
|
-
constructor(component
|
|
7074
|
+
constructor(component = {}) {
|
|
7097
7075
|
this.component = component;
|
|
7098
|
-
this.props =
|
|
7076
|
+
this.props = {};
|
|
7077
|
+
this.rawProps = {};
|
|
7099
7078
|
}
|
|
7100
7079
|
setProp(key, value) {
|
|
7101
7080
|
this.props[key] = value;
|
|
@@ -7103,19 +7082,33 @@ class BaseController {
|
|
|
7103
7082
|
getProps() {
|
|
7104
7083
|
return this.props;
|
|
7105
7084
|
}
|
|
7085
|
+
setRawProp(key, value) {
|
|
7086
|
+
this.rawProps[key] = value;
|
|
7087
|
+
}
|
|
7088
|
+
getRawProps() {
|
|
7089
|
+
return this.rawProps;
|
|
7090
|
+
}
|
|
7106
7091
|
setState(key, value) {
|
|
7107
7092
|
this.component[key] = value;
|
|
7108
7093
|
}
|
|
7109
7094
|
}
|
|
7110
7095
|
|
|
7111
|
-
|
|
7112
|
-
|
|
7113
|
-
|
|
7114
|
-
color: { backgroundColor: '#d3d3d3', foregroundColor: '#3f3f3f' },
|
|
7115
|
-
label: '',
|
|
7116
|
-
src: '',
|
|
7117
|
-
});
|
|
7096
|
+
const formatNameAsInitial = (name) => {
|
|
7097
|
+
if (name.length === 0) {
|
|
7098
|
+
return '';
|
|
7118
7099
|
}
|
|
7100
|
+
return name[0].toUpperCase();
|
|
7101
|
+
};
|
|
7102
|
+
const normalizeInitials = (value) => {
|
|
7103
|
+
const names = value.trim().split(/\s+/);
|
|
7104
|
+
const first = names[0];
|
|
7105
|
+
const last = names[names.length - 1];
|
|
7106
|
+
if (names.length >= 2 && first && last) {
|
|
7107
|
+
return `${formatNameAsInitial(first)}${formatNameAsInitial(last)}`;
|
|
7108
|
+
}
|
|
7109
|
+
return formatNameAsInitial(value);
|
|
7110
|
+
};
|
|
7111
|
+
class AvatarController extends BaseController {
|
|
7119
7112
|
componentWillLoad(props) {
|
|
7120
7113
|
const { color, label, src } = props;
|
|
7121
7114
|
this.watchColor(color);
|
|
@@ -7125,20 +7118,21 @@ class AvatarController extends BaseController {
|
|
|
7125
7118
|
watchColor(value) {
|
|
7126
7119
|
colorProp.apply(value, (v) => {
|
|
7127
7120
|
this.setProp('color', v);
|
|
7121
|
+
}, {
|
|
7122
|
+
backgroundColor: '#d3d3d3',
|
|
7123
|
+
foregroundColor: '#3f3f3f',
|
|
7128
7124
|
});
|
|
7129
7125
|
}
|
|
7130
7126
|
watchLabel(value) {
|
|
7131
7127
|
labelProp.apply(value, (v) => {
|
|
7132
7128
|
this.setProp('label', v);
|
|
7133
|
-
|
|
7134
|
-
|
|
7135
|
-
this.setState('initials', v);
|
|
7136
|
-
});
|
|
7129
|
+
this.setState('initials', normalizeInitials(v));
|
|
7130
|
+
}, '');
|
|
7137
7131
|
}
|
|
7138
7132
|
watchSrc(value) {
|
|
7139
7133
|
srcProp.apply(value, (v) => {
|
|
7140
7134
|
this.setProp('src', v);
|
|
7141
|
-
});
|
|
7135
|
+
}, '');
|
|
7142
7136
|
}
|
|
7143
7137
|
}
|
|
7144
7138
|
|
|
@@ -19645,10 +19639,8 @@ const BEM_CLASS_CLICK_BUTTON__LABEL = clickButtonBem('label');
|
|
|
19645
19639
|
const ClickButtonFC = ({ label, handleClick, refButton }) => (hAsync("button", { class: BEM_CLASS_CLICK_BUTTON, ref: refButton, onClick: handleClick, onKeyDown: (event) => event.preventDefault() }, hAsync("span", { class: BEM_CLASS_CLICK_BUTTON__LABEL }, label)));
|
|
19646
19640
|
|
|
19647
19641
|
class ClickButtonController extends BaseController {
|
|
19648
|
-
constructor(
|
|
19649
|
-
super(
|
|
19650
|
-
label: '',
|
|
19651
|
-
});
|
|
19642
|
+
constructor() {
|
|
19643
|
+
super(...arguments);
|
|
19652
19644
|
this.handleClick = () => {
|
|
19653
19645
|
console.log(this, this.buttonRef, 'button clicked');
|
|
19654
19646
|
};
|
|
@@ -19663,7 +19655,7 @@ class ClickButtonController extends BaseController {
|
|
|
19663
19655
|
watchLabel(value) {
|
|
19664
19656
|
labelProp.apply(value, (v) => {
|
|
19665
19657
|
this.setProp('label', v);
|
|
19666
|
-
});
|
|
19658
|
+
}, '');
|
|
19667
19659
|
}
|
|
19668
19660
|
focus() {
|
|
19669
19661
|
var _a;
|
|
@@ -21232,7 +21224,7 @@ const bem = c();
|
|
|
21232
21224
|
const BEM_CLASS_ICON = bem('kol-icon');
|
|
21233
21225
|
const BEM_CLASS_ICON__ICON = bem('kol-icon', 'icon');
|
|
21234
21226
|
|
|
21235
|
-
const defaultStyleCss$y = "/* forward the rem function */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=
|
|
21227
|
+
const defaultStyleCss$y = "/* forward the rem function */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1773045157587\"); /* IE9*/\n src: url(\"kolicons.eot?t=1773045157587#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1773045157587\") format(\"woff2\"), url(\"kolicons.woff?t=1773045157587\") format(\"woff\"), url(\"kolicons.ttf?t=1773045157587\") format(\"truetype\"), url(\"kolicons.svg?t=1773045157587#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n[class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\";\n font-size: inherit;\n font-style: normal;\n font-weight: 400;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.kolicon-alert-error::before {\n content: \"\\ea01\";\n}\n\n.kolicon-alert-info::before {\n content: \"\\ea02\";\n}\n\n.kolicon-alert-success::before {\n content: \"\\ea03\";\n}\n\n.kolicon-alert-warning::before {\n content: \"\\ea04\";\n}\n\n.kolicon-check::before {\n content: \"\\ea05\";\n}\n\n.kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n}\n\n.kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n}\n\n.kolicon-chevron-down::before {\n content: \"\\ea08\";\n}\n\n.kolicon-chevron-left::before {\n content: \"\\ea09\";\n}\n\n.kolicon-chevron-right::before {\n content: \"\\ea0a\";\n}\n\n.kolicon-chevron-up::before {\n content: \"\\ea0b\";\n}\n\n.kolicon-cogwheel::before {\n content: \"\\ea0c\";\n}\n\n.kolicon-cross::before {\n content: \"\\ea0d\";\n}\n\n.kolicon-eye-closed::before {\n content: \"\\ea0e\";\n}\n\n.kolicon-eye::before {\n content: \"\\ea0f\";\n}\n\n.kolicon-house::before {\n content: \"\\ea10\";\n}\n\n.kolicon-kolibri::before {\n content: \"\\ea11\";\n}\n\n.kolicon-link-external::before {\n content: \"\\ea12\";\n}\n\n.kolicon-link::before {\n content: \"\\ea13\";\n}\n\n.kolicon-minus::before {\n content: \"\\ea14\";\n}\n\n.kolicon-plus::before {\n content: \"\\ea15\";\n}\n\n.kolicon-settings::before {\n content: \"\\ea16\";\n}\n\n.kolicon-sort-asc::before {\n content: \"\\ea17\";\n}\n\n.kolicon-sort-desc::before {\n content: \"\\ea18\";\n}\n\n.kolicon-sort-neutral::before {\n content: \"\\ea19\";\n}\n\n.kolicon-up::before {\n content: \"\\ea1a\";\n}\n\n.kolicon-version::before {\n content: \"\\ea1b\";\n}\n\n@layer kol-component {\n /* :host implicitly inherits font-size, see below */\n :host {\n color: inherit;\n display: contents;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n}";
|
|
21236
21228
|
|
|
21237
21229
|
class KolIcon {
|
|
21238
21230
|
render() {
|
|
@@ -21283,15 +21275,6 @@ const ImageFC = (props) => {
|
|
|
21283
21275
|
};
|
|
21284
21276
|
|
|
21285
21277
|
class ImageController extends BaseController {
|
|
21286
|
-
constructor(states = {}) {
|
|
21287
|
-
super(states, {
|
|
21288
|
-
alt: '',
|
|
21289
|
-
loading: 'lazy',
|
|
21290
|
-
sizes: '',
|
|
21291
|
-
src: '',
|
|
21292
|
-
srcset: '',
|
|
21293
|
-
});
|
|
21294
|
-
}
|
|
21295
21278
|
componentWillLoad(props) {
|
|
21296
21279
|
const { alt, loading, sizes, src, srcset } = props;
|
|
21297
21280
|
this.watchAlt(alt);
|
|
@@ -21303,27 +21286,27 @@ class ImageController extends BaseController {
|
|
|
21303
21286
|
watchAlt(value) {
|
|
21304
21287
|
altProp.apply(value, (v) => {
|
|
21305
21288
|
this.setProp('alt', v);
|
|
21306
|
-
});
|
|
21289
|
+
}, '');
|
|
21307
21290
|
}
|
|
21308
21291
|
watchLoading(value) {
|
|
21309
21292
|
loadingProp.apply(value, (v) => {
|
|
21310
21293
|
this.setProp('loading', v);
|
|
21311
|
-
});
|
|
21294
|
+
}, 'lazy');
|
|
21312
21295
|
}
|
|
21313
21296
|
watchSizes(value) {
|
|
21314
21297
|
sizesProp.apply(value, (v) => {
|
|
21315
21298
|
this.setProp('sizes', v);
|
|
21316
|
-
});
|
|
21299
|
+
}, '');
|
|
21317
21300
|
}
|
|
21318
21301
|
watchSrc(value) {
|
|
21319
21302
|
srcProp.apply(value, (v) => {
|
|
21320
21303
|
this.setProp('src', v);
|
|
21321
|
-
});
|
|
21304
|
+
}, '');
|
|
21322
21305
|
}
|
|
21323
21306
|
watchSrcset(value) {
|
|
21324
21307
|
srcsetProp.apply(value, (v) => {
|
|
21325
21308
|
this.setProp('srcset', v);
|
|
21326
|
-
});
|
|
21309
|
+
}, '');
|
|
21327
21310
|
}
|
|
21328
21311
|
}
|
|
21329
21312
|
|
|
@@ -27795,15 +27778,6 @@ const ProgressFC = (props) => {
|
|
|
27795
27778
|
};
|
|
27796
27779
|
|
|
27797
27780
|
class ProgressController extends BaseController {
|
|
27798
|
-
constructor(states) {
|
|
27799
|
-
super(states, {
|
|
27800
|
-
label: '',
|
|
27801
|
-
max: 100,
|
|
27802
|
-
unit: '%',
|
|
27803
|
-
value: 0,
|
|
27804
|
-
variant: 'bar',
|
|
27805
|
-
});
|
|
27806
|
-
}
|
|
27807
27781
|
componentWillLoad(props) {
|
|
27808
27782
|
const { label, max, unit, value, variant } = props;
|
|
27809
27783
|
this.watchLabel(label);
|
|
@@ -27812,37 +27786,34 @@ class ProgressController extends BaseController {
|
|
|
27812
27786
|
this.watchValue(value);
|
|
27813
27787
|
this.watchVariant(variant);
|
|
27814
27788
|
this.setState('liveValue', this.getProps().value);
|
|
27815
|
-
this.setState('max', this.getProps().max);
|
|
27816
27789
|
this.startLiveValueInterval();
|
|
27817
27790
|
}
|
|
27818
27791
|
watchLabel(value) {
|
|
27819
27792
|
labelProp.apply(value, (v) => {
|
|
27820
27793
|
this.setProp('label', v);
|
|
27821
|
-
});
|
|
27794
|
+
}, '');
|
|
27822
27795
|
}
|
|
27823
27796
|
watchMax(value) {
|
|
27824
27797
|
maxProp.apply(value, (v) => {
|
|
27825
27798
|
this.setProp('max', v);
|
|
27826
|
-
this.
|
|
27827
|
-
});
|
|
27828
|
-
this.watchValue(this.getProps().value);
|
|
27799
|
+
this.watchValue(this.getRawProps().value);
|
|
27800
|
+
}, 100);
|
|
27829
27801
|
}
|
|
27830
27802
|
watchUnit(value) {
|
|
27831
27803
|
unitProp.apply(value, (v) => {
|
|
27832
27804
|
this.setProp('unit', v);
|
|
27833
|
-
|
|
27834
|
-
});
|
|
27805
|
+
}, '%');
|
|
27835
27806
|
}
|
|
27836
27807
|
watchValue(value) {
|
|
27808
|
+
this.setRawProp('value', value);
|
|
27837
27809
|
clampedNumberValueProp.apply(value, (v) => {
|
|
27838
27810
|
this.setProp('value', v);
|
|
27839
|
-
}, { min: 0, max: this.getProps().max });
|
|
27811
|
+
}, { min: 0, max: this.getProps().max }, 0);
|
|
27840
27812
|
}
|
|
27841
27813
|
watchVariant(value) {
|
|
27842
27814
|
variantProgressProp.apply(value, (v) => {
|
|
27843
27815
|
this.setProp('variant', v);
|
|
27844
|
-
|
|
27845
|
-
});
|
|
27816
|
+
}, 'bar');
|
|
27846
27817
|
}
|
|
27847
27818
|
startLiveValueInterval() {
|
|
27848
27819
|
this.interval = setInterval(() => {
|
|
@@ -27866,10 +27837,7 @@ class KolProgress {
|
|
|
27866
27837
|
constructor(hostRef) {
|
|
27867
27838
|
registerInstance(this, hostRef);
|
|
27868
27839
|
this.ctrl = new ProgressController(this);
|
|
27869
|
-
this.unit = '%';
|
|
27870
|
-
this.variant = 'bar';
|
|
27871
27840
|
this.liveValue = 0;
|
|
27872
|
-
this.max = this._max;
|
|
27873
27841
|
}
|
|
27874
27842
|
watchLabel(value) {
|
|
27875
27843
|
this.ctrl.watchLabel(value);
|
|
@@ -27901,7 +27869,7 @@ class KolProgress {
|
|
|
27901
27869
|
render() {
|
|
27902
27870
|
const { label, max, unit, value, variant } = this.ctrl.getProps();
|
|
27903
27871
|
const { liveValue } = this;
|
|
27904
|
-
return (hAsync(Host, { key: '
|
|
27872
|
+
return (hAsync(Host, { key: '3e780e20fdf0435675aa4139a34784d335b8ca0d' }, hAsync(ProgressFC, { key: '7c57e3c56ada9b13315f48565c9de2efa580b196', label: label, max: max, unit: unit, value: value, variant: variant, liveValue: liveValue })));
|
|
27905
27873
|
}
|
|
27906
27874
|
static get watchers() { return {
|
|
27907
27875
|
"_label": ["watchLabel"],
|
|
@@ -27922,10 +27890,7 @@ class KolProgress {
|
|
|
27922
27890
|
"_unit": [1],
|
|
27923
27891
|
"_value": [2],
|
|
27924
27892
|
"_variant": [1],
|
|
27925
|
-
"
|
|
27926
|
-
"variant": [32],
|
|
27927
|
-
"liveValue": [32],
|
|
27928
|
-
"max": [32]
|
|
27893
|
+
"liveValue": [32]
|
|
27929
27894
|
},
|
|
27930
27895
|
"$listeners$": undefined,
|
|
27931
27896
|
"$lazyBundleId$": "-",
|
|
@@ -27946,14 +27911,6 @@ const QuoteFC = (props) => {
|
|
|
27946
27911
|
};
|
|
27947
27912
|
|
|
27948
27913
|
class QuoteController extends BaseController {
|
|
27949
|
-
constructor() {
|
|
27950
|
-
super({}, {
|
|
27951
|
-
href: '',
|
|
27952
|
-
label: '',
|
|
27953
|
-
quote: '',
|
|
27954
|
-
variant: 'inline',
|
|
27955
|
-
});
|
|
27956
|
-
}
|
|
27957
27914
|
componentWillLoad(props) {
|
|
27958
27915
|
const { href, label, quote, variant } = props;
|
|
27959
27916
|
this.watchHref(href);
|
|
@@ -27964,22 +27921,22 @@ class QuoteController extends BaseController {
|
|
|
27964
27921
|
watchHref(value) {
|
|
27965
27922
|
hrefProp.apply(value, (v) => {
|
|
27966
27923
|
this.setProp('href', v);
|
|
27967
|
-
});
|
|
27924
|
+
}, '');
|
|
27968
27925
|
}
|
|
27969
27926
|
watchLabel(value) {
|
|
27970
27927
|
labelProp.apply(value, (v) => {
|
|
27971
27928
|
this.setProp('label', v);
|
|
27972
|
-
});
|
|
27929
|
+
}, '');
|
|
27973
27930
|
}
|
|
27974
27931
|
watchQuote(value) {
|
|
27975
27932
|
quoteProp.apply(value, (v) => {
|
|
27976
27933
|
this.setProp('quote', v);
|
|
27977
|
-
});
|
|
27934
|
+
}, '');
|
|
27978
27935
|
}
|
|
27979
27936
|
watchVariant(value) {
|
|
27980
27937
|
variantQuoteProp.apply(value, (v) => {
|
|
27981
27938
|
this.setProp('variant', v);
|
|
27982
|
-
});
|
|
27939
|
+
}, 'inline');
|
|
27983
27940
|
}
|
|
27984
27941
|
}
|
|
27985
27942
|
|
|
@@ -29110,10 +29067,7 @@ const SkeletonFC = (props) => {
|
|
|
29110
29067
|
|
|
29111
29068
|
class SkeletonController extends BaseController {
|
|
29112
29069
|
constructor(states) {
|
|
29113
|
-
super(states
|
|
29114
|
-
count: 0,
|
|
29115
|
-
name: '',
|
|
29116
|
-
});
|
|
29070
|
+
super(states);
|
|
29117
29071
|
this.onKeydown = (event) => {
|
|
29118
29072
|
if (event.key === 'Escape') {
|
|
29119
29073
|
console.log('Show should be toggled');
|
|
@@ -29122,9 +29076,8 @@ class SkeletonController extends BaseController {
|
|
|
29122
29076
|
};
|
|
29123
29077
|
this.handleClick = () => {
|
|
29124
29078
|
Log.debug('Button clicked, count should be increased');
|
|
29125
|
-
const { count } = this.
|
|
29079
|
+
const { count } = this.component;
|
|
29126
29080
|
const nextCount = count + 1;
|
|
29127
|
-
this.setProp('count', nextCount);
|
|
29128
29081
|
this.setState('count', nextCount);
|
|
29129
29082
|
};
|
|
29130
29083
|
this.setButtonRef = (element) => {
|
|
@@ -29134,30 +29087,16 @@ class SkeletonController extends BaseController {
|
|
|
29134
29087
|
this.startLoadedEventInterval();
|
|
29135
29088
|
}
|
|
29136
29089
|
componentWillLoad(props) {
|
|
29137
|
-
const {
|
|
29138
|
-
this.watchCount(count);
|
|
29090
|
+
const { name } = props;
|
|
29139
29091
|
this.watchName(name);
|
|
29140
|
-
this.watchLabel(this.component.label);
|
|
29141
29092
|
this.clickButtonCtrl.componentWillLoad({
|
|
29142
29093
|
label: this.component.label,
|
|
29143
29094
|
});
|
|
29144
29095
|
}
|
|
29145
|
-
watchCount(value) {
|
|
29146
|
-
countProp.apply(value, (v) => {
|
|
29147
|
-
this.setProp('count', v);
|
|
29148
|
-
this.setState('count', v);
|
|
29149
|
-
});
|
|
29150
|
-
}
|
|
29151
29096
|
watchName(value) {
|
|
29152
29097
|
nameProp.apply(value, (v) => {
|
|
29153
29098
|
this.setProp('name', v);
|
|
29154
|
-
});
|
|
29155
|
-
}
|
|
29156
|
-
watchLabel(value) {
|
|
29157
|
-
labelProp.apply(value, (v) => {
|
|
29158
|
-
this.setState('label', v);
|
|
29159
|
-
this.clickButtonCtrl.watchLabel(v);
|
|
29160
|
-
});
|
|
29099
|
+
}, '');
|
|
29161
29100
|
}
|
|
29162
29101
|
toggle() {
|
|
29163
29102
|
this.setState('show', !this.component.show);
|
|
@@ -29167,7 +29106,7 @@ class SkeletonController extends BaseController {
|
|
|
29167
29106
|
}
|
|
29168
29107
|
startLoadedEventInterval() {
|
|
29169
29108
|
this.intervalId = setInterval(() => {
|
|
29170
|
-
const { count } = this.
|
|
29109
|
+
const { count } = this.component;
|
|
29171
29110
|
this.emitLoaded(count);
|
|
29172
29111
|
}, 2000);
|
|
29173
29112
|
}
|
|
@@ -29193,9 +29132,9 @@ class KolSkeleton {
|
|
|
29193
29132
|
this.loaded = createEvent(this, "loaded");
|
|
29194
29133
|
this.rendered = createEvent(this, "rendered");
|
|
29195
29134
|
this.ctrl = new SkeletonController(this);
|
|
29135
|
+
this.count = 0;
|
|
29196
29136
|
this.label = 'Label';
|
|
29197
29137
|
this.show = true;
|
|
29198
|
-
this.count = 0;
|
|
29199
29138
|
}
|
|
29200
29139
|
async focus() {
|
|
29201
29140
|
return Promise.resolve(this.ctrl.focus());
|
|
@@ -29203,9 +29142,6 @@ class KolSkeleton {
|
|
|
29203
29142
|
async toggle() {
|
|
29204
29143
|
return Promise.resolve(this.ctrl.toggle());
|
|
29205
29144
|
}
|
|
29206
|
-
watchCount(value) {
|
|
29207
|
-
this.ctrl.watchCount(value);
|
|
29208
|
-
}
|
|
29209
29145
|
watchName(value) {
|
|
29210
29146
|
this.ctrl.watchName(value);
|
|
29211
29147
|
}
|
|
@@ -29220,7 +29156,6 @@ class KolSkeleton {
|
|
|
29220
29156
|
}
|
|
29221
29157
|
componentWillLoad() {
|
|
29222
29158
|
this.ctrl.componentWillLoad({
|
|
29223
|
-
count: this._count,
|
|
29224
29159
|
name: this._name,
|
|
29225
29160
|
});
|
|
29226
29161
|
this.ctrl.setOnLoadedCallback((count) => {
|
|
@@ -29236,23 +29171,21 @@ class KolSkeleton {
|
|
|
29236
29171
|
this.ctrl.destroy();
|
|
29237
29172
|
}
|
|
29238
29173
|
render() {
|
|
29239
|
-
const {
|
|
29240
|
-
const { label, show } = this;
|
|
29241
|
-
return (hAsync(Host, { key: '
|
|
29174
|
+
const { name } = this.ctrl.getProps();
|
|
29175
|
+
const { count, label, show } = this;
|
|
29176
|
+
return (hAsync(Host, { key: '5f1160b2f3d269b6db7a26a01c73669d39410cfc' }, hAsync(SkeletonFC, { key: 'dd668006b85713834366c4831105f7f047c6797b', count: count, label: label, name: name, handleClick: () => this.ctrl.handleClick(), onLoaded: this.loaded, onRendered: this.rendered, show: show, refButton: (element) => this.ctrl.setButtonRef(element) })));
|
|
29242
29177
|
}
|
|
29243
29178
|
static get watchers() { return {
|
|
29244
|
-
"_count": ["watchCount"],
|
|
29245
29179
|
"_name": ["watchName"]
|
|
29246
29180
|
}; }
|
|
29247
29181
|
static get cmpMeta() { return {
|
|
29248
29182
|
"$flags$": 265,
|
|
29249
29183
|
"$tagName$": "kol-skeleton",
|
|
29250
29184
|
"$members$": {
|
|
29251
|
-
"_count": [8],
|
|
29252
29185
|
"_name": [1],
|
|
29186
|
+
"count": [32],
|
|
29253
29187
|
"label": [32],
|
|
29254
29188
|
"show": [32],
|
|
29255
|
-
"count": [32],
|
|
29256
29189
|
"focus": [64],
|
|
29257
29190
|
"toggle": [64]
|
|
29258
29191
|
},
|
|
@@ -30055,6 +29988,7 @@ let KolTableStateless$1 = class KolTableStateless {
|
|
|
30055
29988
|
}; }
|
|
30056
29989
|
};
|
|
30057
29990
|
|
|
29991
|
+
const RESIZE_DEBOUNCE_DELAY = 150;
|
|
30058
29992
|
class KolTableStateless {
|
|
30059
29993
|
constructor(hostRef) {
|
|
30060
29994
|
registerInstance(this, hostRef);
|
|
@@ -30077,6 +30011,7 @@ class KolTableStateless {
|
|
|
30077
30011
|
this.maxCols = 0;
|
|
30078
30012
|
this.fixedOffsets = [];
|
|
30079
30013
|
this.tableDivElementHasScrollbar = false;
|
|
30014
|
+
this.stickyColsDisabled = false;
|
|
30080
30015
|
this.renderTableRow = (row, rowIndex, isVertical, isFooter = false) => {
|
|
30081
30016
|
var _a, _b;
|
|
30082
30017
|
let key = String(rowIndex);
|
|
@@ -30152,6 +30087,7 @@ class KolTableStateless {
|
|
|
30152
30087
|
}
|
|
30153
30088
|
validateFixedCols(value) {
|
|
30154
30089
|
validateFixedCols(this, value);
|
|
30090
|
+
this.checkAndUpdateStickyState();
|
|
30155
30091
|
}
|
|
30156
30092
|
validateHeaderCells(value) {
|
|
30157
30093
|
validateTableHeaderCells(this, value);
|
|
@@ -30170,6 +30106,7 @@ class KolTableStateless {
|
|
|
30170
30106
|
}
|
|
30171
30107
|
validateSelection(value) {
|
|
30172
30108
|
validateTableSelection(this, value);
|
|
30109
|
+
this.checkAndUpdateStickyState();
|
|
30173
30110
|
}
|
|
30174
30111
|
handleKeyDown(event) {
|
|
30175
30112
|
var _a;
|
|
@@ -30195,9 +30132,10 @@ class KolTableStateless {
|
|
|
30195
30132
|
}
|
|
30196
30133
|
componentDidLoad() {
|
|
30197
30134
|
if (this.tableDivElement && ResizeObserver) {
|
|
30198
|
-
this.tableDivElementResizeObserver = new ResizeObserver(this.
|
|
30135
|
+
this.tableDivElementResizeObserver = new ResizeObserver(this.handleResize.bind(this));
|
|
30199
30136
|
this.tableDivElementResizeObserver.observe(this.tableDivElement);
|
|
30200
30137
|
}
|
|
30138
|
+
this.checkAndUpdateStickyState();
|
|
30201
30139
|
}
|
|
30202
30140
|
handleSettingsChange(event) {
|
|
30203
30141
|
var _a;
|
|
@@ -30210,12 +30148,48 @@ class KolTableStateless {
|
|
|
30210
30148
|
disconnectedCallback() {
|
|
30211
30149
|
var _a;
|
|
30212
30150
|
(_a = this.tableDivElementResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
30151
|
+
clearTimeout(this.resizeDebounceTimeout);
|
|
30152
|
+
}
|
|
30153
|
+
handleResize() {
|
|
30154
|
+
this.checkDivElementScrollbar();
|
|
30155
|
+
clearTimeout(this.resizeDebounceTimeout);
|
|
30156
|
+
this.resizeDebounceTimeout = setTimeout(() => {
|
|
30157
|
+
this.checkAndUpdateStickyState();
|
|
30158
|
+
}, RESIZE_DEBOUNCE_DELAY);
|
|
30213
30159
|
}
|
|
30214
30160
|
checkDivElementScrollbar() {
|
|
30215
30161
|
if (this.tableDivElement) {
|
|
30216
30162
|
this.tableDivElementHasScrollbar = this.tableDivElement.scrollWidth > this.tableDivElement.clientWidth;
|
|
30217
30163
|
}
|
|
30218
30164
|
}
|
|
30165
|
+
calculateFixedColsWidth() {
|
|
30166
|
+
var _a, _b, _c, _d, _e, _f;
|
|
30167
|
+
if (!this._fixedCols)
|
|
30168
|
+
return 0;
|
|
30169
|
+
const primaryHeader = this.getPrimaryHeaders(this.state._headerCells);
|
|
30170
|
+
let totalWidth = 0;
|
|
30171
|
+
for (let i = 0; i < this._fixedCols[0] && i < primaryHeader.length; i++) {
|
|
30172
|
+
totalWidth += (_b = (_a = primaryHeader[i]) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 0;
|
|
30173
|
+
}
|
|
30174
|
+
const startRight = this.maxCols - this._fixedCols[1];
|
|
30175
|
+
for (let i = startRight; i < this.maxCols && i < primaryHeader.length; i++) {
|
|
30176
|
+
totalWidth += (_d = (_c = primaryHeader[i]) === null || _c === void 0 ? void 0 : _c.width) !== null && _d !== void 0 ? _d : 0;
|
|
30177
|
+
}
|
|
30178
|
+
if (this.state._selection) {
|
|
30179
|
+
const selectionCell = (_e = this.tableDivElement) === null || _e === void 0 ? void 0 : _e.querySelector('.kol-table__cell--selection');
|
|
30180
|
+
totalWidth += (_f = selectionCell === null || selectionCell === void 0 ? void 0 : selectionCell.offsetWidth) !== null && _f !== void 0 ? _f : 0;
|
|
30181
|
+
}
|
|
30182
|
+
return totalWidth;
|
|
30183
|
+
}
|
|
30184
|
+
checkAndUpdateStickyState() {
|
|
30185
|
+
if (!this.tableDivElement || !this._fixedCols) {
|
|
30186
|
+
this.stickyColsDisabled = false;
|
|
30187
|
+
return;
|
|
30188
|
+
}
|
|
30189
|
+
const containerWidth = this.tableDivElement.clientWidth;
|
|
30190
|
+
const fixedColsWidth = this.calculateFixedColsWidth();
|
|
30191
|
+
this.stickyColsDisabled = fixedColsWidth > 0 && fixedColsWidth >= containerWidth;
|
|
30192
|
+
}
|
|
30219
30193
|
updateDataToKeyMap(data) {
|
|
30220
30194
|
data.forEach((data) => {
|
|
30221
30195
|
if (!this.dataToKeyMap.has(data)) {
|
|
@@ -30435,7 +30409,7 @@ class KolTableStateless {
|
|
|
30435
30409
|
return dataField;
|
|
30436
30410
|
}
|
|
30437
30411
|
isFixedCol(index) {
|
|
30438
|
-
if (!this._fixedCols || index === undefined) {
|
|
30412
|
+
if (!this._fixedCols || index === undefined || this.stickyColsDisabled) {
|
|
30439
30413
|
return undefined;
|
|
30440
30414
|
}
|
|
30441
30415
|
if (index < this._fixedCols[0]) {
|
|
@@ -30722,12 +30696,12 @@ class KolTableStateless {
|
|
|
30722
30696
|
const dataField = this.createDataField(this.state._data, this.state._headerCells);
|
|
30723
30697
|
this.checkboxRefs = [];
|
|
30724
30698
|
const horizontalHeaders = this.state._headerCells.horizontal;
|
|
30725
|
-
return (hAsync("div", { key: '
|
|
30699
|
+
return (hAsync("div", { key: '5ddf10f82b6aeef72bae63ff222daac7e9cb76c2', class: "kol-table" }, this.state._hasSettingsMenu && hAsync(KolTableSettingsWcTag, { key: '35dc658b20b20949fb2a2c251243b1868e23fff1', _horizontalHeaderCells: horizontalHeaders !== null && horizontalHeaders !== void 0 ? horizontalHeaders : [] }), hAsync("div", { key: 'da2904a5dacc000f911eaef29cc6f01ba31fb418', ref: (element) => (this.tableDivElement = element), class: "kol-table__scroll-container", tabindex: this.tableDivElementHasScrollbar ? '-1' : undefined }, hAsync("table", { key: '1529eb6a1d029c1df0942f244b3dac52fc937bbc', class: "kol-table__table", style: {
|
|
30726
30700
|
minWidth: this.getTableMinWidth(),
|
|
30727
|
-
} }, hAsync("caption", { key: '
|
|
30701
|
+
} }, hAsync("caption", { key: '1cf7ded256d54d7c7fb05a0366a888f51149dc1c', class: "kol-table__focus-element kol-table__caption", id: "caption", tabindex: this.tableDivElementHasScrollbar ? '0' : undefined }, this.state._label), Array.isArray(horizontalHeaders) && (hAsync("thead", { key: '4ea94abfaba71e502d3cbcfc5c56ad9945944df2', class: "kol-table__head" }, [
|
|
30728
30702
|
horizontalHeaders.map((cols, rowIndex) => (hAsync("tr", { class: "kol-table__head-row", key: `thead-${rowIndex}` }, this.state._selection && this.renderHeadingSelectionCell(), rowIndex === 0 && this.renderHeaderTdCell(), Array.isArray(cols) && cols.map((cell, colIndex) => this.renderHeadingCell(cell, rowIndex, colIndex, false))))),
|
|
30729
30703
|
this.renderSpacer('head', horizontalHeaders),
|
|
30730
|
-
])), hAsync("tbody", { key: '
|
|
30704
|
+
])), hAsync("tbody", { key: '956ba95c28f4593fe01d94c6191002d4b105d0f1', class: "kol-table__body" }, dataField.map((row, rowIndex) => this.renderTableRow(row, rowIndex, true))), this.renderFoot()))));
|
|
30731
30705
|
}
|
|
30732
30706
|
get host() { return getElement(this); }
|
|
30733
30707
|
static get watchers() { return {
|
|
@@ -30754,6 +30728,7 @@ class KolTableStateless {
|
|
|
30754
30728
|
"_hasSettingsMenu": [4, "_has-settings-menu"],
|
|
30755
30729
|
"state": [32],
|
|
30756
30730
|
"tableDivElementHasScrollbar": [32],
|
|
30731
|
+
"stickyColsDisabled": [32],
|
|
30757
30732
|
"previousHeaderCells": [32]
|
|
30758
30733
|
},
|
|
30759
30734
|
"$listeners$": [[0, "keydown", "handleKeyDown"], [0, "changeheadercells", "handleSettingsChange"]],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@public-ui/hydrate",
|
|
3
|
-
"version": "4.1.1
|
|
3
|
+
"version": "4.1.1",
|
|
4
4
|
"license": "EUPL-1.2",
|
|
5
5
|
"homepage": "https://public-ui.github.io",
|
|
6
6
|
"repository": {
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"prettier": "3.8.1",
|
|
53
53
|
"prettier-plugin-organize-imports": "4.3.0",
|
|
54
54
|
"rimraf": "6.1.3",
|
|
55
|
-
"@public-ui/components": "4.1.1
|
|
55
|
+
"@public-ui/components": "4.1.1"
|
|
56
56
|
},
|
|
57
57
|
"sideEffects": false,
|
|
58
58
|
"type": "commonjs",
|