@geotab/zenith 3.3.0 → 3.4.0-beta.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 (279) hide show
  1. package/README.md +17 -0
  2. package/dist/advancedGroupsFilter/advancedGroupsFilterFormSection.js +1 -1
  3. package/dist/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +0 -39
  4. package/dist/alertRaw/components/alertAnimation.js +8 -4
  5. package/dist/card/card.d.ts +1 -1
  6. package/dist/card/card.js +1 -3
  7. package/dist/card/components/status.js +2 -2
  8. package/dist/chart/barChart/getBarTooltipItems.js +31 -2
  9. package/dist/chart/barChart.js +2 -1
  10. package/dist/chart/utils/getYAxisMeta.d.ts +1 -1
  11. package/dist/chart/utils/getYAxisMeta.js +44 -1
  12. package/dist/checkbox/checkbox.js +3 -3
  13. package/dist/dataGrid/emptySearchList/emptySearchList.d.ts +6 -7
  14. package/dist/dataGrid/emptySearchList/emptySearchList.js +15 -23
  15. package/dist/dateInputRaw/dateInputRaw.d.ts +1 -1
  16. package/dist/dateRangeRaw/dateRangeRaw.d.ts +1 -1
  17. package/dist/dateRangeRaw/utils/dateRangeUtils.d.ts +1 -0
  18. package/dist/dateRangeRaw/utils/dateRangeUtils.js +39 -1
  19. package/dist/dropdownRaw/dropdownRaw.d.ts +1 -1
  20. package/dist/emptyState/emptyState.d.ts +9 -0
  21. package/dist/emptyState/emptyState.js +14 -0
  22. package/dist/emptyState/hooks/useIcon.d.ts +2 -0
  23. package/dist/emptyState/hooks/useIcon.js +17 -0
  24. package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.d.ts +1 -0
  25. package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +28 -3
  26. package/dist/formField/components/formFieldAdditionalInfo.d.ts +12 -0
  27. package/dist/formField/components/formFieldAdditionalInfo.js +10 -0
  28. package/dist/formField/components/formFieldAssistiveError.d.ts +10 -0
  29. package/dist/formField/components/formFieldAssistiveError.js +12 -0
  30. package/dist/formField/components/formFieldCounter.d.ts +6 -0
  31. package/dist/formField/components/formFieldCounter.js +7 -0
  32. package/dist/formField/components/formFieldLoading.d.ts +12 -0
  33. package/dist/formField/components/formFieldLoading.js +16 -0
  34. package/dist/formField/components/formFieldWithLabel.d.ts +8 -11
  35. package/dist/formField/components/formFieldWithLabel.js +21 -3
  36. package/dist/formField/components/formFieldWithoutLabel.d.ts +8 -9
  37. package/dist/formField/components/formFieldWithoutLabel.js +6 -1
  38. package/dist/formField/components/isOldFormFieldComponent.d.ts +2 -0
  39. package/dist/formField/components/isOldFormFieldComponent.js +12 -0
  40. package/dist/formField/components/trailingComponent.d.ts +2 -1
  41. package/dist/formField/components/trailingComponent.js +7 -1
  42. package/dist/formField/formField.d.ts +17 -35
  43. package/dist/formField/formField.js +4 -71
  44. package/dist/formField/hooks/useContainer.d.ts +2 -0
  45. package/dist/formField/hooks/useContainer.js +47 -0
  46. package/dist/formField/hooks/useError.d.ts +1 -1
  47. package/dist/formField/hooks/useFormFieldClasses.d.ts +2 -0
  48. package/dist/formField/hooks/useFormFieldClasses.js +30 -0
  49. package/dist/formField/hooks/useFormFieldProps.d.ts +17 -0
  50. package/dist/formField/hooks/useFormFieldProps.js +37 -0
  51. package/dist/formField/hooks/useTrailing.d.ts +1 -1
  52. package/dist/formField/hooks/useTrailing.js +1 -1
  53. package/dist/formField/hooks/useWidth.d.ts +1 -1
  54. package/dist/formField/types.d.ts +35 -0
  55. package/dist/formField/types.js +2 -0
  56. package/dist/formGroup/components/formGroupList.d.ts +1 -1
  57. package/dist/formGroup/components/formGroupToggle.d.ts +1 -1
  58. package/dist/formGroup/formGroup.d.ts +1 -1
  59. package/dist/formGroup/hooks/useLabelAlign.d.ts +1 -1
  60. package/dist/formGroup/types.d.ts +1 -1
  61. package/dist/formGroup/utils/applyCustomControlClasses.d.ts +1 -1
  62. package/dist/formGroup/utils/applyCustomLabelClasses.d.ts +1 -1
  63. package/dist/formGroup/utils/getControlClasses/getControlClasses.d.ts +1 -1
  64. package/dist/formGroup/utils/getControlClasses/getOneLabelOneControlClasses.d.ts +1 -1
  65. package/dist/formGroup/utils/getControlClasses/getOneLabelTwoControlsClasses.d.ts +1 -1
  66. package/dist/formGroup/utils/getControlClasses/getTwoLabelsOneControlClasses.d.ts +1 -1
  67. package/dist/formGroup/utils/getControlClasses/getTwoLabelsTwoControlsClasses.d.ts +1 -1
  68. package/dist/formGroup/utils/getLabelClasses/getLabelClasses.d.ts +1 -1
  69. package/dist/formGroup/utils/getLabelClasses/getOneLabelOneControlClasses.d.ts +1 -1
  70. package/dist/formGroup/utils/getLabelClasses/getOneLabelTwoControlsClasses.d.ts +1 -1
  71. package/dist/formGroup/utils/getLabelClasses/getTwoLabelsOneControlClasses.d.ts +1 -1
  72. package/dist/formGroup/utils/getLabelClasses/getTwoLabelsTwoControlsClasses.d.ts +1 -1
  73. package/dist/formGroup/utils/getListClasses.d.ts +1 -1
  74. package/dist/formGroup/utils/getToggleClasses.d.ts +1 -1
  75. package/dist/formGroup/utils/initializeState.d.ts +1 -1
  76. package/dist/formGroup/utils/isTopAlign.d.ts +1 -1
  77. package/dist/formLayout/types.d.ts +1 -1
  78. package/dist/formSection/types.d.ts +1 -1
  79. package/dist/formSection/utils/formSectionProvider.d.ts +1 -1
  80. package/dist/groupButtonRaw/groupButtonRaw.d.ts +1 -1
  81. package/dist/groupsFilterRaw/groupsFilterRaw.d.ts +1 -1
  82. package/dist/groupsFilterRaw/groupsHelper.js +2 -2
  83. package/dist/headerTitle/headerTitle.js +1 -1
  84. package/dist/images/imageAdjustFilter.d.ts +4 -0
  85. package/dist/images/imageAdjustFilter.js +16 -0
  86. package/dist/images/imageNoMatchingAssets.d.ts +4 -0
  87. package/dist/images/imageNoMatchingAssets.js +16 -0
  88. package/dist/index.css +619 -524
  89. package/dist/index.d.ts +6 -2
  90. package/dist/index.js +23 -16
  91. package/dist/inputAdornments/inputAdornments.d.ts +2 -1
  92. package/dist/inputAdornments/inputAdornments.js +2 -2
  93. package/dist/layout/layout.js +11 -7
  94. package/dist/list/itemData/itemData.d.ts +1 -0
  95. package/dist/list/itemData/itemDataInternal.d.ts +2 -1
  96. package/dist/list/itemData/itemDataInternal.js +4 -2
  97. package/dist/list/itemData/itemDataWaiting.d.ts +2 -1
  98. package/dist/list/itemData/itemDataWaiting.js +4 -1
  99. package/dist/list/list.d.ts +13 -4
  100. package/dist/list/list.js +29 -12
  101. package/dist/list/utils/getLoadingItems.d.ts +1 -1
  102. package/dist/list/utils/getLoadingItems.js +4 -4
  103. package/dist/modal/modal.js +7 -0
  104. package/dist/pillExpandable/pillExpandable.d.ts +1 -0
  105. package/dist/pillExpandable/pillExpandable.js +74 -33
  106. package/dist/radioGroupRaw/radioGroupRaw.d.ts +1 -1
  107. package/dist/rangeRaw/rangeRaw.d.ts +1 -1
  108. package/dist/summary/summary.js +0 -1
  109. package/dist/summaryTile/summaryTile.js +2 -2
  110. package/dist/table/children/tableEmpty.d.ts +1 -1
  111. package/dist/table/children/useTableChildren.js +1 -1
  112. package/dist/timePickerRaw/timePickerRaw.d.ts +1 -1
  113. package/dist/tooltip/tooltip.d.ts +15 -4
  114. package/dist/tooltip/tooltip.js +421 -158
  115. package/dist/utils/localization/translations/cs.json +2 -1
  116. package/dist/utils/localization/translations/da-DK.json +2 -1
  117. package/dist/utils/localization/translations/de.json +2 -1
  118. package/dist/utils/localization/translations/en.json +2 -1
  119. package/dist/utils/localization/translations/es.json +3 -2
  120. package/dist/utils/localization/translations/fi-FI.json +2 -1
  121. package/dist/utils/localization/translations/fr-FR.json +2 -1
  122. package/dist/utils/localization/translations/fr.json +3 -2
  123. package/dist/utils/localization/translations/hu-HU.json +2 -1
  124. package/dist/utils/localization/translations/id.json +2 -1
  125. package/dist/utils/localization/translations/it.json +2 -1
  126. package/dist/utils/localization/translations/ja.json +2 -1
  127. package/dist/utils/localization/translations/ko-KR.json +2 -1
  128. package/dist/utils/localization/translations/ms.json +2 -1
  129. package/dist/utils/localization/translations/nb-NO.json +2 -1
  130. package/dist/utils/localization/translations/nl.json +2 -1
  131. package/dist/utils/localization/translations/pl.json +2 -1
  132. package/dist/utils/localization/translations/pt-BR.json +2 -1
  133. package/dist/utils/localization/translations/sk-SK.json +2 -1
  134. package/dist/utils/localization/translations/sv.json +2 -1
  135. package/dist/utils/localization/translations/th.json +2 -1
  136. package/dist/utils/localization/translations/tr.json +2 -1
  137. package/dist/utils/localization/translations/zh-Hans.json +2 -1
  138. package/dist/utils/localization/translations/zh-TW.json +2 -1
  139. package/dist/utils/positioningUtils/calculatePosition.d.ts +1 -1
  140. package/dist/utils/positioningUtils/calculatePosition.js +11 -1
  141. package/esm/advancedGroupsFilter/advancedGroupsFilterFormSection.js +1 -1
  142. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +0 -39
  143. package/esm/alertRaw/components/alertAnimation.js +8 -4
  144. package/esm/card/card.d.ts +1 -1
  145. package/esm/card/card.js +1 -3
  146. package/esm/card/components/status.js +2 -2
  147. package/esm/chart/barChart/getBarTooltipItems.js +31 -2
  148. package/esm/chart/barChart.js +2 -1
  149. package/esm/chart/utils/getYAxisMeta.d.ts +1 -1
  150. package/esm/chart/utils/getYAxisMeta.js +44 -1
  151. package/esm/checkbox/checkbox.js +3 -3
  152. package/esm/dataGrid/emptySearchList/emptySearchList.d.ts +6 -7
  153. package/esm/dataGrid/emptySearchList/emptySearchList.js +16 -24
  154. package/esm/dateInputRaw/dateInputRaw.d.ts +1 -1
  155. package/esm/dateRangeRaw/dateRangeRaw.d.ts +1 -1
  156. package/esm/dateRangeRaw/utils/dateRangeUtils.d.ts +1 -0
  157. package/esm/dateRangeRaw/utils/dateRangeUtils.js +37 -0
  158. package/esm/dropdownRaw/dropdownRaw.d.ts +1 -1
  159. package/esm/emptyState/emptyState.d.ts +9 -0
  160. package/esm/emptyState/emptyState.js +10 -0
  161. package/esm/emptyState/hooks/useIcon.d.ts +2 -0
  162. package/esm/emptyState/hooks/useIcon.js +10 -0
  163. package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.d.ts +1 -0
  164. package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +29 -4
  165. package/esm/formField/components/formFieldAdditionalInfo.d.ts +12 -0
  166. package/esm/formField/components/formFieldAdditionalInfo.js +6 -0
  167. package/esm/formField/components/formFieldAssistiveError.d.ts +10 -0
  168. package/esm/formField/components/formFieldAssistiveError.js +8 -0
  169. package/esm/formField/components/formFieldCounter.d.ts +6 -0
  170. package/esm/formField/components/formFieldCounter.js +3 -0
  171. package/esm/formField/components/formFieldLoading.d.ts +12 -0
  172. package/esm/formField/components/formFieldLoading.js +12 -0
  173. package/esm/formField/components/formFieldWithLabel.d.ts +8 -11
  174. package/esm/formField/components/formFieldWithLabel.js +21 -3
  175. package/esm/formField/components/formFieldWithoutLabel.d.ts +8 -9
  176. package/esm/formField/components/formFieldWithoutLabel.js +6 -1
  177. package/esm/formField/components/isOldFormFieldComponent.d.ts +2 -0
  178. package/esm/formField/components/isOldFormFieldComponent.js +8 -0
  179. package/esm/formField/components/trailingComponent.d.ts +2 -1
  180. package/esm/formField/components/trailingComponent.js +7 -1
  181. package/esm/formField/formField.d.ts +17 -35
  182. package/esm/formField/formField.js +5 -72
  183. package/esm/formField/hooks/useContainer.d.ts +2 -0
  184. package/esm/formField/hooks/useContainer.js +43 -0
  185. package/esm/formField/hooks/useError.d.ts +1 -1
  186. package/esm/formField/hooks/useFormFieldClasses.d.ts +2 -0
  187. package/esm/formField/hooks/useFormFieldClasses.js +26 -0
  188. package/esm/formField/hooks/useFormFieldProps.d.ts +17 -0
  189. package/esm/formField/hooks/useFormFieldProps.js +33 -0
  190. package/esm/formField/hooks/useTrailing.d.ts +1 -1
  191. package/esm/formField/hooks/useTrailing.js +1 -1
  192. package/esm/formField/hooks/useWidth.d.ts +1 -1
  193. package/esm/formField/types.d.ts +35 -0
  194. package/esm/formField/types.js +1 -0
  195. package/esm/formGroup/components/formGroupList.d.ts +1 -1
  196. package/esm/formGroup/components/formGroupToggle.d.ts +1 -1
  197. package/esm/formGroup/formGroup.d.ts +1 -1
  198. package/esm/formGroup/hooks/useLabelAlign.d.ts +1 -1
  199. package/esm/formGroup/types.d.ts +1 -1
  200. package/esm/formGroup/utils/applyCustomControlClasses.d.ts +1 -1
  201. package/esm/formGroup/utils/applyCustomLabelClasses.d.ts +1 -1
  202. package/esm/formGroup/utils/getControlClasses/getControlClasses.d.ts +1 -1
  203. package/esm/formGroup/utils/getControlClasses/getOneLabelOneControlClasses.d.ts +1 -1
  204. package/esm/formGroup/utils/getControlClasses/getOneLabelTwoControlsClasses.d.ts +1 -1
  205. package/esm/formGroup/utils/getControlClasses/getTwoLabelsOneControlClasses.d.ts +1 -1
  206. package/esm/formGroup/utils/getControlClasses/getTwoLabelsTwoControlsClasses.d.ts +1 -1
  207. package/esm/formGroup/utils/getLabelClasses/getLabelClasses.d.ts +1 -1
  208. package/esm/formGroup/utils/getLabelClasses/getOneLabelOneControlClasses.d.ts +1 -1
  209. package/esm/formGroup/utils/getLabelClasses/getOneLabelTwoControlsClasses.d.ts +1 -1
  210. package/esm/formGroup/utils/getLabelClasses/getTwoLabelsOneControlClasses.d.ts +1 -1
  211. package/esm/formGroup/utils/getLabelClasses/getTwoLabelsTwoControlsClasses.d.ts +1 -1
  212. package/esm/formGroup/utils/getListClasses.d.ts +1 -1
  213. package/esm/formGroup/utils/getToggleClasses.d.ts +1 -1
  214. package/esm/formGroup/utils/initializeState.d.ts +1 -1
  215. package/esm/formGroup/utils/isTopAlign.d.ts +1 -1
  216. package/esm/formLayout/types.d.ts +1 -1
  217. package/esm/formSection/types.d.ts +1 -1
  218. package/esm/formSection/utils/formSectionProvider.d.ts +1 -1
  219. package/esm/groupButtonRaw/groupButtonRaw.d.ts +1 -1
  220. package/esm/groupsFilterRaw/groupsFilterRaw.d.ts +1 -1
  221. package/esm/groupsFilterRaw/groupsHelper.js +2 -2
  222. package/esm/headerTitle/headerTitle.js +1 -1
  223. package/esm/images/imageAdjustFilter.d.ts +4 -0
  224. package/esm/images/imageAdjustFilter.js +12 -0
  225. package/esm/images/imageNoMatchingAssets.d.ts +4 -0
  226. package/esm/images/imageNoMatchingAssets.js +12 -0
  227. package/esm/index.d.ts +6 -2
  228. package/esm/index.js +4 -1
  229. package/esm/inputAdornments/inputAdornments.d.ts +2 -1
  230. package/esm/inputAdornments/inputAdornments.js +2 -2
  231. package/esm/layout/layout.js +11 -7
  232. package/esm/list/itemData/itemData.d.ts +1 -0
  233. package/esm/list/itemData/itemDataInternal.d.ts +2 -1
  234. package/esm/list/itemData/itemDataInternal.js +4 -2
  235. package/esm/list/itemData/itemDataWaiting.d.ts +2 -1
  236. package/esm/list/itemData/itemDataWaiting.js +4 -1
  237. package/esm/list/list.d.ts +13 -4
  238. package/esm/list/list.js +29 -12
  239. package/esm/list/utils/getLoadingItems.d.ts +1 -1
  240. package/esm/list/utils/getLoadingItems.js +4 -4
  241. package/esm/modal/modal.js +7 -0
  242. package/esm/pillExpandable/pillExpandable.d.ts +1 -0
  243. package/esm/pillExpandable/pillExpandable.js +74 -33
  244. package/esm/radioGroupRaw/radioGroupRaw.d.ts +1 -1
  245. package/esm/rangeRaw/rangeRaw.d.ts +1 -1
  246. package/esm/summary/summary.js +0 -1
  247. package/esm/summaryTile/summaryTile.js +2 -2
  248. package/esm/table/children/tableEmpty.d.ts +1 -1
  249. package/esm/table/children/useTableChildren.js +1 -1
  250. package/esm/timePickerRaw/timePickerRaw.d.ts +1 -1
  251. package/esm/tooltip/tooltip.d.ts +15 -4
  252. package/esm/tooltip/tooltip.js +388 -138
  253. package/esm/utils/localization/translations/cs.json +2 -1
  254. package/esm/utils/localization/translations/da-DK.json +2 -1
  255. package/esm/utils/localization/translations/de.json +2 -1
  256. package/esm/utils/localization/translations/en.json +2 -1
  257. package/esm/utils/localization/translations/es.json +3 -2
  258. package/esm/utils/localization/translations/fi-FI.json +2 -1
  259. package/esm/utils/localization/translations/fr-FR.json +2 -1
  260. package/esm/utils/localization/translations/fr.json +3 -2
  261. package/esm/utils/localization/translations/hu-HU.json +2 -1
  262. package/esm/utils/localization/translations/id.json +2 -1
  263. package/esm/utils/localization/translations/it.json +2 -1
  264. package/esm/utils/localization/translations/ja.json +2 -1
  265. package/esm/utils/localization/translations/ko-KR.json +2 -1
  266. package/esm/utils/localization/translations/ms.json +2 -1
  267. package/esm/utils/localization/translations/nb-NO.json +2 -1
  268. package/esm/utils/localization/translations/nl.json +2 -1
  269. package/esm/utils/localization/translations/pl.json +2 -1
  270. package/esm/utils/localization/translations/pt-BR.json +2 -1
  271. package/esm/utils/localization/translations/sk-SK.json +2 -1
  272. package/esm/utils/localization/translations/sv.json +2 -1
  273. package/esm/utils/localization/translations/th.json +2 -1
  274. package/esm/utils/localization/translations/tr.json +2 -1
  275. package/esm/utils/localization/translations/zh-Hans.json +2 -1
  276. package/esm/utils/localization/translations/zh-TW.json +2 -1
  277. package/esm/utils/positioningUtils/calculatePosition.d.ts +1 -1
  278. package/esm/utils/positioningUtils/calculatePosition.js +11 -1
  279. package/package.json +1 -1
@@ -93,7 +93,7 @@
93
93
  "Custom": "Personalizado",
94
94
  "GroupTrailerId": "Remolque",
95
95
  "GroupVehicleId": "Vehículo",
96
- "GroupCompanyId": "Grupo Compañía",
96
+ "GroupCompanyId": "Grupo Empresa",
97
97
  "GroupDieselId": "Diésel",
98
98
  "GroupAssetTypeId": "Tipo de activo",
99
99
  "GroupAssetInformationId": "Información del activo",
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Confirmar",
249
249
  "Clear all": "Borrar todo",
250
250
  "Reload": "Volver a cargar",
251
- "View details": "Ver detalles"
251
+ "View details": "Ver detalles",
252
+ "Year to date": "Año a la fecha"
252
253
  }
@@ -258,5 +258,6 @@
258
258
  "On": "Päälle",
259
259
  "Off": "Pois",
260
260
  "Reload": "Ladata uudelleen",
261
- "View details": "Näytä tiedot"
261
+ "View details": "Näytä tiedot",
262
+ "Year to date": "Vuoden alusta"
262
263
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Confirmer",
249
249
  "Clear all": "Tout effacer",
250
250
  "Reload": "Actualiser",
251
- "View details": "Voir les détails"
251
+ "View details": "Voir les détails",
252
+ "Year to date": "L’année passée"
252
253
  }
@@ -100,7 +100,7 @@
100
100
  "GroupBusinessGroupId": "Affaires",
101
101
  "GroupDriverActivityGroupId": "Activité du chauffeur",
102
102
  "GroupPersonalGroupId": "Personnel",
103
- "GroupPowertrainAndFuelTypeId": "Type de motopropulseur et de carburant",
103
+ "GroupPowertrainAndFuelTypeId": "Groupe motopropulseur et type de carburant",
104
104
  "GroupInternalCombustionEngineId": "Moteur à combustion interne",
105
105
  "GroupGasolinePetrolId": "Essence",
106
106
  "GroupEthanolId": "Éthanol",
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Confirmer",
249
249
  "Clear all": "Effacer tout",
250
250
  "Reload": "Recharger",
251
- "View details": "Afficher les détails"
251
+ "View details": "Afficher les détails",
252
+ "Year to date": "Cumul jusqu’à ce jour"
252
253
  }
@@ -258,5 +258,6 @@
258
258
  "On": "Bekapcsolva",
259
259
  "Off": "Kikapcsolva",
260
260
  "Reload": "Újratöltés",
261
- "View details": "Részletek megtekintése"
261
+ "View details": "Részletek megtekintése",
262
+ "Year to date": "Év a mai napig"
262
263
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Konfirmasi",
249
249
  "Clear all": "Hapus semua",
250
250
  "Reload": "Muat ulang",
251
- "View details": "Lihat detail"
251
+ "View details": "Lihat detail",
252
+ "Year to date": "Tahun hingga saat ini"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Confermare",
249
249
  "Clear all": "Cancellare tutto",
250
250
  "Reload": "Ricarica",
251
- "View details": "Visualizzare dettagli"
251
+ "View details": "Visualizzare dettagli",
252
+ "Year to date": "Dall'inizio dell'anno"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "確認",
249
249
  "Clear all": "すべてをクリア",
250
250
  "Reload": "再読込",
251
- "View details": "詳細を表示する"
251
+ "View details": "詳細を表示する",
252
+ "Year to date": "累計"
252
253
  }
@@ -257,5 +257,6 @@
257
257
  "Sat": "앉았다",
258
258
  "Sun": "해",
259
259
  "Reload": "다시 불러오기",
260
- "View details": "세부 정보 보기"
260
+ "View details": "세부 정보 보기",
261
+ "Year to date": "올해 현재까지"
261
262
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Sahkan",
249
249
  "Clear all": "Kosongkan semua",
250
250
  "Reload": "Muatkan semula",
251
- "View details": "Lihat butiran"
251
+ "View details": "Lihat butiran",
252
+ "Year to date": "Tahun ini hingga tarikh ini"
252
253
  }
@@ -258,5 +258,6 @@
258
258
  "On": "På",
259
259
  "Off": "Av",
260
260
  "Reload": "Last inn på nytt",
261
- "View details": "Se detaljer"
261
+ "View details": "Se detaljer",
262
+ "Year to date": "År til dato"
262
263
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Bevestigen",
249
249
  "Clear all": "Alles wissen",
250
250
  "Reload": "Herladen",
251
- "View details": "Details weergeven"
251
+ "View details": "Details weergeven",
252
+ "Year to date": "Jaar tot heden"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Potwierdź",
249
249
  "Clear all": "Wyczyść wszystkie",
250
250
  "Reload": "Odśwież",
251
- "View details": "Wyświetl szczegóły"
251
+ "View details": "Wyświetl szczegóły",
252
+ "Year to date": "Od początku roku"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Confirmar",
249
249
  "Clear all": "Limpar tudo",
250
250
  "Reload": "Recarregar",
251
- "View details": "Exibir detalhes"
251
+ "View details": "Exibir detalhes",
252
+ "Year to date": "Acumulado no ano"
252
253
  }
@@ -257,5 +257,6 @@
257
257
  "On": "Zapnuté",
258
258
  "Off": "Vypnuté",
259
259
  "Reload": "Obnoviť",
260
- "View details": "Zobraziť podrobnosti"
260
+ "View details": "Zobraziť podrobnosti",
261
+ "Year to date": "Rok od začiatku"
261
262
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Bekräfta",
249
249
  "Clear all": "Rensa alla",
250
250
  "Reload": "Ladda igen",
251
- "View details": "Visa detaljer"
251
+ "View details": "Visa detaljer",
252
+ "Year to date": "År till dagens datum"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "ยืนยัน",
249
249
  "Clear all": "ล้างทั้งหมด",
250
250
  "Reload": "โหลดอีกครั้ง",
251
- "View details": "ดูรายละเอียด"
251
+ "View details": "ดูรายละเอียด",
252
+ "Year to date": "ต้นปีถึงปัจจุบัน"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "Onayla",
249
249
  "Clear all": "Tümünü temizle",
250
250
  "Reload": "Yeniden yükle",
251
- "View details": "Ayrıntıları görüntüle"
251
+ "View details": "Ayrıntıları görüntüle",
252
+ "Year to date": "Yılbaşından bugüne kadar"
252
253
  }
@@ -248,5 +248,6 @@
248
248
  "Confirm": "确认",
249
249
  "Clear all": "全部清除",
250
250
  "Reload": "重新加载",
251
- "View details": "查看详细信息"
251
+ "View details": "查看详细信息",
252
+ "Year to date": "年初至今"
252
253
  }
@@ -257,5 +257,6 @@
257
257
  "Confirm": "確認",
258
258
  "Clear all": "清除全部",
259
259
  "Reload": "重新載入",
260
- "View details": "檢視詳細資訊"
260
+ "View details": "檢視詳細資訊",
261
+ "Year to date": "年初至今"
261
262
  }
@@ -2,4 +2,4 @@ import { TAlignment } from "../../absolute/absolute";
2
2
  import { IAlignment } from "./alignments";
3
3
  import "./calculatePosition.less";
4
4
  import { RefObject } from "react";
5
- export declare const calculatePosition: (triggerRef: RefObject<HTMLElement | null>, popupRef: RefObject<HTMLElement | null>, paddingX?: number, paddingY?: number, inline?: boolean, alignment?: TAlignment, alignmentsFn?: IAlignment, scrollParent?: HTMLElement) => void;
5
+ export declare const calculatePosition: (triggerRef: RefObject<HTMLElement | null>, popupRef: RefObject<HTMLElement | null>, paddingX?: number, paddingY?: number, inline?: boolean, alignment?: TAlignment, alignmentsFn?: IAlignment, scrollParent?: HTMLElement, forceHorizontalCenter?: boolean) => void;
@@ -8,7 +8,7 @@ const getBorders_1 = require("./getBorders");
8
8
  const getMargins_1 = require("./getMargins");
9
9
  const normalizePosition_1 = require("./normalizePosition");
10
10
  // eslint-disable-next-line complexity
11
- const calculatePosition = (triggerRef, popupRef, paddingX, paddingY, inline, alignment, alignmentsFn = alignments_1.alignments, scrollParent) => {
11
+ const calculatePosition = (triggerRef, popupRef, paddingX, paddingY, inline, alignment, alignmentsFn = alignments_1.alignments, scrollParent, forceHorizontalCenter) => {
12
12
  if (!triggerRef.current || !popupRef.current) {
13
13
  return;
14
14
  }
@@ -42,6 +42,11 @@ const calculatePosition = (triggerRef, popupRef, paddingX, paddingY, inline, ali
42
42
  const alignmentFn = alignment ? alignmentsFn[alignment] : alignmentsFn["bottom-left"];
43
43
  let position = alignmentFn(triggerRect, popupRect, parentRect, paddingX || 0, paddingY || 0);
44
44
  (0, normalizePosition_1.normalizePosition)(position, popupRect, parentRect);
45
+ if (forceHorizontalCenter) {
46
+ const centeredLeftPosition = (window.innerWidth - popupRect.width) / 2 + window.scrollX;
47
+ position.left = centeredLeftPosition;
48
+ position.right = undefined;
49
+ }
45
50
  if (position.width) {
46
51
  popup.style.width = `${position.width}px`;
47
52
  }
@@ -51,6 +56,11 @@ const calculatePosition = (triggerRef, popupRef, paddingX, paddingY, inline, ali
51
56
  popupRect = popup.getBoundingClientRect();
52
57
  position = alignmentFn(triggerRect, popupRect, parentRect, paddingX || 0, paddingY || 0);
53
58
  (0, normalizePosition_1.normalizePosition)(position, popupRect, parentRect);
59
+ if (forceHorizontalCenter) {
60
+ const centeredLeftPosition = (window.innerWidth - popupRect.width) / 2 + window.scrollX;
61
+ position.left = centeredLeftPosition;
62
+ position.right = undefined;
63
+ }
54
64
  const scrollParentRect = scrollParent === null || scrollParent === void 0 ? void 0 : scrollParent.getBoundingClientRect();
55
65
  const isTopsideAlignment = alignment === null || alignment === void 0 ? void 0 : alignment.startsWith("top");
56
66
  const isRightsideAlignment = alignment === null || alignment === void 0 ? void 0 : alignment.startsWith("right");
@@ -159,7 +159,7 @@ injectString("cs", "GroupCompanyId", "Skupina spole\u010Dnosti");
159
159
  injectString("da-DK", "GroupCompanyId", "Virksomhedsgruppe");
160
160
  injectString("de", "GroupCompanyId", "Unternehmensgruppe");
161
161
  injectString("en", "GroupCompanyId", "Company group");
162
- injectString("es", "GroupCompanyId", "Grupo Compa\xF1\xEDa");
162
+ injectString("es", "GroupCompanyId", "Grupo Empresa");
163
163
  injectString("fi-FI", "GroupCompanyId", "Yritysryhm\xE4");
164
164
  injectString("fr", "GroupCompanyId", "Groupe Entreprise");
165
165
  injectString("fr-FR", "GroupCompanyId", "Groupe Entreprise");
@@ -1,8 +1,6 @@
1
1
  import { injectString } from "../utils/localization/translationsDictionary";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import { useRef } from "react";
4
3
  import { Tooltip } from "../tooltip/tooltip";
5
- import { IconInfoCircle } from "../icons/iconInfoCircle";
6
4
  import { useLanguage } from "../utils/localization/useLanguage";
7
5
  import { classNames } from "../commonHelpers/classNames/classNames";
8
6
  injectString("cs", "Use multiple operators when searching for a specific group. For example, filtering for assets that belong to the Tractor group and the Toronto group displays a list of tractors that belong to the Toronto branch.", "P\u0159i hled\xE1n\xED konkr\xE9tn\xED skupiny pou\u017Eijte v\xEDce oper\xE1tor\u016F. Nap\u0159\xEDklad p\u0159i filtrov\xE1n\xED prost\u0159edk\u016F, kter\xE9 spadaj\xED do skupiny Traktory, skupina Toronto zobraz\xED seznam traktor\u016F, kter\xE9 pat\u0159\xED do pobo\u010Dky v Torontu.");
@@ -29,55 +27,18 @@ injectString("th", "Use multiple operators when searching for a specific group.
29
27
  injectString("tr", "Use multiple operators when searching for a specific group. For example, filtering for assets that belong to the Tractor group and the Toronto group displays a list of tractors that belong to the Toronto branch.", "Belirli bir grubu ararken birden \xE7ok operat\xF6r kullan\u0131n. \xD6rne\u011Fin, Trakt\xF6r grubuna ve Toronto grubuna ait varl\u0131klar i\xE7in filtreleme yap\u0131l\u0131rken Toronto \u015Fubesine ait trakt\xF6rlerin listesi g\xF6r\xFCnt\xFClenir.");
30
28
  injectString("zh-Hans", "Use multiple operators when searching for a specific group. For example, filtering for assets that belong to the Tractor group and the Toronto group displays a list of tractors that belong to the Toronto branch.", "\u641C\u7D22\u7279\u5B9A\u7EC4\u65F6\uFF0C\u53EF\u4EE5\u4F7F\u7528\u591A\u4E2A\u8FD0\u7B97\u7B26\u3002\u4F8B\u5982\uFF0C\u7B5B\u9009\u5C5E\u4E8E\u201C\u7275\u5F15\u8F66\u201D\u7EC4\u548C\u201C\u591A\u4F26\u591A\u201D\u7EC4\u7684\u8D44\u4EA7\uFF0C\u5C31\u4F1A\u663E\u793A\u5C5E\u4E8E\u591A\u4F26\u591A\u5206\u652F\u7684\u7275\u5F15\u8F66\u5217\u8868\u3002");
31
29
  injectString("zh-TW", "Use multiple operators when searching for a specific group. For example, filtering for assets that belong to the Tractor group and the Toronto group displays a list of tractors that belong to the Toronto branch.", "\u641C\u5C0B\u7279\u5B9A\u7FA4\u7D44\u6642\uFF0C\u8ACB\u4F7F\u7528\u591A\u500B\u904B\u7B97\u5B50\u3002\u4F8B\u5982\uFF0C\u82E5\u7BE9\u9078\u5C6C\u65BC\u727D\u5F15\u6A5F\u7FA4\u7D44\u548C\u591A\u502B\u591A\u7FA4\u7D44\u7684\u8CC7\u7522\uFF0C\u5247\u6703\u986F\u793A\u5C6C\u65BC\u591A\u502B\u591A\u5206\u516C\u53F8\u7684\u727D\u5F15\u6A5F\u6E05\u55AE\u3002");
32
- injectString("cs", "Information", "Informace");
33
- injectString("da-DK", "Information", "Information");
34
- injectString("de", "Information", "Information");
35
- injectString("en", "Information", "Information");
36
- injectString("es", "Information", "Informaci\xF3n");
37
- injectString("fi-FI", "Information", "Tiedot");
38
- injectString("fr", "Information", "Renseignements");
39
- injectString("fr-FR", "Information", "Informations");
40
- injectString("hu-HU", "Information", "Inform\xE1ci\xF3");
41
- injectString("id", "Information", "Informasi");
42
- injectString("it", "Information", "Informazioni");
43
- injectString("ja", "Information", "\u60C5\u5831");
44
- injectString("ko-KR", "Information", "\uC815\uBCF4");
45
- injectString("ms", "Information", "Maklumat");
46
- injectString("nb-NO", "Information", "Informasjon");
47
- injectString("nl", "Information", "Informatie");
48
- injectString("pl", "Information", "Informacje");
49
- injectString("pt-BR", "Information", "Informa\xE7\xF5es");
50
- injectString("sk-SK", "Information", "Inform\xE1cie");
51
- injectString("sv", "Information", "Information");
52
- injectString("th", "Information", "\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25");
53
- injectString("tr", "Information", "Bilgi");
54
- injectString("zh-Hans", "Information", "\u4FE1\u606F");
55
- injectString("zh-TW", "Information", "\u8CC7\u8A0A");
56
30
  export const AdvancedGroupsFilterSectionTooltip = ({
57
31
  className = "",
58
- size = "auto",
59
32
  alignment = "top",
60
33
  text
61
34
  }) => {
62
35
  const {
63
36
  translate
64
37
  } = useLanguage();
65
- const triggerRef = useRef(null);
66
38
  const defaultTooltipText = translate("Use multiple operators when searching for a specific group. For example, filtering for assets that belong to the Tractor group and the Toronto group displays a list of tractors that belong to the Toronto branch.");
67
39
  return _jsx(Tooltip, {
68
40
  className: classNames(["zen-advanced-groups-filter-section-tooltip__item", className || ""]),
69
- size: size,
70
41
  alignment: alignment,
71
- trigger: _jsx("button", {
72
- type: "button",
73
- "aria-label": translate("Information"),
74
- className: "zen-advanced-groups-filter-section-tooltip__trigger",
75
- ref: triggerRef,
76
- children: _jsx(IconInfoCircle, {
77
- className: "zen-advanced-groups-filter-section-tooltip__trigger-icon",
78
- size: "large"
79
- })
80
- }),
81
42
  children: text || defaultTooltipText
82
43
  });
83
44
  };
@@ -16,7 +16,8 @@ export const AlertAnimation = ({ id, children, isOpen, animation }) => {
16
16
  ], {
17
17
  duration: 300,
18
18
  iterations: 1,
19
- delay: 0
19
+ delay: 0,
20
+ easing: "ease-in-out"
20
21
  }).onfinish = () => {
21
22
  finishAlertAnimation(id);
22
23
  };
@@ -29,7 +30,8 @@ export const AlertAnimation = ({ id, children, isOpen, animation }) => {
29
30
  ], {
30
31
  duration: 300,
31
32
  iterations: 1,
32
- delay: 0
33
+ delay: 0,
34
+ easing: "ease-in-out"
33
35
  }).onfinish = () => {
34
36
  finishAlertAnimation(id);
35
37
  };
@@ -43,7 +45,8 @@ export const AlertAnimation = ({ id, children, isOpen, animation }) => {
43
45
  duration: 300,
44
46
  iterations: 1,
45
47
  delay: 0,
46
- fill: "forwards"
48
+ fill: "forwards",
49
+ easing: "ease-in-out"
47
50
  }).onfinish = () => {
48
51
  finishAlertAnimation(id);
49
52
  };
@@ -55,7 +58,8 @@ export const AlertAnimation = ({ id, children, isOpen, animation }) => {
55
58
  ], {
56
59
  duration: 300,
57
60
  iterations: 1,
58
- delay: 0
61
+ delay: 0,
62
+ easing: "ease-in-out"
59
63
  }).onfinish = () => {
60
64
  finishAlertAnimation(id);
61
65
  };
@@ -6,10 +6,10 @@ import { IActions } from "./components/actions";
6
6
  import { IContent } from "./components/content";
7
7
  import "./card.less";
8
8
  import { TAlignment } from "../absolute/absolute";
9
- import { TooltipSize } from "../tooltip/tooltip";
10
9
  import { IZenComponentProps, IZenFormLayoutItem, IZenGridItem } from "../commonHelpers/zenComponent";
11
10
  import { ICardButton } from "./components/cardButton/cardButton";
12
11
  import { IIcon } from "../icons/icon";
12
+ import { TooltipSize } from "../tooltip/tooltip";
13
13
  import { IToggleButton } from "../toggleButton/toggleButton";
14
14
  export declare const DEFAULT_CARD_SIZE: TContainerSize;
15
15
  export interface ICard extends IZenComponentProps, IZenGridItem, IZenFormLayoutItem {
package/esm/card/card.js CHANGED
@@ -77,7 +77,6 @@ props => {
77
77
  onClick,
78
78
  cardContentClasses = "",
79
79
  tooltipAlignment,
80
- tooltipSize,
81
80
  fullWidth,
82
81
  scrollableContent = true,
83
82
  autoHeight = false,
@@ -251,8 +250,7 @@ props => {
251
250
  status: status,
252
251
  isMobile: isMobile,
253
252
  tooltip: tooltip,
254
- tooltipAlignment: tooltipAlignment,
255
- tooltipSize: tooltipSize
253
+ tooltipAlignment: tooltipAlignment
256
254
  }), toggle ? _jsx(ToggleButton, Object.assign({}, toggle.props)) : null, !!menuActions.length && _jsx(Menu, {
257
255
  trigger: menuTrigger,
258
256
  title: title || translate("Actions"),
@@ -6,7 +6,7 @@ import { TextIconButton, ButtonIconPosition } from "../../textIconButton/textIco
6
6
  import { Tooltip } from "../../tooltip/tooltip";
7
7
  import { useDrive } from "../../utils/theme/useDrive";
8
8
  import { IconInfoCircle } from "../../icons/iconInfoCircle";
9
- export const Status = ({ status, isMobile, tooltip, className = "", tooltipAlignment, tooltipSize, title }) => {
9
+ export const Status = ({ status, isMobile, tooltip, className = "", tooltipAlignment, title }) => {
10
10
  const ref = useRef(null);
11
11
  const isDrive = useDrive();
12
12
  const renderButton = () => {
@@ -14,7 +14,7 @@ export const Status = ({ status, isMobile, tooltip, className = "", tooltipAlign
14
14
  return "";
15
15
  }
16
16
  const statusButton = _jsx(TextIconButton, { ref: ref, iconPosition: ButtonIconPosition.Start, className: classNames(["zen-card-status", isMobile ? "zen-card-status--mobile" : "", "zen-card-status-button", status ? `zen-card-status--${status}` : "", className]), icon: IconInfoCircle, iconSize: isDrive ? SvgIconSize.Huge : SvgIconSize.Large, "aria-label": tooltip, htmlType: "button" });
17
- return _jsx(Tooltip, { mobileView: "mobileSheet", mobileSheetTitle: title, size: tooltipSize, alignment: tooltipAlignment, trigger: statusButton, children: tooltip });
17
+ return _jsx(Tooltip, { mobileTitle: title, alignment: tooltipAlignment, trigger: statusButton, children: tooltip });
18
18
  };
19
19
  return tooltip ? renderButton() : null;
20
20
  };
@@ -6,6 +6,26 @@ export const getBarTooltipItems = (data, datasetIndex, index, options, isHidden)
6
6
  if (datasetIndex === undefined || index === undefined) {
7
7
  return [];
8
8
  }
9
+ // Get the x-value from the hovered dataset to match against other datasets
10
+ // If the hovered dataset is empty, find the first non-empty dataset to get the x-value
11
+ const hoveredDataset = data.datasets[datasetIndex];
12
+ let hoveredDataItem = index < hoveredDataset.data.length
13
+ ? hoveredDataset.data[index]
14
+ : undefined;
15
+ // If the hovered dataset doesn't have data at this index, find another dataset that does
16
+ if (hoveredDataItem === undefined) {
17
+ for (const dataset of data.datasets) {
18
+ if (dataset.data.length > index) {
19
+ hoveredDataItem = dataset.data[index];
20
+ break;
21
+ }
22
+ }
23
+ // If still no data found, return empty
24
+ if (hoveredDataItem === undefined) {
25
+ return [];
26
+ }
27
+ }
28
+ const hoveredXValue = typeof hoveredDataItem === "number" ? undefined : hoveredDataItem.x;
9
29
  return data.datasets.map((dataset, dsIndex) => {
10
30
  if (dataset.data.length === 0) {
11
31
  return undefined;
@@ -13,12 +33,21 @@ export const getBarTooltipItems = (data, datasetIndex, index, options, isHidden)
13
33
  if (isHidden(dsIndex)) {
14
34
  return undefined;
15
35
  }
16
- const dataItem = dataset.data[index];
36
+ // Find the data item in this dataset that matches the hovered x-value
37
+ const dataItem = hoveredXValue !== undefined
38
+ ? dataset.data.find(item => typeof item !== "number" && item.x === hoveredXValue)
39
+ : dataset.data[index];
40
+ // If no matching data point exists for this dataset, skip it
41
+ if (!dataItem) {
42
+ return undefined;
43
+ }
17
44
  const itemValue = typeof dataItem === "number" ? dataItem : dataItem.y;
18
45
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
19
46
  const value = itemValue !== undefined ? formatValue(itemValue.toFixed(2), dsIndex, options === null || options === void 0 ? void 0 : options.unit) : undefined;
20
47
  const label = dataset.label || "";
21
- const color = Array.isArray(dataset.backgroundColor) && dataset.backgroundColor[index] ? dataset.backgroundColor[index] :
48
+ // For color, find the correct index in the original dataset
49
+ const dataItemIndex = dataset.data.indexOf(dataItem);
50
+ const color = Array.isArray(dataset.backgroundColor) && dataset.backgroundColor[dataItemIndex] ? dataset.backgroundColor[dataItemIndex] :
22
51
  typeof dataset.borderColor === "string" ? dataset.borderColor : "";
23
52
  return { label, value, color };
24
53
  }).filter(item => item !== undefined);
@@ -55,7 +55,8 @@ export const BarChart = (_a) => {
55
55
  const tooltipId = useMemo(() => generateId(), []);
56
56
  const { toLocalDateTime } = useContext(userFormatContext);
57
57
  const isTimedData = useMemo(() => isDateRange(data, false), [data]);
58
- const yAxisMeta = useMemo(() => getYAxisMeta(data), [data]);
58
+ const isStacked = useMemo(() => { var _a, _b; return ((_b = (_a = options.scales) === null || _a === void 0 ? void 0 : _a.y) === null || _b === void 0 ? void 0 : _b.stacked) === true; }, [options]);
59
+ const yAxisMeta = useMemo(() => getYAxisMeta(data, isStacked), [data, isStacked]);
59
60
  const defOptions = useMemo(() => getDefaultOptions(yAxisMeta, isTimedData, dark, translate), [yAxisMeta, isTimedData, dark, translate]);
60
61
  const chartOptions = deepMerge(defOptions, options);
61
62
  const { isHidden, toggleHidden } = useHidden();
@@ -1,6 +1,6 @@
1
1
  import { ILineChartData } from "../lineChart/interfaces";
2
2
  import { IBarChartData } from "../barChart/interfaces";
3
- export declare const getYAxisMeta: (data: ILineChartData | IBarChartData) => {
3
+ export declare const getYAxisMeta: (data: ILineChartData | IBarChartData, stacked?: boolean) => {
4
4
  min: number;
5
5
  max: number;
6
6
  name: string;
@@ -1,10 +1,53 @@
1
1
  import { getRange } from "./getRange";
2
2
  import { mergeRanges } from "./mergeRanges";
3
3
  import { normalizeRange } from "./normalizeRange";
4
- export const getYAxisMeta = (data) => {
4
+ export const getYAxisMeta = (data, stacked = false) => {
5
5
  if (data.datasets.length === 0) {
6
6
  return [Object.assign({ name: "y" }, getRange({ data: [] }))];
7
7
  }
8
+ if (stacked) {
9
+ const axisMap = {};
10
+ data.datasets.forEach((ds) => {
11
+ const name = ds.yAxisID ? ds.yAxisID : "y";
12
+ if (!axisMap.hasOwnProperty(name)) {
13
+ axisMap[name] = {
14
+ name: name,
15
+ valuesByX: new Map()
16
+ };
17
+ }
18
+ const valuesByX = axisMap[name].valuesByX;
19
+ ds.data.forEach((point) => {
20
+ const xKey = typeof point === "object" && "x" in point ? point.x : "";
21
+ const yValue = typeof point === "object" && "y" in point ? point.y : (typeof point === "number" ? point : 0);
22
+ const existing = valuesByX.get(xKey) || { positive: 0, negative: 0 };
23
+ if (yValue !== null && yValue >= 0) {
24
+ existing.positive += yValue;
25
+ }
26
+ else if (yValue !== null && yValue < 0) {
27
+ existing.negative += yValue;
28
+ }
29
+ valuesByX.set(xKey, existing);
30
+ });
31
+ });
32
+ return Object.values(axisMap).map(axis => {
33
+ const stackedValues = [];
34
+ axis.valuesByX.forEach((value) => {
35
+ // Always include 0 as the baseline for stacked charts
36
+ if (value.positive > 0) {
37
+ stackedValues.push(value.positive);
38
+ }
39
+ if (value.negative < 0) {
40
+ stackedValues.push(value.negative);
41
+ }
42
+ });
43
+ // Add 0 to ensure the axis includes the baseline
44
+ stackedValues.push(0);
45
+ const stackedData = stackedValues.map(y => ({ x: 0, y }));
46
+ const range = getRange({ data: stackedData });
47
+ const normalized = normalizeRange(range);
48
+ return Object.assign({ name: axis.name }, normalized);
49
+ });
50
+ }
8
51
  const axisMap = data.datasets.reduce((acc, ds) => {
9
52
  const name = ds.yAxisID ? ds.yAxisID : "y";
10
53
  const range = getRange({ data: ds.data });
@@ -25,13 +25,13 @@ export const Checkbox = (_a) => {
25
25
  const intId = id || generatedId;
26
26
  const driveClasses = useDriveClassName("zen-checkbox");
27
27
  const checkboxIconClasses = useMemo(() => classNames(["zen-checkbox__icon", disabled ? "zen-checkbox__icon--disabled" : ""]), [disabled]);
28
- const checkbox = _jsx(TriStateCheckbox, Object.assign({ className: "zen-checkbox__input", id: intId, checked: checked, indeterminate: indeterminate, disabled: disabled }, rest));
28
+ const checkbox = _jsx(TriStateCheckbox, Object.assign({ className: "zen-checkbox__input", id: intId, checked: checked, indeterminate: indeterminate, disabled: disabled, "aria-label": title }, rest));
29
29
  const iconAndLabel = _jsxs(_Fragment, { children: [_jsx("div", { className: "zen-checkbox__box", children: state === CheckboxState.Indeterminate ? _jsx(CheckboxIconMinus, { className: checkboxIconClasses, size: driveClasses ? "bigger" : "medium" }) :
30
30
  state === CheckboxState.On ? _jsx(CheckboxIconCheckmark, { className: checkboxIconClasses, size: driveClasses ? "bigger" : "medium" }) : null }), children
31
31
  ? _jsx("div", { className: classNames(["zen-checkbox__label-text", fullWidth ? "zen-checkbox__label-text--full-width" : ""]), children: children })
32
32
  : null] });
33
33
  if (wrapped) {
34
- return _jsxs("label", { className: classNames(["zen-checkbox", driveClasses || "", className]), title: title, "aria-label": title, children: [checkbox, _jsx("div", { className: classNames(["zen-checkbox__label", reverse ? "zen-checkbox__label--reverse" : ""]), children: iconAndLabel })] });
34
+ return _jsxs("label", { className: classNames(["zen-checkbox", driveClasses || "", className]), title: title, children: [checkbox, _jsx("div", { className: classNames(["zen-checkbox__label", reverse ? "zen-checkbox__label--reverse" : ""]), children: iconAndLabel })] });
35
35
  }
36
- return _jsxs("div", { className: classNames(["zen-checkbox", driveClasses || "", className]), children: [checkbox, _jsx("label", { className: classNames(["zen-checkbox__label", reverse ? "zen-checkbox__label--reverse" : ""]), htmlFor: intId, title: title, "aria-label": title, children: iconAndLabel })] });
36
+ return _jsxs("div", { className: classNames(["zen-checkbox", driveClasses || "", className]), children: [checkbox, _jsx("label", { className: classNames(["zen-checkbox__label", reverse ? "zen-checkbox__label--reverse" : ""]), htmlFor: intId, title: title, children: iconAndLabel })] });
37
37
  };
@@ -1,11 +1,10 @@
1
- import { ReactNode } from "react";
2
- import { IZenComponentProps } from "../../commonHelpers/zenComponent";
3
- import "./emptySearchList.less";
4
- export interface IEmptySearchList extends IZenComponentProps {
5
- description?: string;
6
- image?: ReactNode;
1
+ /// <reference types="react" />
2
+ import { IEmptyState } from "../../emptyState/emptyState";
3
+ export interface IEmptySearchList extends Omit<IEmptyState, "children"> {
4
+ image?: React.ReactNode;
5
+ children?: React.ReactNode;
7
6
  }
8
7
  export declare const EmptySearchList: {
9
- ({ className, children, description, image }: IEmptySearchList): import("react/jsx-runtime").JSX.Element;
8
+ ({ ...props }: IEmptySearchList): import("react/jsx-runtime").JSX.Element;
10
9
  translations: string[];
11
10
  };