@coveo/atomic 3.62.0 → 3.64.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.
Files changed (139) hide show
  1. package/custom-elements.json +12960 -12663
  2. package/dist/cjs/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.cjs +1 -0
  3. package/dist/cjs/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.cjs +1 -1
  4. package/dist/cjs/components/commerce/atomic-commerce-facet/atomic-commerce-facet.cjs +1 -1
  5. package/dist/cjs/components/commerce/atomic-commerce-interface/atomic-commerce-interface.cjs +25 -4
  6. package/dist/cjs/components/commerce/atomic-commerce-pager/atomic-commerce-pager.cjs +3 -2
  7. package/dist/cjs/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.cjs +1 -1
  8. package/dist/cjs/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.cjs +25 -4
  9. package/dist/cjs/components/commerce/atomic-product-field-condition/atomic-product-field-condition.cjs +1 -4
  10. package/dist/cjs/components/commerce/atomic-product-template/atomic-product-template.cjs +15 -1
  11. package/dist/cjs/components/common/facets/facet-search/facet-search-aria-live.cjs +21 -8
  12. package/dist/cjs/components/common/interface/i18n.cjs +6 -2
  13. package/dist/cjs/components/common/interface/interface-controller.cjs +8 -4
  14. package/dist/cjs/components/common/pager/pager-fit-controller.cjs +72 -0
  15. package/dist/cjs/components/common/query-error/icon.cjs +7 -26
  16. package/dist/cjs/components/common/query-error/icons.cjs +68 -0
  17. package/dist/cjs/components/common/template-controller/template-utils.cjs +9 -0
  18. package/dist/cjs/components/insight/atomic-insight-facet/atomic-insight-facet.cjs +1 -1
  19. package/dist/cjs/components/insight/atomic-insight-pager/atomic-insight-pager.cjs +3 -2
  20. package/dist/cjs/components/insight/atomic-insight-result-children-template/atomic-insight-result-children-template.cjs +1 -5
  21. package/dist/cjs/components/insight/atomic-insight-result-template/atomic-insight-result-template.cjs +15 -1
  22. package/dist/cjs/components/insight/atomic-insight-smart-snippet/atomic-insight-smart-snippet.cjs +3 -3
  23. package/dist/cjs/components/recommendations/atomic-recs-result-template/atomic-recs-result-template.cjs +15 -1
  24. package/dist/cjs/components/search/atomic-category-facet/atomic-category-facet.cjs +1 -1
  25. package/dist/cjs/components/search/atomic-color-facet/atomic-color-facet.cjs +1 -1
  26. package/dist/cjs/components/search/atomic-facet/atomic-facet.cjs +1 -1
  27. package/dist/cjs/components/search/atomic-field-condition/atomic-field-condition.cjs +1 -4
  28. package/dist/cjs/components/search/atomic-pager/atomic-pager.cjs +3 -2
  29. package/dist/cjs/components/search/atomic-result-children-template/atomic-result-children-template.cjs +15 -1
  30. package/dist/cjs/components/search/atomic-result-date/atomic-result-date.cjs +11 -16
  31. package/dist/cjs/components/search/atomic-result-template/atomic-result-template.cjs +15 -1
  32. package/dist/cjs/components/search/atomic-results-per-page/atomic-results-per-page.cjs +1 -1
  33. package/dist/cjs/decorators/bind-state.cjs +38 -8
  34. package/dist/cjs/decorators/with-tailwind-styles.cjs +2 -1
  35. package/dist/cjs/generated/dayjs-locales-data.cjs +43 -43
  36. package/dist/cjs/global/environment.cjs +1 -1
  37. package/dist/cjs/utils/dayjs-locales.cjs +23 -9
  38. package/dist/cjs/utils/field-utils.cjs +5 -1
  39. package/dist/cjs/utils/init-queue.cjs +6 -4
  40. package/dist/cjs/utils/locale-utils.cjs +50 -0
  41. package/dist/cjs/utils/replace-breakpoint-utils.cjs +9 -4
  42. package/dist/cjs/versions.cjs +1 -1
  43. package/dist/esm/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +1 -0
  44. package/dist/esm/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.js +1 -1
  45. package/dist/esm/components/commerce/atomic-commerce-facet/atomic-commerce-facet.js +1 -1
  46. package/dist/esm/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +25 -4
  47. package/dist/esm/components/commerce/atomic-commerce-pager/atomic-commerce-pager.js +3 -2
  48. package/dist/esm/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.js +1 -1
  49. package/dist/esm/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +25 -4
  50. package/dist/esm/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +1 -1
  51. package/dist/esm/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +2 -5
  52. package/dist/esm/components/commerce/atomic-product-template/atomic-product-template.js +16 -2
  53. package/dist/esm/components/common/facets/facet-search/facet-search-aria-live.js +21 -8
  54. package/dist/esm/components/common/interface/i18n.js +6 -2
  55. package/dist/esm/components/common/interface/interface-controller.js +8 -4
  56. package/dist/esm/components/common/pager/pager-fit-controller.js +34 -0
  57. package/dist/esm/components/common/query-error/icon.js +5 -23
  58. package/dist/esm/components/common/query-error/icons.js +17 -0
  59. package/dist/esm/components/common/template-controller/template-utils.js +7 -1
  60. package/dist/esm/components/insight/atomic-insight-facet/atomic-insight-facet.js +1 -1
  61. package/dist/esm/components/insight/atomic-insight-pager/atomic-insight-pager.js +3 -2
  62. package/dist/esm/components/insight/atomic-insight-result-children/atomic-insight-result-children.js +1 -1
  63. package/dist/esm/components/insight/atomic-insight-result-children-template/atomic-insight-result-children-template.js +2 -6
  64. package/dist/esm/components/insight/atomic-insight-result-template/atomic-insight-result-template.js +16 -2
  65. package/dist/esm/components/insight/atomic-insight-smart-snippet/atomic-insight-smart-snippet.js +3 -3
  66. package/dist/esm/components/recommendations/atomic-recs-result-template/atomic-recs-result-template.js +16 -2
  67. package/dist/esm/components/search/atomic-category-facet/atomic-category-facet.js +1 -1
  68. package/dist/esm/components/search/atomic-color-facet/atomic-color-facet.js +1 -1
  69. package/dist/esm/components/search/atomic-facet/atomic-facet.js +1 -1
  70. package/dist/esm/components/search/atomic-field-condition/atomic-field-condition.js +2 -5
  71. package/dist/esm/components/search/atomic-pager/atomic-pager.js +3 -2
  72. package/dist/esm/components/search/atomic-result-children-template/atomic-result-children-template.js +16 -2
  73. package/dist/esm/components/search/atomic-result-date/atomic-result-date.js +10 -15
  74. package/dist/esm/components/search/atomic-result-template/atomic-result-template.js +16 -2
  75. package/dist/esm/components/search/atomic-results-per-page/atomic-results-per-page.js +1 -1
  76. package/dist/esm/components/search/atomic-search-box/atomic-search-box.js +1 -1
  77. package/dist/esm/decorators/bind-state.js +38 -8
  78. package/dist/esm/decorators/with-tailwind-styles.js +2 -1
  79. package/dist/esm/generated/dayjs-locales-data.js +43 -43
  80. package/dist/esm/global/environment.js +1 -1
  81. package/dist/esm/utils/dayjs-locales.js +23 -9
  82. package/dist/esm/utils/field-utils.js +5 -1
  83. package/dist/esm/utils/init-queue.js +6 -4
  84. package/dist/esm/utils/locale-utils.js +12 -0
  85. package/dist/esm/utils/replace-breakpoint-utils.js +9 -4
  86. package/dist/esm/versions.js +1 -1
  87. package/dist/lang/cs.json +1 -1
  88. package/dist/lang/da.json +1 -1
  89. package/dist/lang/de.json +1 -1
  90. package/dist/lang/el.json +1 -1
  91. package/dist/lang/es.json +1 -1
  92. package/dist/lang/fi.json +1 -1
  93. package/dist/lang/hu.json +1 -1
  94. package/dist/lang/id.json +1 -1
  95. package/dist/lang/it.json +1 -1
  96. package/dist/lang/ja.json +1 -1
  97. package/dist/lang/ko.json +1 -1
  98. package/dist/lang/nl.json +1 -1
  99. package/dist/lang/no.json +1 -1
  100. package/dist/lang/pl.json +1 -1
  101. package/dist/lang/pt-BR.json +1 -1
  102. package/dist/lang/pt.json +1 -1
  103. package/dist/lang/ru.json +1 -1
  104. package/dist/lang/sv.json +1 -1
  105. package/dist/lang/th.json +1 -1
  106. package/dist/lang/tr.json +1 -1
  107. package/dist/lang/zh-CN.json +1 -1
  108. package/dist/lang/zh-TW.json +1 -1
  109. package/dist/lang/zh.json +1 -1
  110. package/dist/types/components/commerce/atomic-commerce-interface/atomic-commerce-interface.d.ts +17 -0
  111. package/dist/types/components/commerce/atomic-commerce-pager/atomic-commerce-pager.d.ts +1 -0
  112. package/dist/types/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.d.ts +13 -0
  113. package/dist/types/components/commerce/atomic-product-template/atomic-product-template.d.ts +12 -0
  114. package/dist/types/components/common/atomic-smart-snippet-source/atomic-smart-snippet-source.d.ts +4 -4
  115. package/dist/types/components/common/facets/facet-search/facet-search-aria-live.d.ts +7 -1
  116. package/dist/types/components/common/interface/i18n.d.ts +9 -5
  117. package/dist/types/components/common/pager/pager-fit-controller.d.ts +21 -0
  118. package/dist/types/components/common/query-error/icon.d.ts +6 -0
  119. package/dist/types/components/common/query-error/icons.d.ts +5 -0
  120. package/dist/types/components/common/suggestions/suggestion-manager.d.ts +1 -1
  121. package/dist/types/components/common/suggestions/suggestions-types.d.ts +1 -1
  122. package/dist/types/components/common/template-controller/template-utils.d.ts +7 -0
  123. package/dist/types/components/insight/atomic-insight-interface/atomic-insight-interface.d.ts +4 -0
  124. package/dist/types/components/insight/atomic-insight-pager/atomic-insight-pager.d.ts +1 -0
  125. package/dist/types/components/insight/atomic-insight-result-children-template/atomic-insight-result-children-template.d.ts +4 -4
  126. package/dist/types/components/insight/atomic-insight-result-template/atomic-insight-result-template.d.ts +12 -0
  127. package/dist/types/components/recommendations/atomic-recs-interface/atomic-recs-interface.d.ts +4 -0
  128. package/dist/types/components/recommendations/atomic-recs-result-template/atomic-recs-result-template.d.ts +12 -0
  129. package/dist/types/components/search/atomic-pager/atomic-pager.d.ts +1 -0
  130. package/dist/types/components/search/atomic-result-children-template/atomic-result-children-template.d.ts +12 -0
  131. package/dist/types/components/search/atomic-result-date/atomic-result-date.d.ts +3 -0
  132. package/dist/types/components/search/atomic-result-template/atomic-result-template.d.ts +12 -0
  133. package/dist/types/components/search/atomic-search-interface/atomic-search-interface.d.ts +4 -0
  134. package/dist/types/utils/dayjs-locales.d.ts +1 -1
  135. package/dist/types/utils/field-utils.d.ts +1 -1
  136. package/dist/types/utils/init-queue.d.ts +3 -2
  137. package/dist/types/utils/locale-utils.d.ts +7 -0
  138. package/docs/adr/0001-group-shared-modules-in-one-cdn-chunk.md +147 -0
  139. package/package.json +6 -6
@@ -52,7 +52,7 @@ function _ts_metadata(metadataKey, metadataValue) {
52
52
  class AtomicInsightResultTemplate extends external_lit_namespaceObject.LitElement {
53
53
  connectedCallback() {
54
54
  super.connectedCallback();
55
- this.resultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeMatchConditions)(this.mustMatch, this.mustNotMatch, insight_namespaceObject.ResultTemplatesHelpers);
55
+ this.resultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeFieldConditions)(this, insight_namespaceObject.ResultTemplatesHelpers);
56
56
  }
57
57
  render() {
58
58
  return external_lit_namespaceObject.nothing;
@@ -83,6 +83,20 @@ _ts_decorate([
83
83
  }),
84
84
  _ts_metadata("design:type", Array)
85
85
  ], AtomicInsightResultTemplate.prototype, "conditions", void 0);
86
+ _ts_decorate([
87
+ (0, decorators_js_namespaceObject.property)({
88
+ type: String,
89
+ attribute: 'if-defined'
90
+ }),
91
+ _ts_metadata("design:type", String)
92
+ ], AtomicInsightResultTemplate.prototype, "ifDefined", void 0);
93
+ _ts_decorate([
94
+ (0, decorators_js_namespaceObject.property)({
95
+ type: String,
96
+ attribute: 'if-not-defined'
97
+ }),
98
+ _ts_metadata("design:type", String)
99
+ ], AtomicInsightResultTemplate.prototype, "ifNotDefined", void 0);
86
100
  _ts_decorate([
87
101
  (0, props_utils_cjs_namespaceObject.mapProperty)({
88
102
  splitValues: true,
@@ -94,10 +94,10 @@ class AtomicInsightSmartSnippet extends external_lit_namespaceObject.LitElement
94
94
  if (!source) return external_lit_namespaceObject.nothing;
95
95
  return (0, external_lit_namespaceObject.html)`<atomic-smart-snippet-source
96
96
  .anchorAttributes=${(0, attributes_slot_cjs_namespaceObject.getAttributesFromLinkSlotContent)(this, 'source-anchor-attributes')}
97
- .onBeginDelayedSelectSource=${this.smartSnippet.beginDelayedSelectSource}
98
- .onCancelPendingSelectSource=${this.smartSnippet.cancelPendingSelectSource}
99
- .onSelectSource=${this.smartSnippet.selectSource}
100
97
  .source=${source}
98
+ @select-source=${()=>this.smartSnippet.selectSource()}
99
+ @begin-delayed-select-source=${()=>this.smartSnippet.beginDelayedSelectSource()}
100
+ @cancel-pending-select-source=${()=>this.smartSnippet.cancelPendingSelectSource()}
101
101
  ></atomic-smart-snippet-source>`;
102
102
  }
103
103
  renderFeedbackBanner() {
@@ -53,7 +53,7 @@ function _ts_metadata(metadataKey, metadataValue) {
53
53
  class AtomicRecsResultTemplate extends external_lit_namespaceObject.LitElement {
54
54
  connectedCallback() {
55
55
  super.connectedCallback();
56
- this.recsResultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeMatchConditions)(this.mustMatch, this.mustNotMatch, recommendation_namespaceObject.ResultTemplatesHelpers);
56
+ this.recsResultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeFieldConditions)(this, recommendation_namespaceObject.ResultTemplatesHelpers);
57
57
  }
58
58
  render() {
59
59
  return external_lit_namespaceObject.nothing;
@@ -83,6 +83,20 @@ _ts_decorate([
83
83
  }),
84
84
  _ts_metadata("design:type", Array)
85
85
  ], AtomicRecsResultTemplate.prototype, "conditions", void 0);
86
+ _ts_decorate([
87
+ (0, decorators_js_namespaceObject.property)({
88
+ type: String,
89
+ attribute: 'if-defined'
90
+ }),
91
+ _ts_metadata("design:type", String)
92
+ ], AtomicRecsResultTemplate.prototype, "ifDefined", void 0);
93
+ _ts_decorate([
94
+ (0, decorators_js_namespaceObject.property)({
95
+ type: String,
96
+ attribute: 'if-not-defined'
97
+ }),
98
+ _ts_metadata("design:type", String)
99
+ ], AtomicRecsResultTemplate.prototype, "ifNotDefined", void 0);
86
100
  _ts_decorate([
87
101
  (0, props_utils_cjs_namespaceObject.mapProperty)({
88
102
  splitValues: true,
@@ -126,7 +126,7 @@ class AtomicCategoryFacet extends external_lit_namespaceObject.LitElement {
126
126
  options
127
127
  });
128
128
  this.facetId = this.facet.state.facetId;
129
- (0, facet_search_aria_live_cjs_namespaceObject.announceFacetSearchResultsWithAriaLive)(this.facet, this.label, (msg)=>{
129
+ (0, facet_search_aria_live_cjs_namespaceObject.announceFacetSearchResultsWithAriaLive)(this, this.facet, this.label, (msg)=>{
130
130
  this.facetSearchAriaMessage.message = msg;
131
131
  }, this.bindings.i18n);
132
132
  this.bindings.store.registerFacet('categoryFacets', this.facetInfo);
@@ -327,7 +327,7 @@ class AtomicColorFacet extends external_lit_namespaceObject.LitElement {
327
327
  }
328
328
  initAriaLive() {
329
329
  this.facetSearchAriaLive = new accessibility_utils_cjs_namespaceObject.AriaLiveRegionController(this, 'facet-search');
330
- (0, facet_search_aria_live_cjs_namespaceObject.announceFacetSearchResultsWithAriaLive)(this.facet, this.label, (msg)=>{
330
+ (0, facet_search_aria_live_cjs_namespaceObject.announceFacetSearchResultsWithAriaLive)(this, this.facet, this.label, (msg)=>{
331
331
  this.facetSearchAriaLive.message = msg;
332
332
  }, this.bindings.i18n);
333
333
  }
@@ -310,7 +310,7 @@ class AtomicFacet extends external_lit_namespaceObject.LitElement {
310
310
  }
311
311
  initAriaLive() {
312
312
  this.facetSearchAriaLive = new accessibility_utils_cjs_namespaceObject.AriaLiveRegionController(this, 'facet-search');
313
- (0, facet_search_aria_live_cjs_namespaceObject.announceFacetSearchResultsWithAriaLive)(this.facet, this.label, (msg)=>{
313
+ (0, facet_search_aria_live_cjs_namespaceObject.announceFacetSearchResultsWithAriaLive)(this, this.facet, this.label, (msg)=>{
314
314
  this.facetSearchAriaLive.message = msg;
315
315
  }, this.bindings.i18n);
316
316
  }
@@ -51,10 +51,7 @@ function _ts_metadata(metadataKey, metadataValue) {
51
51
  class AtomicFieldCondition extends (0, light_dom_cjs_namespaceObject.LightDomMixin)(external_lit_namespaceObject.LitElement) {
52
52
  initialize() {}
53
53
  get conditions() {
54
- return [
55
- ...(0, template_utils_cjs_namespaceObject.makeDefinedConditions)(this.ifDefined, this.ifNotDefined, headless_namespaceObject.ResultTemplatesHelpers),
56
- ...(0, template_utils_cjs_namespaceObject.makeMatchConditions)(this.mustMatch, this.mustNotMatch, headless_namespaceObject.ResultTemplatesHelpers)
57
- ];
54
+ return (0, template_utils_cjs_namespaceObject.makeFieldConditions)(this, headless_namespaceObject.ResultTemplatesHelpers);
58
55
  }
59
56
  getResult() {
60
57
  const item = this.resultController.item;
@@ -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);
@@ -52,7 +52,7 @@ function _ts_metadata(metadataKey, metadataValue) {
52
52
  class AtomicResultChildrenTemplate extends external_lit_namespaceObject.LitElement {
53
53
  connectedCallback() {
54
54
  super.connectedCallback();
55
- this.resultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeMatchConditions)(this.mustMatch, this.mustNotMatch, headless_namespaceObject.ResultTemplatesHelpers);
55
+ this.resultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeFieldConditions)(this, headless_namespaceObject.ResultTemplatesHelpers);
56
56
  }
57
57
  render() {
58
58
  return external_lit_namespaceObject.nothing;
@@ -79,6 +79,20 @@ _ts_decorate([
79
79
  }),
80
80
  _ts_metadata("design:type", Array)
81
81
  ], AtomicResultChildrenTemplate.prototype, "conditions", void 0);
82
+ _ts_decorate([
83
+ (0, decorators_js_namespaceObject.property)({
84
+ type: String,
85
+ attribute: 'if-defined'
86
+ }),
87
+ _ts_metadata("design:type", String)
88
+ ], AtomicResultChildrenTemplate.prototype, "ifDefined", void 0);
89
+ _ts_decorate([
90
+ (0, decorators_js_namespaceObject.property)({
91
+ type: String,
92
+ attribute: 'if-not-defined'
93
+ }),
94
+ _ts_metadata("design:type", String)
95
+ ], AtomicResultChildrenTemplate.prototype, "ifNotDefined", void 0);
82
96
  _ts_decorate([
83
97
  (0, props_utils_cjs_namespaceObject.mapProperty)({
84
98
  splitValues: true,
@@ -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 updateLocale_namespaceObject = require("dayjs/plugin/updateLocale");
49
- var updateLocale_default = /*#__PURE__*/ __webpack_require__.n(updateLocale_namespaceObject);
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(updateLocale_default());
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
- external_dayjs_default().updateLocale(this.bindings.interfaceElement.language, {
100
- calendar: {
101
- sameDay: this.bindings.i18n.t('calendar-same-day'),
102
- nextDay: this.bindings.i18n.t('calendar-next-day'),
103
- nextWeek: this.bindings.i18n.t('calendar-next-week'),
104
- lastDay: this.bindings.i18n.t('calendar-last-day'),
105
- lastWeek: this.bindings.i18n.t('calendar-last-week'),
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(){
@@ -53,7 +53,7 @@ function _ts_metadata(metadataKey, metadataValue) {
53
53
  class AtomicResultTemplate extends external_lit_namespaceObject.LitElement {
54
54
  connectedCallback() {
55
55
  super.connectedCallback();
56
- this.resultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeMatchConditions)(this.mustMatch, this.mustNotMatch, headless_namespaceObject.ResultTemplatesHelpers);
56
+ this.resultTemplateController.matchConditions = (0, template_utils_cjs_namespaceObject.makeFieldConditions)(this, headless_namespaceObject.ResultTemplatesHelpers);
57
57
  }
58
58
  render() {
59
59
  return external_lit_namespaceObject.nothing;
@@ -84,6 +84,20 @@ _ts_decorate([
84
84
  }),
85
85
  _ts_metadata("design:type", Array)
86
86
  ], AtomicResultTemplate.prototype, "conditions", void 0);
87
+ _ts_decorate([
88
+ (0, decorators_js_namespaceObject.property)({
89
+ type: String,
90
+ attribute: 'if-defined'
91
+ }),
92
+ _ts_metadata("design:type", String)
93
+ ], AtomicResultTemplate.prototype, "ifDefined", void 0);
94
+ _ts_decorate([
95
+ (0, decorators_js_namespaceObject.property)({
96
+ type: String,
97
+ attribute: 'if-not-defined'
98
+ }),
99
+ _ts_metadata("design:type", String)
100
+ ], AtomicResultTemplate.prototype, "ifNotDefined", void 0);
87
101
  _ts_decorate([
88
102
  (0, props_utils_cjs_namespaceObject.mapProperty)({
89
103
  splitValues: true,
@@ -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: {
@@ -27,27 +27,57 @@ var __webpack_require__ = {};
27
27
  })();
28
28
  var __webpack_exports__ = {};
29
29
  __webpack_require__.r(__webpack_exports__);
30
+ const subscriptionsByComponent = new WeakMap();
31
+ function getSubscriptions(component) {
32
+ let subscriptions = subscriptionsByComponent.get(component);
33
+ if (!subscriptions) {
34
+ const newSubscriptions = new Set();
35
+ subscriptionsByComponent.set(component, newSubscriptions);
36
+ component.addController({
37
+ hostConnected () {
38
+ newSubscriptions.forEach((subscription)=>{
39
+ subscription.unsubscribe ??= subscription.subscribe();
40
+ });
41
+ },
42
+ hostDisconnected () {
43
+ if (component.isConnected) return;
44
+ newSubscriptions.forEach((subscription)=>{
45
+ subscription.unsubscribe?.();
46
+ subscription.unsubscribe = void 0;
47
+ });
48
+ }
49
+ });
50
+ subscriptions = newSubscriptions;
51
+ }
52
+ return subscriptions;
53
+ }
54
+ function releaseSubscriptions(component) {
55
+ const subscriptions = subscriptionsByComponent.get(component);
56
+ subscriptions?.forEach((subscription)=>subscription.unsubscribe?.());
57
+ subscriptions?.clear();
58
+ }
30
59
  function bindStateToController(controllerProperty, options) {
31
60
  return (proto, stateProperty)=>{
32
61
  const ctor = proto.constructor;
33
62
  ctor.addInitializer((instance)=>{
34
63
  const component = instance;
35
- const { disconnectedCallback, initialize } = component;
64
+ const { initialize } = component;
36
65
  component.initialize = function() {
66
+ releaseSubscriptions(component);
37
67
  initialize?.call(this);
38
68
  if (!initialize) return console.error(`ControllerState: The "initialize" method has to be defined and instantiate a controller for the property ${controllerProperty.toString()}`, component);
39
69
  if (!component[controllerProperty]) return console.error(`${controllerProperty.toString()} property is not defined on component`, component);
40
70
  if (options?.onUpdateCallbackMethod && !component[options.onUpdateCallbackMethod]) return console.error(`ControllerState: The onUpdateCallbackMethod property "${options.onUpdateCallbackMethod}" is not defined`, component);
41
71
  const controller = component[controllerProperty];
42
72
  const updateCallback = options?.onUpdateCallbackMethod ? component[options.onUpdateCallbackMethod] : void 0;
43
- const unsubscribeController = controller.subscribe(()=>{
44
- component[stateProperty] = controller.state;
45
- 'function' == typeof updateCallback && updateCallback();
46
- });
47
- component.disconnectedCallback = ()=>{
48
- component.isConnected || unsubscribeController?.();
49
- disconnectedCallback?.call(component);
73
+ const subscription = {
74
+ subscribe: ()=>controller.subscribe(()=>{
75
+ component[stateProperty] = controller.state;
76
+ 'function' == typeof updateCallback && updateCallback();
77
+ })
50
78
  };
79
+ if (component.isConnected) subscription.unsubscribe = subscription.subscribe();
80
+ getSubscriptions(component).add(subscription);
51
81
  };
52
82
  });
53
83
  };
@@ -42,6 +42,7 @@ __webpack_require__.d(__webpack_exports__, {
42
42
  const external_lit_namespaceObject = require("lit");
43
43
  const tailwind_global_tw_css_namespaceObject = require("../utils/tailwind.global.tw.css");
44
44
  var tailwind_global_tw_css_default = /*#__PURE__*/ __webpack_require__.n(tailwind_global_tw_css_namespaceObject);
45
+ const tailwindStyles = (0, external_lit_namespaceObject.unsafeCSS)(tailwind_global_tw_css_default());
45
46
  const tailwindPropertiesSheet = "u" > typeof window ? (()=>{
46
47
  const propCss = tailwind_global_tw_css_default();
47
48
  const fullCss = Array.isArray(propCss) ? propCss.join('') : propCss;
@@ -68,7 +69,7 @@ const withTailwindStyles = (Base)=>class extends Base {
68
69
  }
69
70
  static get styles() {
70
71
  const baseStyles = [
71
- (0, external_lit_namespaceObject.unsafeCSS)(tailwind_global_tw_css_default())
72
+ tailwindStyles
72
73
  ];
73
74
  const customStyles = Base.styles;
74
75
  if (Array.isArray(customStyles)) return [
@@ -30,20 +30,20 @@ __webpack_require__.r(__webpack_exports__);
30
30
  const locales = {
31
31
  af: ()=>import("dayjs/locale/af"),
32
32
  am: ()=>import("dayjs/locale/am"),
33
- 'ar-IQ': ()=>import("dayjs/locale/ar-iq"),
34
- 'ar-DZ': ()=>import("dayjs/locale/ar-dz"),
35
- 'ar-KW': ()=>import("dayjs/locale/ar-kw"),
36
- 'ar-LY': ()=>import("dayjs/locale/ar-ly"),
37
- 'ar-MA': ()=>import("dayjs/locale/ar-ma"),
38
- 'ar-SA': ()=>import("dayjs/locale/ar-sa"),
39
- 'ar-TN': ()=>import("dayjs/locale/ar-tn"),
33
+ 'ar-iq': ()=>import("dayjs/locale/ar-iq"),
34
+ 'ar-dz': ()=>import("dayjs/locale/ar-dz"),
35
+ 'ar-kw': ()=>import("dayjs/locale/ar-kw"),
36
+ 'ar-ly': ()=>import("dayjs/locale/ar-ly"),
37
+ 'ar-ma': ()=>import("dayjs/locale/ar-ma"),
38
+ 'ar-sa': ()=>import("dayjs/locale/ar-sa"),
39
+ 'ar-tn': ()=>import("dayjs/locale/ar-tn"),
40
40
  ar: ()=>import("dayjs/locale/ar"),
41
41
  az: ()=>import("dayjs/locale/az"),
42
42
  be: ()=>import("dayjs/locale/be"),
43
43
  bg: ()=>import("dayjs/locale/bg"),
44
44
  bi: ()=>import("dayjs/locale/bi"),
45
45
  bm: ()=>import("dayjs/locale/bm"),
46
- 'bn-BD': ()=>import("dayjs/locale/bn-bd"),
46
+ 'bn-bd': ()=>import("dayjs/locale/bn-bd"),
47
47
  bn: ()=>import("dayjs/locale/bn"),
48
48
  bo: ()=>import("dayjs/locale/bo"),
49
49
  br: ()=>import("dayjs/locale/br"),
@@ -53,49 +53,49 @@ const locales = {
53
53
  cv: ()=>import("dayjs/locale/cv"),
54
54
  cy: ()=>import("dayjs/locale/cy"),
55
55
  da: ()=>import("dayjs/locale/da"),
56
- 'de-AT': ()=>import("dayjs/locale/de-at"),
57
- 'de-CH': ()=>import("dayjs/locale/de-ch"),
56
+ 'de-at': ()=>import("dayjs/locale/de-at"),
57
+ 'de-ch': ()=>import("dayjs/locale/de-ch"),
58
58
  de: ()=>import("dayjs/locale/de"),
59
59
  dv: ()=>import("dayjs/locale/dv"),
60
- 'en-AU': ()=>import("dayjs/locale/en-au"),
60
+ 'en-au': ()=>import("dayjs/locale/en-au"),
61
61
  el: ()=>import("dayjs/locale/el"),
62
- 'en-GB': ()=>import("dayjs/locale/en-gb"),
63
- 'en-IE': ()=>import("dayjs/locale/en-ie"),
64
- 'en-IL': ()=>import("dayjs/locale/en-il"),
65
- 'en-IN': ()=>import("dayjs/locale/en-in"),
66
- 'en-NZ': ()=>import("dayjs/locale/en-nz"),
67
- 'en-SG': ()=>import("dayjs/locale/en-sg"),
68
- 'en-TT': ()=>import("dayjs/locale/en-tt"),
69
- 'en-CA': ()=>import("dayjs/locale/en-ca"),
62
+ 'en-gb': ()=>import("dayjs/locale/en-gb"),
63
+ 'en-ie': ()=>import("dayjs/locale/en-ie"),
64
+ 'en-il': ()=>import("dayjs/locale/en-il"),
65
+ 'en-in': ()=>import("dayjs/locale/en-in"),
66
+ 'en-nz': ()=>import("dayjs/locale/en-nz"),
67
+ 'en-sg': ()=>import("dayjs/locale/en-sg"),
68
+ 'en-tt': ()=>import("dayjs/locale/en-tt"),
69
+ 'en-ca': ()=>import("dayjs/locale/en-ca"),
70
70
  en: ()=>import("dayjs/locale/en"),
71
71
  eo: ()=>import("dayjs/locale/eo"),
72
- 'es-MX': ()=>import("dayjs/locale/es-mx"),
73
- 'es-PR': ()=>import("dayjs/locale/es-pr"),
74
- 'es-US': ()=>import("dayjs/locale/es-us"),
75
- 'es-DO': ()=>import("dayjs/locale/es-do"),
72
+ 'es-mx': ()=>import("dayjs/locale/es-mx"),
73
+ 'es-pr': ()=>import("dayjs/locale/es-pr"),
74
+ 'es-us': ()=>import("dayjs/locale/es-us"),
75
+ 'es-do': ()=>import("dayjs/locale/es-do"),
76
76
  et: ()=>import("dayjs/locale/et"),
77
77
  eu: ()=>import("dayjs/locale/eu"),
78
78
  fa: ()=>import("dayjs/locale/fa"),
79
79
  fi: ()=>import("dayjs/locale/fi"),
80
- 'fr-CA': ()=>import("dayjs/locale/fr-ca"),
81
- 'fr-CH': ()=>import("dayjs/locale/fr-ch"),
80
+ 'fr-ca': ()=>import("dayjs/locale/fr-ca"),
81
+ 'fr-ch': ()=>import("dayjs/locale/fr-ch"),
82
82
  fr: ()=>import("dayjs/locale/fr"),
83
83
  fo: ()=>import("dayjs/locale/fo"),
84
84
  fy: ()=>import("dayjs/locale/fy"),
85
85
  ga: ()=>import("dayjs/locale/ga"),
86
86
  gd: ()=>import("dayjs/locale/gd"),
87
87
  gl: ()=>import("dayjs/locale/gl"),
88
- 'gom-LATN': ()=>import("dayjs/locale/gom-latn"),
88
+ 'gom-latn': ()=>import("dayjs/locale/gom-latn"),
89
89
  gu: ()=>import("dayjs/locale/gu"),
90
90
  he: ()=>import("dayjs/locale/he"),
91
91
  hi: ()=>import("dayjs/locale/hi"),
92
92
  hr: ()=>import("dayjs/locale/hr"),
93
93
  ht: ()=>import("dayjs/locale/ht"),
94
94
  hu: ()=>import("dayjs/locale/hu"),
95
- 'hy-AM': ()=>import("dayjs/locale/hy-am"),
95
+ 'hy-am': ()=>import("dayjs/locale/hy-am"),
96
96
  id: ()=>import("dayjs/locale/id"),
97
97
  is: ()=>import("dayjs/locale/is"),
98
- 'it-CH': ()=>import("dayjs/locale/it-ch"),
98
+ 'it-ch': ()=>import("dayjs/locale/it-ch"),
99
99
  it: ()=>import("dayjs/locale/it"),
100
100
  jv: ()=>import("dayjs/locale/jv"),
101
101
  ka: ()=>import("dayjs/locale/ka"),
@@ -115,7 +115,7 @@ const locales = {
115
115
  ml: ()=>import("dayjs/locale/ml"),
116
116
  mn: ()=>import("dayjs/locale/mn"),
117
117
  mr: ()=>import("dayjs/locale/mr"),
118
- 'ms-MY': ()=>import("dayjs/locale/ms-my"),
118
+ 'ms-my': ()=>import("dayjs/locale/ms-my"),
119
119
  ms: ()=>import("dayjs/locale/ms"),
120
120
  mt: ()=>import("dayjs/locale/mt"),
121
121
  lo: ()=>import("dayjs/locale/lo"),
@@ -123,11 +123,11 @@ const locales = {
123
123
  nb: ()=>import("dayjs/locale/nb"),
124
124
  ne: ()=>import("dayjs/locale/ne"),
125
125
  nl: ()=>import("dayjs/locale/nl"),
126
- 'nl-BE': ()=>import("dayjs/locale/nl-be"),
126
+ 'nl-be': ()=>import("dayjs/locale/nl-be"),
127
127
  nn: ()=>import("dayjs/locale/nn"),
128
- 'pa-IN': ()=>import("dayjs/locale/pa-in"),
128
+ 'pa-in': ()=>import("dayjs/locale/pa-in"),
129
129
  pl: ()=>import("dayjs/locale/pl"),
130
- 'pt-BR': ()=>import("dayjs/locale/pt-br"),
130
+ 'pt-br': ()=>import("dayjs/locale/pt-br"),
131
131
  pt: ()=>import("dayjs/locale/pt"),
132
132
  rn: ()=>import("dayjs/locale/rn"),
133
133
  ro: ()=>import("dayjs/locale/ro"),
@@ -139,12 +139,12 @@ const locales = {
139
139
  si: ()=>import("dayjs/locale/si"),
140
140
  sk: ()=>import("dayjs/locale/sk"),
141
141
  sl: ()=>import("dayjs/locale/sl"),
142
- 'oc-LNC': ()=>import("dayjs/locale/oc-lnc"),
142
+ 'oc-lnc': ()=>import("dayjs/locale/oc-lnc"),
143
143
  sq: ()=>import("dayjs/locale/sq"),
144
- 'sr-CYRL': ()=>import("dayjs/locale/sr-cyrl"),
144
+ 'sr-cyrl': ()=>import("dayjs/locale/sr-cyrl"),
145
145
  sr: ()=>import("dayjs/locale/sr"),
146
146
  ss: ()=>import("dayjs/locale/ss"),
147
- 'sv-FI': ()=>import("dayjs/locale/sv-fi"),
147
+ 'sv-fi': ()=>import("dayjs/locale/sv-fi"),
148
148
  sv: ()=>import("dayjs/locale/sv"),
149
149
  sw: ()=>import("dayjs/locale/sw"),
150
150
  ta: ()=>import("dayjs/locale/ta"),
@@ -152,24 +152,24 @@ const locales = {
152
152
  tet: ()=>import("dayjs/locale/tet"),
153
153
  tg: ()=>import("dayjs/locale/tg"),
154
154
  th: ()=>import("dayjs/locale/th"),
155
- 'tl-PH': ()=>import("dayjs/locale/tl-ph"),
155
+ 'tl-ph': ()=>import("dayjs/locale/tl-ph"),
156
156
  tlh: ()=>import("dayjs/locale/tlh"),
157
157
  tr: ()=>import("dayjs/locale/tr"),
158
158
  tzl: ()=>import("dayjs/locale/tzl"),
159
159
  tzm: ()=>import("dayjs/locale/tzm"),
160
- 'ug-CN': ()=>import("dayjs/locale/ug-cn"),
160
+ 'ug-cn': ()=>import("dayjs/locale/ug-cn"),
161
161
  uk: ()=>import("dayjs/locale/uk"),
162
162
  tk: ()=>import("dayjs/locale/tk"),
163
163
  ur: ()=>import("dayjs/locale/ur"),
164
- 'uz-LATN': ()=>import("dayjs/locale/uz-latn"),
164
+ 'uz-latn': ()=>import("dayjs/locale/uz-latn"),
165
165
  uz: ()=>import("dayjs/locale/uz"),
166
166
  vi: ()=>import("dayjs/locale/vi"),
167
- 'x-PSEUDO': ()=>import("dayjs/locale/x-pseudo"),
168
- 'tzm-LATN': ()=>import("dayjs/locale/tzm-latn"),
167
+ 'x-pseudo': ()=>import("dayjs/locale/x-pseudo"),
168
+ 'tzm-latn': ()=>import("dayjs/locale/tzm-latn"),
169
169
  yo: ()=>import("dayjs/locale/yo"),
170
- 'zh-CN': ()=>import("dayjs/locale/zh-cn"),
171
- 'zh-HK': ()=>import("dayjs/locale/zh-hk"),
172
- 'zh-TW': ()=>import("dayjs/locale/zh-tw"),
170
+ 'zh-cn': ()=>import("dayjs/locale/zh-cn"),
171
+ 'zh-hk': ()=>import("dayjs/locale/zh-hk"),
172
+ 'zh-tw': ()=>import("dayjs/locale/zh-tw"),
173
173
  zh: ()=>import("dayjs/locale/zh")
174
174
  };
175
175
  __webpack_require__.d(__webpack_exports__, {}, {
@@ -32,7 +32,7 @@ function getWindow() {
32
32
  }
33
33
  function getAtomicEnvironment(headlessVersion) {
34
34
  return {
35
- version: "3.62.0",
35
+ version: "3.64.0",
36
36
  headlessVersion
37
37
  };
38
38
  }
@@ -43,20 +43,34 @@ const external_dayjs_namespaceObject = require("dayjs");
43
43
  var external_dayjs_default = /*#__PURE__*/ __webpack_require__.n(external_dayjs_namespaceObject);
44
44
  const dayjs_locales_data_cjs_namespaceObject = require("../generated/dayjs-locales-data.cjs");
45
45
  const warn = (language)=>console.warn(`Cannot load dayjs locale file for "${language}"`);
46
- const resolveLanguage = (languageInput)=>{
47
- if (dayjs_locales_data_cjs_namespaceObject.locales[languageInput]) return languageInput;
48
- if (languageInput.includes('-')) {
49
- const regionlessLanguage = languageInput.split('-')[0];
50
- if (dayjs_locales_data_cjs_namespaceObject.locales[regionlessLanguage]) return regionlessLanguage;
46
+ const getCandidateLocales = (languageInput)=>{
47
+ try {
48
+ const { language, script, region } = new Intl.Locale(languageInput);
49
+ return [
50
+ languageInput,
51
+ ...region ? [
52
+ `${language}-${region}`
53
+ ] : [],
54
+ ...script ? [
55
+ `${language}-${script}`
56
+ ] : [],
57
+ language
58
+ ];
59
+ } catch {
60
+ return [
61
+ languageInput,
62
+ languageInput.split('-')[0]
63
+ ];
51
64
  }
52
- return languageInput;
53
65
  };
54
- function loadDayjsLocale(languageInput) {
66
+ const resolveLanguage = (languageInput)=>getCandidateLocales(languageInput).map((locale)=>locale.toLowerCase()).find((locale)=>Object.hasOwn(dayjs_locales_data_cjs_namespaceObject.locales, locale)) ?? languageInput;
67
+ async function loadDayjsLocale(languageInput) {
55
68
  const language = resolveLanguage(languageInput);
56
69
  if (!dayjs_locales_data_cjs_namespaceObject.locales[language]) return void warn(language);
57
70
  try {
58
- dayjs_locales_data_cjs_namespaceObject.locales[language]().then(()=>external_dayjs_default().locale(language));
59
- } catch (_) {
71
+ await dayjs_locales_data_cjs_namespaceObject.locales[language]();
72
+ external_dayjs_default().locale(language);
73
+ } catch {
60
74
  warn(language);
61
75
  }
62
76
  }
@@ -31,7 +31,11 @@ function getFieldCaptionNamespace(field) {
31
31
  return `caption-${field}`;
32
32
  }
33
33
  function getFieldCaptions(field, i18n) {
34
- return i18n.getResourceBundle(i18n.language, getFieldCaptionNamespace(field)) || {};
34
+ const namespace = getFieldCaptionNamespace(field);
35
+ return (i18n.languages ?? []).reduceRight((captions, language)=>({
36
+ ...captions,
37
+ ...i18n.getResourceBundle(language, namespace)
38
+ }), {});
35
39
  }
36
40
  function getFieldValueCaption(field, facetValue, i18n) {
37
41
  return i18n.t(facetValue, {
@@ -31,11 +31,13 @@ function getWindow() {
31
31
  return window;
32
32
  }
33
33
  function getInitQueueNamespace() {
34
- if (!getWindow().initQueueNamespace) getWindow().initQueueNamespace = {
35
- eventQueueMap: new Map(),
36
- parentReadyMap: new Map()
34
+ const namespace = getWindow().initQueueNamespace ??= {
35
+ eventQueueMap: new WeakMap(),
36
+ parentReadyMap: new WeakMap()
37
37
  };
38
- return getWindow().initQueueNamespace;
38
+ if (namespace.eventQueueMap instanceof Map) namespace.eventQueueMap = new WeakMap(namespace.eventQueueMap);
39
+ if (namespace.parentReadyMap instanceof Map) namespace.parentReadyMap = new WeakMap(namespace.parentReadyMap);
40
+ return namespace;
39
41
  }
40
42
  function getEventQueueMap() {
41
43
  return getInitQueueNamespace().eventQueueMap;