@coveo/atomic 3.61.5 → 3.63.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/custom-elements.json +189 -20
- package/dist/cjs/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.cjs +19 -7
- package/dist/cjs/components/commerce/atomic-commerce-interface/atomic-commerce-interface.cjs +25 -4
- package/dist/cjs/components/commerce/atomic-commerce-pager/atomic-commerce-pager.cjs +3 -2
- package/dist/cjs/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.cjs +1 -1
- package/dist/cjs/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.cjs +25 -4
- package/dist/cjs/components/common/facets/category-facet/active-value.cjs +69 -0
- package/dist/cjs/components/common/facets/category-facet/selected-value.cjs +78 -0
- package/dist/cjs/components/common/facets/category-facet/value-link.cjs +5 -6
- package/dist/cjs/components/common/interface/i18n.cjs +6 -2
- package/dist/cjs/components/common/interface/interface-controller.cjs +8 -4
- package/dist/cjs/components/common/pager/pager-fit-controller.cjs +72 -0
- package/dist/cjs/components/insight/atomic-insight-pager/atomic-insight-pager.cjs +3 -2
- package/dist/cjs/components/search/atomic-category-facet/atomic-category-facet.cjs +19 -8
- package/dist/cjs/components/search/atomic-pager/atomic-pager.cjs +3 -2
- package/dist/cjs/components/search/atomic-result-date/atomic-result-date.cjs +11 -16
- package/dist/cjs/components/search/atomic-results-per-page/atomic-results-per-page.cjs +1 -1
- package/dist/cjs/generated/dayjs-locales-data.cjs +43 -43
- package/dist/cjs/global/environment.cjs +1 -1
- package/dist/cjs/utils/dayjs-locales.cjs +23 -9
- package/dist/cjs/utils/field-utils.cjs +5 -1
- package/dist/cjs/{components/common/facets/category-facet/parent-value-link.cjs → utils/locale-utils.cjs} +14 -11
- package/dist/cjs/versions.cjs +1 -1
- package/dist/esm/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.js +19 -7
- package/dist/esm/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +25 -4
- package/dist/esm/components/commerce/atomic-commerce-pager/atomic-commerce-pager.js +3 -2
- package/dist/esm/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.js +1 -1
- package/dist/esm/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +25 -4
- package/dist/esm/components/common/facets/category-facet/active-value.js +31 -0
- package/dist/esm/components/common/facets/category-facet/selected-value.js +30 -0
- package/dist/esm/components/common/facets/category-facet/value-link.js +5 -6
- package/dist/esm/components/common/interface/i18n.js +6 -2
- package/dist/esm/components/common/interface/interface-controller.js +8 -4
- package/dist/esm/components/common/pager/pager-fit-controller.js +34 -0
- package/dist/esm/components/insight/atomic-insight-pager/atomic-insight-pager.js +3 -2
- package/dist/esm/components/search/atomic-category-facet/atomic-category-facet.js +19 -8
- package/dist/esm/components/search/atomic-pager/atomic-pager.js +3 -2
- package/dist/esm/components/search/atomic-result-date/atomic-result-date.js +10 -15
- package/dist/esm/components/search/atomic-results-per-page/atomic-results-per-page.js +1 -1
- package/dist/esm/generated/dayjs-locales-data.js +43 -43
- package/dist/esm/global/environment.js +1 -1
- package/dist/esm/utils/dayjs-locales.js +23 -9
- package/dist/esm/utils/field-utils.js +5 -1
- package/dist/esm/utils/locale-utils.js +12 -0
- package/dist/esm/versions.js +1 -1
- package/dist/lang/cs.json +1 -1
- package/dist/lang/da.json +1 -1
- package/dist/lang/de.json +1 -1
- package/dist/lang/el.json +1 -1
- package/dist/lang/es.json +1 -1
- package/dist/lang/fi.json +1 -1
- package/dist/lang/hu.json +1 -1
- package/dist/lang/id.json +1 -1
- package/dist/lang/it.json +1 -1
- package/dist/lang/ja.json +1 -1
- package/dist/lang/ko.json +1 -1
- package/dist/lang/nl.json +1 -1
- package/dist/lang/no.json +1 -1
- package/dist/lang/pl.json +1 -1
- package/dist/lang/pt-BR.json +1 -1
- package/dist/lang/pt.json +1 -1
- package/dist/lang/ru.json +1 -1
- package/dist/lang/sv.json +1 -1
- package/dist/lang/th.json +1 -1
- package/dist/lang/tr.json +1 -1
- package/dist/lang/zh-CN.json +1 -1
- package/dist/lang/zh-TW.json +1 -1
- package/dist/lang/zh.json +1 -1
- package/dist/types/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.d.ts +7 -1
- package/dist/types/components/commerce/atomic-commerce-interface/atomic-commerce-interface.d.ts +17 -0
- package/dist/types/components/commerce/atomic-commerce-pager/atomic-commerce-pager.d.ts +1 -0
- package/dist/types/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.d.ts +13 -0
- package/dist/types/components/common/facets/category-facet/active-value.d.ts +19 -0
- package/dist/types/components/common/facets/category-facet/selected-value.d.ts +22 -0
- package/dist/types/components/common/facets/category-facet/value-link.d.ts +0 -1
- package/dist/types/components/common/interface/i18n.d.ts +9 -5
- package/dist/types/components/common/pager/pager-fit-controller.d.ts +21 -0
- package/dist/types/components/common/suggestions/suggestion-manager.d.ts +1 -1
- package/dist/types/components/common/suggestions/suggestions-types.d.ts +1 -1
- package/dist/types/components/insight/atomic-insight-interface/atomic-insight-interface.d.ts +4 -0
- package/dist/types/components/insight/atomic-insight-pager/atomic-insight-pager.d.ts +1 -0
- package/dist/types/components/recommendations/atomic-recs-interface/atomic-recs-interface.d.ts +4 -0
- package/dist/types/components/search/atomic-category-facet/atomic-category-facet.d.ts +8 -2
- package/dist/types/components/search/atomic-pager/atomic-pager.d.ts +1 -0
- package/dist/types/components/search/atomic-result-date/atomic-result-date.d.ts +3 -0
- package/dist/types/components/search/atomic-search-interface/atomic-search-interface.d.ts +4 -0
- package/dist/types/utils/dayjs-locales.d.ts +1 -1
- package/dist/types/utils/field-utils.d.ts +1 -1
- package/dist/types/utils/locale-utils.d.ts +7 -0
- package/package.json +4 -4
- package/dist/esm/components/common/facets/category-facet/parent-value-link.js +0 -9
- package/dist/types/components/common/facets/category-facet/parent-value-link.d.ts +0 -6
|
@@ -52,6 +52,7 @@ const with_tailwind_styles_cjs_namespaceObject = require("../../../decorators/wi
|
|
|
52
52
|
const children_update_complete_mixin_cjs_namespaceObject = require("../../../mixins/children-update-complete-mixin.cjs");
|
|
53
53
|
const init_queue_cjs_namespaceObject = require("../../../utils/init-queue.cjs");
|
|
54
54
|
const initialization_common_utils_cjs_namespaceObject = require("../../../utils/initialization-common-utils.cjs");
|
|
55
|
+
const locale_utils_cjs_namespaceObject = require("../../../utils/locale-utils.cjs");
|
|
55
56
|
const bindings_context_cjs_namespaceObject = require("../../common/context/bindings-context.cjs");
|
|
56
57
|
const analytics_config_cjs_namespaceObject = require("../../common/interface/analytics-config.cjs");
|
|
57
58
|
const interface_controller_cjs_namespaceObject = require("../../common/interface/interface-controller.cjs");
|
|
@@ -82,7 +83,7 @@ class AtomicCommerceRecommendationInterface extends (0, children_update_complete
|
|
|
82
83
|
}
|
|
83
84
|
updateLocale(language, country, currency) {
|
|
84
85
|
if (!this.interfaceController.engineIsCreated(this.engine) || !this.context) return;
|
|
85
|
-
language && this.interfaceController.onLanguageChange(language);
|
|
86
|
+
if (language || country && this.localizeWithCountry) this.interfaceController.onLanguageChange(this.getLocale(language || this.context.state.language, country || this.context.state.country));
|
|
86
87
|
if (this.isNewLocale(language, country, currency)) {
|
|
87
88
|
const { setContext } = (0, commerce_namespaceObject.loadContextActions)(this.engine);
|
|
88
89
|
this.engine.dispatch(setContext({
|
|
@@ -105,11 +106,15 @@ class AtomicCommerceRecommendationInterface extends (0, children_update_complete
|
|
|
105
106
|
updateIconAssetsPath() {
|
|
106
107
|
this.store.state.iconAssetsPath = this.iconAssetsPath;
|
|
107
108
|
}
|
|
109
|
+
toggleLocalizeWithCountry() {
|
|
110
|
+
if (!this.context) return;
|
|
111
|
+
this.interfaceController.onLanguageChange(this.getLocale(this.context.state.language, this.context.state.country));
|
|
112
|
+
}
|
|
108
113
|
async updateLanguage() {
|
|
109
114
|
if (!this.interfaceController.engineIsCreated(this.engine) || !this.language || !this.context) return;
|
|
110
115
|
this.engine.logger.warn('The `language` property will be removed in the next major version of Atomic (v4). Rather than using this property, set the initial language through the engine configuration when calling `initializeWithEngine`, and update the language as needed using the `updateLocale` method.');
|
|
111
116
|
this.context.setLanguage(this.language);
|
|
112
|
-
return this.interfaceController.onLanguageChange();
|
|
117
|
+
return this.interfaceController.onLanguageChange(this.getLocale(this.language, this.context.state.country));
|
|
113
118
|
}
|
|
114
119
|
disconnectedCallback() {
|
|
115
120
|
super.disconnectedCallback();
|
|
@@ -150,14 +155,17 @@ class AtomicCommerceRecommendationInterface extends (0, children_update_complete
|
|
|
150
155
|
}
|
|
151
156
|
initLanguage() {
|
|
152
157
|
if (!this.context || this.language) return;
|
|
153
|
-
this.interfaceController.onLanguageChange(this.context.state.language);
|
|
158
|
+
this.interfaceController.onLanguageChange(this.getLocale(this.context.state.language, this.context.state.country));
|
|
159
|
+
}
|
|
160
|
+
getLocale(language, country) {
|
|
161
|
+
return this.localizeWithCountry ? (0, locale_utils_cjs_namespaceObject.withCountry)(language, country) : language;
|
|
154
162
|
}
|
|
155
163
|
isNewLocale(language, country, currency) {
|
|
156
164
|
if (!this.context) return false;
|
|
157
165
|
return language && language !== this.context.state.language || country && country !== this.context.state.country || currency && currency !== this.context.state.currency;
|
|
158
166
|
}
|
|
159
167
|
constructor(){
|
|
160
|
-
super(), this.bindings = {}, this.interfaceController = new interface_controller_cjs_namespaceObject.InterfaceController(this, 'CoveoAtomic', commerce_namespaceObject.VERSION), this.scrollContainer = 'atomic-commerce-recommendation-interface', this.languageAssetsPath = './lang', this.iconAssetsPath = './assets', this.analytics = true, this.handleInitialization = (event)=>{
|
|
168
|
+
super(), this.bindings = {}, this.interfaceController = new interface_controller_cjs_namespaceObject.InterfaceController(this, 'CoveoAtomic', commerce_namespaceObject.VERSION), this.scrollContainer = 'atomic-commerce-recommendation-interface', this.languageAssetsPath = './lang', this.iconAssetsPath = './assets', this.localizeWithCountry = false, this.analytics = true, this.handleInitialization = (event)=>{
|
|
161
169
|
this.interfaceController.onComponentInitializing(event);
|
|
162
170
|
};
|
|
163
171
|
this.store = (0, external_store_cjs_namespaceObject.createCommerceRecommendationStore)();
|
|
@@ -234,6 +242,13 @@ _ts_decorate([
|
|
|
234
242
|
}),
|
|
235
243
|
_ts_metadata("design:type", String)
|
|
236
244
|
], AtomicCommerceRecommendationInterface.prototype, "language", void 0);
|
|
245
|
+
_ts_decorate([
|
|
246
|
+
(0, decorators_js_namespaceObject.property)({
|
|
247
|
+
type: Boolean,
|
|
248
|
+
attribute: 'localize-with-country',
|
|
249
|
+
reflect: true
|
|
250
|
+
})
|
|
251
|
+
], AtomicCommerceRecommendationInterface.prototype, "localizeWithCountry", void 0);
|
|
237
252
|
_ts_decorate([
|
|
238
253
|
(0, decorators_js_namespaceObject.property)({
|
|
239
254
|
type: Boolean,
|
|
@@ -254,6 +269,12 @@ _ts_decorate([
|
|
|
254
269
|
_ts_metadata("design:paramtypes", []),
|
|
255
270
|
_ts_metadata("design:returntype", void 0)
|
|
256
271
|
], AtomicCommerceRecommendationInterface.prototype, "updateIconAssetsPath", null);
|
|
272
|
+
_ts_decorate([
|
|
273
|
+
(0, watch_cjs_namespaceObject.watch)('localizeWithCountry'),
|
|
274
|
+
_ts_metadata("design:type", Function),
|
|
275
|
+
_ts_metadata("design:paramtypes", []),
|
|
276
|
+
_ts_metadata("design:returntype", void 0)
|
|
277
|
+
], AtomicCommerceRecommendationInterface.prototype, "toggleLocalizeWithCountry", null);
|
|
257
278
|
_ts_decorate([
|
|
258
279
|
(0, watch_cjs_namespaceObject.watch)('language'),
|
|
259
280
|
_ts_metadata("design:type", Function),
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
renderCategoryFacetActiveValue: ()=>renderCategoryFacetActiveValue
|
|
32
|
+
});
|
|
33
|
+
const external_lit_namespaceObject = require("lit");
|
|
34
|
+
const keyed_js_namespaceObject = require("lit/directives/keyed.js");
|
|
35
|
+
const ref_js_namespaceObject = require("lit/directives/ref.js");
|
|
36
|
+
const facet_value_label_highlight_cjs_namespaceObject = require("../facet-value-label-highlight/facet-value-label-highlight.cjs");
|
|
37
|
+
const renderCategoryFacetActiveValue = ({ props: { displayValue, numberOfResults, i18n, searchQuery, isLeafValue, setRef } })=>(children)=>{
|
|
38
|
+
const count = numberOfResults.toLocaleString(i18n.language);
|
|
39
|
+
return (0, external_lit_namespaceObject.html)`${(0, keyed_js_namespaceObject.keyed)(displayValue, (0, external_lit_namespaceObject.html)`<li class="contents">
|
|
40
|
+
<span
|
|
41
|
+
part="active-parent ${isLeafValue ? 'leaf-value' : 'node-value'}"
|
|
42
|
+
class="text-primary flex w-full items-center truncate px-2 py-2.5 text-left"
|
|
43
|
+
aria-current="true"
|
|
44
|
+
tabindex="-1"
|
|
45
|
+
${(0, ref_js_namespaceObject.ref)(setRef)}
|
|
46
|
+
>
|
|
47
|
+
${(0, facet_value_label_highlight_cjs_namespaceObject.renderFacetValueLabelHighlight)({
|
|
48
|
+
props: {
|
|
49
|
+
displayValue,
|
|
50
|
+
searchQuery,
|
|
51
|
+
isSelected: true
|
|
52
|
+
}
|
|
53
|
+
})}
|
|
54
|
+
<span part="value-count" class="value-count">
|
|
55
|
+
${i18n.t('between-parentheses', {
|
|
56
|
+
text: count
|
|
57
|
+
})}
|
|
58
|
+
</span>
|
|
59
|
+
</span>
|
|
60
|
+
${children}
|
|
61
|
+
</li>`)}`;
|
|
62
|
+
};
|
|
63
|
+
exports.renderCategoryFacetActiveValue = __webpack_exports__.renderCategoryFacetActiveValue;
|
|
64
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
65
|
+
"renderCategoryFacetActiveValue"
|
|
66
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
67
|
+
Object.defineProperty(exports, '__esModule', {
|
|
68
|
+
value: true
|
|
69
|
+
});
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.n = (module)=>{
|
|
5
|
+
var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
|
|
6
|
+
__webpack_require__.d(getter, {
|
|
7
|
+
a: getter
|
|
8
|
+
});
|
|
9
|
+
return getter;
|
|
10
|
+
};
|
|
11
|
+
})();
|
|
12
|
+
(()=>{
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
(()=>{
|
|
25
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
26
|
+
})();
|
|
27
|
+
(()=>{
|
|
28
|
+
__webpack_require__.r = (exports1)=>{
|
|
29
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
30
|
+
value: 'Module'
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
33
|
+
value: true
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
var __webpack_exports__ = {};
|
|
38
|
+
__webpack_require__.r(__webpack_exports__);
|
|
39
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
40
|
+
renderCategoryFacetSelectedValue: ()=>renderCategoryFacetSelectedValue
|
|
41
|
+
});
|
|
42
|
+
const external_lit_namespaceObject = require("lit");
|
|
43
|
+
const close_cjs_namespaceObject = require("../../../../images/close.cjs");
|
|
44
|
+
var close_cjs_default = /*#__PURE__*/ __webpack_require__.n(close_cjs_namespaceObject);
|
|
45
|
+
require("../../atomic-icon/atomic-icon.cjs");
|
|
46
|
+
const external_button_cjs_namespaceObject = require("../../button.cjs");
|
|
47
|
+
const renderCategoryFacetSelectedValue = ({ props: { displayValue, label, i18n, onClearFilters } })=>(0, external_lit_namespaceObject.html)`<div part="selected-value" class="mt-3 flex items-center justify-between gap-2">
|
|
48
|
+
<span
|
|
49
|
+
part="selected-value-pill"
|
|
50
|
+
title=${displayValue}
|
|
51
|
+
class="bg-neutral-light truncate rounded-md px-2 py-1 text-sm"
|
|
52
|
+
>${displayValue}</span
|
|
53
|
+
>
|
|
54
|
+
${(0, external_button_cjs_namespaceObject.renderButton)({
|
|
55
|
+
props: {
|
|
56
|
+
part: 'selected-value-clear-button',
|
|
57
|
+
style: 'text-primary',
|
|
58
|
+
class: 'flex shrink-0 items-center p-1 text-sm',
|
|
59
|
+
ariaLabel: i18n.t('clear-filters-for-facet', {
|
|
60
|
+
count: 1,
|
|
61
|
+
label: i18n.t(label)
|
|
62
|
+
}),
|
|
63
|
+
onClick: onClearFilters
|
|
64
|
+
}
|
|
65
|
+
})((0, external_lit_namespaceObject.html)`<atomic-icon
|
|
66
|
+
part="selected-value-clear-button-icon"
|
|
67
|
+
class="mr-1 h-2 w-2"
|
|
68
|
+
.icon=${close_cjs_default()}
|
|
69
|
+
></atomic-icon>
|
|
70
|
+
<span>${i18n.t('clear')}</span>`)}
|
|
71
|
+
</div>`;
|
|
72
|
+
exports.renderCategoryFacetSelectedValue = __webpack_exports__.renderCategoryFacetSelectedValue;
|
|
73
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
74
|
+
"renderCategoryFacetSelectedValue"
|
|
75
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
76
|
+
Object.defineProperty(exports, '__esModule', {
|
|
77
|
+
value: true
|
|
78
|
+
});
|
|
@@ -33,12 +33,11 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
33
33
|
const external_lit_namespaceObject = require("lit");
|
|
34
34
|
const facet_value_label_highlight_cjs_namespaceObject = require("../facet-value-label-highlight/facet-value-label-highlight.cjs");
|
|
35
35
|
const facet_value_link_cjs_namespaceObject = require("../facet-value-link/facet-value-link.cjs");
|
|
36
|
-
const renderCategoryFacetValueLink = ({ props: { displayValue, numberOfResults, i18n, onClick,
|
|
37
|
-
const partNames = [
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
else partNames.push('node-value');
|
|
36
|
+
const renderCategoryFacetValueLink = ({ props: { displayValue, numberOfResults, i18n, onClick, isSelected, searchQuery, isLeafValue, setRef } })=>(children)=>{
|
|
37
|
+
const partNames = [
|
|
38
|
+
`value-link${isSelected ? ' value-link-selected' : ''}`,
|
|
39
|
+
isLeafValue ? 'leaf-value' : 'node-value'
|
|
40
|
+
];
|
|
42
41
|
return (0, external_lit_namespaceObject.html)`${(0, facet_value_link_cjs_namespaceObject.renderFacetValueLink)({
|
|
43
42
|
props: {
|
|
44
43
|
displayValue,
|
|
@@ -76,9 +76,13 @@ function i18nBackendOptions(atomicInterface) {
|
|
|
76
76
|
}
|
|
77
77
|
};
|
|
78
78
|
}
|
|
79
|
-
function loadTranslations(atomicInterface, language) {
|
|
79
|
+
async function loadTranslations(atomicInterface, language) {
|
|
80
|
+
const { languageUtils } = atomicInterface.i18n.services;
|
|
81
|
+
const languages = languageUtils.toResolveHierarchy(languageUtils.formatLanguageCode(language), false);
|
|
82
|
+
await Promise.all(languages.filter(isI18nLocaleAvailable).map((lng)=>loadTranslationBundle(atomicInterface, lng)));
|
|
83
|
+
}
|
|
84
|
+
function loadTranslationBundle(atomicInterface, lng) {
|
|
80
85
|
const { i18n } = atomicInterface;
|
|
81
|
-
const lng = language.split('-')[0];
|
|
82
86
|
return new Promise((resolve)=>{
|
|
83
87
|
new (external_i18next_http_backend_default())(i18n.services, i18nBackendOptions(atomicInterface)).read(lng, i18nTranslationNamespace, (_error, data)=>{
|
|
84
88
|
if (data) i18n.addResourceBundle(lng, i18nTranslationNamespace, data, true, false);
|
|
@@ -53,8 +53,10 @@ class InterfaceController {
|
|
|
53
53
|
this.host.updateIconAssetsPath();
|
|
54
54
|
initEngine();
|
|
55
55
|
if (this.host.registerFieldsToInclude) this.host.registerFieldsToInclude();
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
await Promise.all([
|
|
57
|
+
this.i18nPromise,
|
|
58
|
+
(0, dayjs_locales_cjs_namespaceObject.loadDayjsLocale)(this.host.language || 'en')
|
|
59
|
+
]);
|
|
58
60
|
this.initComponents();
|
|
59
61
|
}
|
|
60
62
|
onAnalyticsChange() {
|
|
@@ -67,8 +69,10 @@ class InterfaceController {
|
|
|
67
69
|
const language = newLanguage ?? this.host.language;
|
|
68
70
|
const languageWithFallback = language ?? 'en';
|
|
69
71
|
const { i18n } = this.host;
|
|
70
|
-
|
|
71
|
-
|
|
72
|
+
Promise.all([
|
|
73
|
+
(0, dayjs_locales_cjs_namespaceObject.loadDayjsLocale)(languageWithFallback),
|
|
74
|
+
(0, external_i18n_cjs_namespaceObject.loadTranslations)(this.host, languageWithFallback)
|
|
75
|
+
]).then(()=>{
|
|
72
76
|
i18n.changeLanguage(language);
|
|
73
77
|
});
|
|
74
78
|
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
class PagerFitController {
|
|
31
|
+
hostConnected() {
|
|
32
|
+
this.resizeObserver = new ResizeObserver(()=>requestAnimationFrame(()=>this.reset()));
|
|
33
|
+
this.resizeObserver.observe(document.documentElement);
|
|
34
|
+
if (this.host.parentElement) this.resizeObserver.observe(this.host.parentElement);
|
|
35
|
+
}
|
|
36
|
+
hostDisconnected() {
|
|
37
|
+
this.resizeObserver?.disconnect();
|
|
38
|
+
}
|
|
39
|
+
hostUpdated() {
|
|
40
|
+
const root = this.host.shadowRoot;
|
|
41
|
+
const previousButton = root?.querySelector('[part="previous-button"]');
|
|
42
|
+
const nextButton = root?.querySelector('[part="next-button"]');
|
|
43
|
+
const pageButtonCount = root?.querySelectorAll('[part~="page-button"]').length ?? 0;
|
|
44
|
+
const isWrapping = !!previousButton && !!nextButton && nextButton.offsetTop > previousButton.offsetTop;
|
|
45
|
+
if (isWrapping && pageButtonCount > 1) {
|
|
46
|
+
this.maxPages = pageButtonCount - 1;
|
|
47
|
+
queueMicrotask(()=>this.host.requestUpdate());
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
getNumberOfPagesToDisplay(numberOfPages) {
|
|
51
|
+
return Math.min(numberOfPages, this.maxPages);
|
|
52
|
+
}
|
|
53
|
+
reset() {
|
|
54
|
+
this.maxPages = 1 / 0;
|
|
55
|
+
this.host.requestUpdate();
|
|
56
|
+
}
|
|
57
|
+
constructor(host){
|
|
58
|
+
this.host = host;
|
|
59
|
+
this.maxPages = 1 / 0;
|
|
60
|
+
host.addController(this);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
64
|
+
PagerFitController: ()=>PagerFitController
|
|
65
|
+
});
|
|
66
|
+
exports.PagerFitController = __webpack_exports__.PagerFitController;
|
|
67
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
68
|
+
"PagerFitController"
|
|
69
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
70
|
+
Object.defineProperty(exports, '__esModule', {
|
|
71
|
+
value: true
|
|
72
|
+
});
|
|
@@ -47,6 +47,7 @@ const keyed_js_namespaceObject = require("lit/directives/keyed.js");
|
|
|
47
47
|
const when_js_namespaceObject = require("lit/directives/when.js");
|
|
48
48
|
const pager_buttons_cjs_namespaceObject = require("../../common/pager/pager-buttons.cjs");
|
|
49
49
|
const pager_navigation_cjs_namespaceObject = require("../../common/pager/pager-navigation.cjs");
|
|
50
|
+
const pager_fit_controller_cjs_namespaceObject = require("../../common/pager/pager-fit-controller.cjs");
|
|
50
51
|
const pager_utils_cjs_namespaceObject = require("../../common/pager/pager-utils.cjs");
|
|
51
52
|
const validate_props_controller_cjs_namespaceObject = require("../../common/validate-props-controller/validate-props-controller.cjs");
|
|
52
53
|
const bind_state_cjs_namespaceObject = require("../../../decorators/bind-state.cjs");
|
|
@@ -80,7 +81,7 @@ class AtomicInsightPager extends external_lit_namespaceObject.LitElement {
|
|
|
80
81
|
});
|
|
81
82
|
}
|
|
82
83
|
render() {
|
|
83
|
-
const pagesRange = (0, pager_utils_cjs_namespaceObject.getCurrentPagesRange)(this.pagerState.currentPage - 1, this.numberOfPages, this.pagerState.maxPage);
|
|
84
|
+
const pagesRange = (0, pager_utils_cjs_namespaceObject.getCurrentPagesRange)(this.pagerState.currentPage - 1, this.pagerFit.getNumberOfPagesToDisplay(this.numberOfPages), this.pagerState.maxPage);
|
|
84
85
|
return (0, external_lit_namespaceObject.html)`${(0, when_js_namespaceObject.when)(this.pagerState.maxPage > 1, ()=>(0, external_lit_namespaceObject.html)`
|
|
85
86
|
${(0, pager_navigation_cjs_namespaceObject.renderPagerNavigation)({
|
|
86
87
|
props: {
|
|
@@ -149,7 +150,7 @@ class AtomicInsightPager extends external_lit_namespaceObject.LitElement {
|
|
|
149
150
|
});
|
|
150
151
|
}
|
|
151
152
|
constructor(){
|
|
152
|
-
super(), this.numberOfPages = 5, this.ariaMessage = new accessibility_utils_cjs_namespaceObject.AriaLiveRegionController(this, 'atomic-insight-pager');
|
|
153
|
+
super(), this.numberOfPages = 5, this.ariaMessage = new accessibility_utils_cjs_namespaceObject.AriaLiveRegionController(this, 'atomic-insight-pager'), this.pagerFit = new pager_fit_controller_cjs_namespaceObject.PagerFitController(this);
|
|
153
154
|
new validate_props_controller_cjs_namespaceObject.ValidatePropsController(this, ()=>({
|
|
154
155
|
numberOfPages: this.numberOfPages
|
|
155
156
|
}), AtomicInsightPager.propsSchema);
|
|
@@ -45,13 +45,14 @@ const external_lit_namespaceObject = require("lit");
|
|
|
45
45
|
const decorators_js_namespaceObject = require("lit/decorators.js");
|
|
46
46
|
const map_js_namespaceObject = require("lit/directives/map.js");
|
|
47
47
|
const when_js_namespaceObject = require("lit/directives/when.js");
|
|
48
|
+
const active_value_cjs_namespaceObject = require("../../common/facets/category-facet/active-value.cjs");
|
|
48
49
|
const all_categories_button_cjs_namespaceObject = require("../../common/facets/category-facet/all-categories-button.cjs");
|
|
49
50
|
const children_as_tree_container_cjs_namespaceObject = require("../../common/facets/category-facet/children-as-tree-container.cjs");
|
|
50
51
|
const parent_as_tree_container_cjs_namespaceObject = require("../../common/facets/category-facet/parent-as-tree-container.cjs");
|
|
51
52
|
const parent_button_cjs_namespaceObject = require("../../common/facets/category-facet/parent-button.cjs");
|
|
52
|
-
const parent_value_link_cjs_namespaceObject = require("../../common/facets/category-facet/parent-value-link.cjs");
|
|
53
53
|
const search_results_container_cjs_namespaceObject = require("../../common/facets/category-facet/search-results-container.cjs");
|
|
54
54
|
const search_value_cjs_namespaceObject = require("../../common/facets/category-facet/search-value.cjs");
|
|
55
|
+
const selected_value_cjs_namespaceObject = require("../../common/facets/category-facet/selected-value.cjs");
|
|
55
56
|
const value_as_tree_container_cjs_namespaceObject = require("../../common/facets/category-facet/value-as-tree-container.cjs");
|
|
56
57
|
const value_link_cjs_namespaceObject = require("../../common/facets/category-facet/value-link.cjs");
|
|
57
58
|
const depends_on_cjs_namespaceObject = require("../../common/facets/depends-on.cjs");
|
|
@@ -211,6 +212,21 @@ class AtomicCategoryFacet extends external_lit_namespaceObject.LitElement {
|
|
|
211
212
|
}
|
|
212
213
|
});
|
|
213
214
|
}
|
|
215
|
+
renderSelectedValue() {
|
|
216
|
+
const activeValue = this.facetState.selectedValueAncestry.at(-1);
|
|
217
|
+
if (!activeValue) return external_lit_namespaceObject.nothing;
|
|
218
|
+
return (0, selected_value_cjs_namespaceObject.renderCategoryFacetSelectedValue)({
|
|
219
|
+
props: {
|
|
220
|
+
displayValue: (0, field_utils_cjs_namespaceObject.getFieldValueCaption)(this.field, activeValue.value, this.bindings.i18n),
|
|
221
|
+
label: this.label,
|
|
222
|
+
i18n: this.bindings.i18n,
|
|
223
|
+
onClearFilters: ()=>{
|
|
224
|
+
this.focusTargets.activeValueFocus.focusAfterSearch();
|
|
225
|
+
this.facet.deselectAll();
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
}
|
|
214
230
|
renderValuesTree(valuesAsTrees, isRoot) {
|
|
215
231
|
if (!this.hasParents) return this.renderChildren();
|
|
216
232
|
if (isRoot) return (0, value_as_tree_container_cjs_namespaceObject.renderCategoryFacetTreeValueContainer)()((0, external_lit_namespaceObject.html)`
|
|
@@ -255,16 +271,12 @@ class AtomicCategoryFacet extends external_lit_namespaceObject.LitElement {
|
|
|
255
271
|
const activeParent = valuesAsTrees[0];
|
|
256
272
|
const activeParentDisplayValue = (0, field_utils_cjs_namespaceObject.getFieldValueCaption)(this.field, activeParent.value, this.bindings.i18n);
|
|
257
273
|
return (0, external_lit_namespaceObject.html)`
|
|
258
|
-
${(0,
|
|
274
|
+
${(0, active_value_cjs_namespaceObject.renderCategoryFacetActiveValue)({
|
|
259
275
|
props: {
|
|
260
276
|
displayValue: activeParentDisplayValue,
|
|
261
277
|
numberOfResults: activeParent.numberOfResults,
|
|
262
278
|
i18n: this.bindings.i18n,
|
|
263
279
|
isLeafValue: activeParent.isLeafValue,
|
|
264
|
-
onClick: ()=>{
|
|
265
|
-
this.focusTargets.activeValueFocus.focusAfterSearch();
|
|
266
|
-
this.facet.deselectAll();
|
|
267
|
-
},
|
|
268
280
|
searchQuery: this.facetState.facetSearch.query,
|
|
269
281
|
setRef: (el)=>{
|
|
270
282
|
this.focusTargets.activeValueFocus.setTarget(el);
|
|
@@ -287,7 +299,6 @@ class AtomicCategoryFacet extends external_lit_namespaceObject.LitElement {
|
|
|
287
299
|
this.focusTargets.activeValueFocus.focusAfterSearch();
|
|
288
300
|
this.facet.toggleSelect(facetValue);
|
|
289
301
|
},
|
|
290
|
-
isParent: false,
|
|
291
302
|
isSelected,
|
|
292
303
|
searchQuery: this.facetState.facetSearch.query,
|
|
293
304
|
isLeafValue: facetValue.isLeafValue,
|
|
@@ -369,7 +380,7 @@ class AtomicCategoryFacet extends external_lit_namespaceObject.LitElement {
|
|
|
369
380
|
return (0, facet_container_cjs_namespaceObject.renderFacetContainer)()((0, external_lit_namespaceObject.html)`
|
|
370
381
|
${this.renderHeader()}
|
|
371
382
|
${(0, when_js_namespaceObject.when)(!this.isCollapsed, ()=>(0, external_lit_namespaceObject.html)`
|
|
372
|
-
${this.renderSearchInput()}
|
|
383
|
+
${this.renderSearchInput()} ${this.renderSelectedValue()}
|
|
373
384
|
${(0, when_js_namespaceObject.when)((0, facet_search_utils_cjs_namespaceObject.shouldDisplaySearchResults)(facetSearch), ()=>(0, external_lit_namespaceObject.html)`
|
|
374
385
|
${(0, when_js_namespaceObject.when)(facetSearch.values.length > 0, ()=>(0, facet_values_group_cjs_namespaceObject.renderFacetValuesGroup)({
|
|
375
386
|
props: {
|
|
@@ -48,6 +48,7 @@ const when_js_namespaceObject = require("lit/directives/when.js");
|
|
|
48
48
|
const store_cjs_namespaceObject = require("../../common/interface/store.cjs");
|
|
49
49
|
const pager_buttons_cjs_namespaceObject = require("../../common/pager/pager-buttons.cjs");
|
|
50
50
|
const pager_navigation_cjs_namespaceObject = require("../../common/pager/pager-navigation.cjs");
|
|
51
|
+
const pager_fit_controller_cjs_namespaceObject = require("../../common/pager/pager-fit-controller.cjs");
|
|
51
52
|
const pager_utils_cjs_namespaceObject = require("../../common/pager/pager-utils.cjs");
|
|
52
53
|
const validate_props_controller_cjs_namespaceObject = require("../../common/validate-props-controller/validate-props-controller.cjs");
|
|
53
54
|
const bind_state_cjs_namespaceObject = require("../../../decorators/bind-state.cjs");
|
|
@@ -85,7 +86,7 @@ class AtomicPager extends (0, bindings_mixin_cjs_namespaceObject.InitializeBindi
|
|
|
85
86
|
});
|
|
86
87
|
}
|
|
87
88
|
render() {
|
|
88
|
-
const pagesRange = (0, pager_utils_cjs_namespaceObject.getCurrentPagesRange)(this.pagerState.currentPage - 1, this.numberOfPages, this.pagerState.maxPage - 1);
|
|
89
|
+
const pagesRange = (0, pager_utils_cjs_namespaceObject.getCurrentPagesRange)(this.pagerState.currentPage - 1, this.pagerFit.getNumberOfPagesToDisplay(this.numberOfPages), this.pagerState.maxPage - 1);
|
|
89
90
|
return (0, external_lit_namespaceObject.html)`${(0, when_js_namespaceObject.when)(this.pagerState.maxPage > 1 && this.isAppLoaded, ()=>(0, external_lit_namespaceObject.html)` ${(0, pager_navigation_cjs_namespaceObject.renderPagerNavigation)({
|
|
90
91
|
props: {
|
|
91
92
|
i18n: this.bindings.i18n
|
|
@@ -150,7 +151,7 @@ class AtomicPager extends (0, bindings_mixin_cjs_namespaceObject.InitializeBindi
|
|
|
150
151
|
});
|
|
151
152
|
}
|
|
152
153
|
constructor(){
|
|
153
|
-
super(), this.isAppLoaded = false, this.numberOfPages = 5, this.previousButtonIcon = arrow_left_rounded_cjs_default(), this.nextButtonIcon = arrow_right_rounded_cjs_default(), this.ariaMessage = new accessibility_utils_cjs_namespaceObject.AriaLiveRegionController(this, 'atomic-pager');
|
|
154
|
+
super(), this.isAppLoaded = false, this.numberOfPages = 5, this.previousButtonIcon = arrow_left_rounded_cjs_default(), this.nextButtonIcon = arrow_right_rounded_cjs_default(), this.ariaMessage = new accessibility_utils_cjs_namespaceObject.AriaLiveRegionController(this, 'atomic-pager'), this.pagerFit = new pager_fit_controller_cjs_namespaceObject.PagerFitController(this);
|
|
154
155
|
new validate_props_controller_cjs_namespaceObject.ValidatePropsController(this, ()=>({
|
|
155
156
|
numberOfPages: this.numberOfPages
|
|
156
157
|
}), AtomicPager.propsSchema);
|
|
@@ -45,8 +45,8 @@ const external_dayjs_namespaceObject = require("dayjs");
|
|
|
45
45
|
var external_dayjs_default = /*#__PURE__*/ __webpack_require__.n(external_dayjs_namespaceObject);
|
|
46
46
|
const calendar_namespaceObject = require("dayjs/plugin/calendar");
|
|
47
47
|
var calendar_default = /*#__PURE__*/ __webpack_require__.n(calendar_namespaceObject);
|
|
48
|
-
const
|
|
49
|
-
var
|
|
48
|
+
const localizedFormat_namespaceObject = require("dayjs/plugin/localizedFormat");
|
|
49
|
+
var localizedFormat_default = /*#__PURE__*/ __webpack_require__.n(localizedFormat_namespaceObject);
|
|
50
50
|
const external_lit_namespaceObject = require("lit");
|
|
51
51
|
const decorators_js_namespaceObject = require("lit/decorators.js");
|
|
52
52
|
const when_js_namespaceObject = require("lit/directives/when.js");
|
|
@@ -67,7 +67,7 @@ function _ts_metadata(metadataKey, metadataValue) {
|
|
|
67
67
|
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(metadataKey, metadataValue);
|
|
68
68
|
}
|
|
69
69
|
external_dayjs_default().extend(calendar_default());
|
|
70
|
-
external_dayjs_default().extend(
|
|
70
|
+
external_dayjs_default().extend(localizedFormat_default());
|
|
71
71
|
class AtomicResultDate extends (0, light_dom_cjs_namespaceObject.LightDomMixin)(external_lit_namespaceObject.LitElement) {
|
|
72
72
|
initialize() {
|
|
73
73
|
if (!this.result && this.resultController.item) {
|
|
@@ -95,19 +95,14 @@ class AtomicResultDate extends (0, light_dom_cjs_namespaceObject.LightDomMixin)(
|
|
|
95
95
|
this.error = new Error(`Field "${this.field}" does not contain a valid date.`);
|
|
96
96
|
return null;
|
|
97
97
|
}
|
|
98
|
-
if (this.relativeTime) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
sameElse: this.format
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
return parsedValue.calendar();
|
|
110
|
-
}
|
|
98
|
+
if (this.relativeTime) return parsedValue.calendar(null, {
|
|
99
|
+
sameDay: this.bindings.i18n.t('calendar-same-day'),
|
|
100
|
+
nextDay: this.bindings.i18n.t('calendar-next-day'),
|
|
101
|
+
nextWeek: this.bindings.i18n.t('calendar-next-week'),
|
|
102
|
+
lastDay: this.bindings.i18n.t('calendar-last-day'),
|
|
103
|
+
lastWeek: this.bindings.i18n.t('calendar-last-week'),
|
|
104
|
+
sameElse: this.format
|
|
105
|
+
});
|
|
111
106
|
return parsedValue.format(this.format);
|
|
112
107
|
}
|
|
113
108
|
constructor(){
|
|
@@ -89,7 +89,7 @@ class AtomicResultsPerPage extends (0, bindings_mixin_cjs_namespaceObject.Initia
|
|
|
89
89
|
if (!this.searchStatusState) return (0, external_lit_namespaceObject.html)``;
|
|
90
90
|
return (0, external_lit_namespaceObject.html)`
|
|
91
91
|
${(0, when_js_namespaceObject.when)(!this.searchStatusState.hasError && this.isAppLoaded && this.searchStatusState.hasResults, ()=>(0, external_lit_namespaceObject.html)`
|
|
92
|
-
<div class="flex items-center">
|
|
92
|
+
<div class="flex flex-wrap items-center">
|
|
93
93
|
${(0, label_cjs_namespaceObject.renderLabel)()((0, external_lit_namespaceObject.html)`${this.label}`)}
|
|
94
94
|
${(0, fieldset_group_cjs_namespaceObject.renderFieldsetGroup)({
|
|
95
95
|
props: {
|