@gooddata/sdk-ui-dashboard 10.14.0-alpha.1 → 10.14.0-alpha.11

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 (231) hide show
  1. package/NOTICE +1919 -3
  2. package/esm/__version.d.ts +1 -1
  3. package/esm/__version.d.ts.map +1 -1
  4. package/esm/__version.js +1 -1
  5. package/esm/__version.js.map +1 -1
  6. package/esm/model/commandHandlers/dashboard/common/stateInitializers.d.ts.map +1 -1
  7. package/esm/model/commandHandlers/dashboard/common/stateInitializers.js +12 -4
  8. package/esm/model/commandHandlers/dashboard/common/stateInitializers.js.map +1 -1
  9. package/esm/model/commandHandlers/dashboard/resetDashboardHandler.d.ts.map +1 -1
  10. package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js +3 -2
  11. package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js.map +1 -1
  12. package/esm/model/store/config/configSelectors.d.ts +5 -1
  13. package/esm/model/store/config/configSelectors.d.ts.map +1 -1
  14. package/esm/model/store/config/configSelectors.js +7 -1
  15. package/esm/model/store/config/configSelectors.js.map +1 -1
  16. package/esm/model/store/executionResults/executionResultsSelectors.d.ts +1 -1
  17. package/esm/model/store/executionResults/executionResultsSelectors.d.ts.map +1 -1
  18. package/esm/model/store/executionResults/executionResultsSelectors.js +4 -1
  19. package/esm/model/store/executionResults/executionResultsSelectors.js.map +1 -1
  20. package/esm/model/store/index.d.ts +1 -1
  21. package/esm/model/store/index.d.ts.map +1 -1
  22. package/esm/model/store/index.js +1 -1
  23. package/esm/model/store/index.js.map +1 -1
  24. package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
  25. package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +5 -5
  26. package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js.map +1 -1
  27. package/esm/presentation/constants/classes.d.ts +2 -0
  28. package/esm/presentation/constants/classes.d.ts.map +1 -0
  29. package/esm/presentation/constants/classes.js +3 -0
  30. package/esm/presentation/constants/classes.js.map +1 -0
  31. package/esm/presentation/constants/index.d.ts +1 -0
  32. package/esm/presentation/constants/index.d.ts.map +1 -1
  33. package/esm/presentation/constants/index.js +1 -0
  34. package/esm/presentation/constants/index.js.map +1 -1
  35. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.d.ts +11 -0
  36. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.d.ts.map +1 -0
  37. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.js +53 -0
  38. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.js.map +1 -0
  39. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.d.ts +8 -0
  40. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.d.ts.map +1 -0
  41. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.js +17 -0
  42. package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.js.map +1 -0
  43. package/esm/presentation/flexibleLayout/DashboardLayoutWidget.d.ts +8 -0
  44. package/esm/presentation/flexibleLayout/DashboardLayoutWidget.d.ts.map +1 -0
  45. package/esm/presentation/flexibleLayout/DashboardLayoutWidget.js +199 -0
  46. package/esm/presentation/flexibleLayout/DashboardLayoutWidget.js.map +1 -0
  47. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.d.ts +9 -0
  48. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.d.ts.map +1 -0
  49. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.js +57 -0
  50. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.js.map +1 -0
  51. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.d.ts +4 -0
  52. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.d.ts.map +1 -0
  53. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.js +20 -0
  54. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.js.map +1 -0
  55. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.d.ts +21 -0
  56. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.d.ts.map +1 -0
  57. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.js +18 -0
  58. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.js.map +1 -0
  59. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.d.ts +7 -0
  60. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.d.ts.map +1 -0
  61. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.js +41 -0
  62. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.js.map +1 -0
  63. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.d.ts +15 -0
  64. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.d.ts.map +1 -0
  65. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.js +19 -0
  66. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.js.map +1 -0
  67. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.d.ts +6 -0
  68. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.d.ts.map +1 -0
  69. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.js +33 -0
  70. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.js.map +1 -0
  71. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.d.ts +3 -0
  72. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.d.ts.map +1 -0
  73. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.js +39 -0
  74. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.js.map +1 -0
  75. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.d.ts +24 -0
  76. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.d.ts.map +1 -0
  77. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.js +50 -0
  78. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.js.map +1 -0
  79. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.d.ts +24 -0
  80. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.d.ts.map +1 -0
  81. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.js +15 -0
  82. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.js.map +1 -0
  83. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.d.ts +9 -0
  84. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.d.ts.map +1 -0
  85. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.js +12 -0
  86. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.js.map +1 -0
  87. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.d.ts +4 -0
  88. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.d.ts.map +1 -0
  89. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.js +12 -0
  90. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.js.map +1 -0
  91. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.d.ts +3 -0
  92. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.d.ts.map +1 -0
  93. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.js +13 -0
  94. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.js.map +1 -0
  95. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.d.ts +4 -0
  96. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.d.ts.map +1 -0
  97. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.js +32 -0
  98. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.js.map +1 -0
  99. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.d.ts +3 -0
  100. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.d.ts.map +1 -0
  101. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.js +26 -0
  102. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.js.map +1 -0
  103. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.d.ts +16 -0
  104. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.d.ts.map +1 -0
  105. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.js +38 -0
  106. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.js.map +1 -0
  107. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.d.ts +8 -0
  108. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.d.ts.map +1 -0
  109. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js +66 -0
  110. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js.map +1 -0
  111. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.d.ts +7 -0
  112. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.d.ts.map +1 -0
  113. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.js +18 -0
  114. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.js.map +1 -0
  115. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.d.ts +8 -0
  116. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.d.ts.map +1 -0
  117. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.js +14 -0
  118. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.js.map +1 -0
  119. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.d.ts +8 -0
  120. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.d.ts.map +1 -0
  121. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.js +14 -0
  122. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.js.map +1 -0
  123. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.d.ts +19 -0
  124. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.d.ts.map +1 -0
  125. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.js +14 -0
  126. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.js.map +1 -0
  127. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.d.ts +337 -0
  128. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.d.ts.map +1 -0
  129. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.js +2 -0
  130. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.js.map +1 -0
  131. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.d.ts +3 -0
  132. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.d.ts.map +1 -0
  133. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.js +31 -0
  134. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.js.map +1 -0
  135. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.d.ts +7 -0
  136. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.d.ts.map +1 -0
  137. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.js +33 -0
  138. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.js.map +1 -0
  139. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.d.ts +43 -0
  140. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.d.ts.map +1 -0
  141. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.js +346 -0
  142. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.js.map +1 -0
  143. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.d.ts +22 -0
  144. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.d.ts.map +1 -0
  145. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.js +96 -0
  146. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.js.map +1 -0
  147. package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.d.ts +7 -0
  148. package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.d.ts.map +1 -0
  149. package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.js +101 -0
  150. package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.js.map +1 -0
  151. package/esm/presentation/flexibleLayout/EmptyDashboardError.d.ts +3 -0
  152. package/esm/presentation/flexibleLayout/EmptyDashboardError.d.ts.map +1 -0
  153. package/esm/presentation/flexibleLayout/EmptyDashboardError.js +10 -0
  154. package/esm/presentation/flexibleLayout/EmptyDashboardError.js.map +1 -0
  155. package/esm/presentation/flexibleLayout/EmptyDashboardLayout.d.ts +3 -0
  156. package/esm/presentation/flexibleLayout/EmptyDashboardLayout.d.ts.map +1 -0
  157. package/esm/presentation/flexibleLayout/EmptyDashboardLayout.js +9 -0
  158. package/esm/presentation/flexibleLayout/EmptyDashboardLayout.js.map +1 -0
  159. package/esm/presentation/flexibleLayout/constants.d.ts +4 -0
  160. package/esm/presentation/flexibleLayout/constants.d.ts.map +1 -0
  161. package/esm/presentation/flexibleLayout/constants.js +14 -0
  162. package/esm/presentation/flexibleLayout/constants.js.map +1 -0
  163. package/esm/presentation/flexibleLayout/index.d.ts +3 -0
  164. package/esm/presentation/flexibleLayout/index.d.ts.map +1 -0
  165. package/esm/presentation/flexibleLayout/index.js +4 -0
  166. package/esm/presentation/flexibleLayout/index.js.map +1 -0
  167. package/esm/presentation/flexibleLayout/refs.d.ts +5 -0
  168. package/esm/presentation/flexibleLayout/refs.d.ts.map +1 -0
  169. package/esm/presentation/flexibleLayout/refs.js +7 -0
  170. package/esm/presentation/flexibleLayout/refs.js.map +1 -0
  171. package/esm/presentation/flexibleLayout/types.d.ts +22 -0
  172. package/esm/presentation/flexibleLayout/types.d.ts.map +1 -0
  173. package/esm/presentation/flexibleLayout/types.js +2 -0
  174. package/esm/presentation/flexibleLayout/types.js.map +1 -0
  175. package/esm/presentation/layout/DefaultDashboardLayout.d.ts.map +1 -1
  176. package/esm/presentation/layout/DefaultDashboardLayout.js +16 -8
  177. package/esm/presentation/layout/DefaultDashboardLayout.js.map +1 -1
  178. package/esm/presentation/localization/bundles/en-US.json +10 -0
  179. package/esm/presentation/widget/common/configuration/ConfigurationBubble.d.ts.map +1 -1
  180. package/esm/presentation/widget/common/configuration/ConfigurationBubble.js +2 -1
  181. package/esm/presentation/widget/common/configuration/ConfigurationBubble.js.map +1 -1
  182. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.d.ts +14 -0
  183. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.d.ts.map +1 -0
  184. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.js +125 -0
  185. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.js.map +1 -0
  186. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts +7 -2
  187. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts.map +1 -1
  188. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js +2 -2
  189. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js.map +1 -1
  190. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts +7 -2
  191. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts.map +1 -1
  192. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js +12 -4
  193. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js.map +1 -1
  194. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.d.ts +12 -0
  195. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.d.ts.map +1 -0
  196. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.js +86 -0
  197. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.js.map +1 -0
  198. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts +6 -3
  199. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map +1 -1
  200. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js +6 -2
  201. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js.map +1 -1
  202. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts +4 -0
  203. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts.map +1 -1
  204. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js +19 -4
  205. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js.map +1 -1
  206. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts +19 -2
  207. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts.map +1 -1
  208. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js +204 -2
  209. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js.map +1 -1
  210. package/esm/presentation/widget/insight/configuration/InsightAlerts.d.ts.map +1 -1
  211. package/esm/presentation/widget/insight/configuration/InsightAlerts.js +3 -3
  212. package/esm/presentation/widget/insight/configuration/InsightAlerts.js.map +1 -1
  213. package/esm/presentation/widget/insight/types.d.ts +7 -1
  214. package/esm/presentation/widget/insight/types.d.ts.map +1 -1
  215. package/esm/presentation/widget/insight/types.js.map +1 -1
  216. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuBubble.d.ts.map +1 -1
  217. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuBubble.js +2 -1
  218. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuBubble.js.map +1 -1
  219. package/esm/sdk-ui-dashboard.d.ts +13 -8
  220. package/package.json +15 -15
  221. package/styles/css/alerting.css +59 -5
  222. package/styles/css/alerting.css.map +1 -1
  223. package/styles/css/dashboard.css +324 -0
  224. package/styles/css/dashboard.css.map +1 -1
  225. package/styles/css/flexibleLayout.css +425 -0
  226. package/styles/css/flexibleLayout.css.map +1 -0
  227. package/styles/css/main.css +383 -5
  228. package/styles/css/main.css.map +1 -1
  229. package/styles/scss/alerting.scss +69 -5
  230. package/styles/scss/dashboard.scss +1 -0
  231. package/styles/scss/flexibleLayout.scss +410 -0
@@ -0,0 +1,3 @@
1
+ import { IDashboardLayoutItemRenderer } from "./interfaces.js";
2
+ export declare const DashboardLayoutItemViewRenderer: IDashboardLayoutItemRenderer<unknown>;
3
+ //# sourceMappingURL=DashboardLayoutItemViewRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutItemViewRenderer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAK/D,eAAO,MAAM,+BAA+B,EAAE,4BAA4B,CAAC,OAAO,CAyCjF,CAAC"}
@@ -0,0 +1,39 @@
1
+ import cx from "classnames";
2
+ import isNil from "lodash/isNil.js";
3
+ import React, { useMemo } from "react";
4
+ import { Col } from "react-grid-system";
5
+ const isHiddenStyle = { height: 0, width: 0, overflow: "hidden", flex: 0 };
6
+ export const DashboardLayoutItemViewRenderer = (props) => {
7
+ const { item, screen, children, className, minHeight = 0, isHidden } = props;
8
+ const { size, ratio, width, height } = getSizeForItem(item, screen);
9
+ const style = useMemo(() => {
10
+ let computedStyle = {
11
+ minHeight,
12
+ };
13
+ if (isHidden) {
14
+ computedStyle = {
15
+ ...computedStyle,
16
+ ...isHiddenStyle,
17
+ };
18
+ }
19
+ return computedStyle;
20
+ }, [minHeight, isHidden]);
21
+ return (React.createElement(Col, { xl: size?.xl?.gridWidth, lg: size?.lg?.gridWidth, md: size?.md?.gridWidth, sm: size?.sm?.gridWidth, xs: size?.xs?.gridWidth, className: cx("gd-fluidlayout-column", "s-fluid-layout-column", `s-fluid-layout-screen-${screen}`, `s-fluid-layout-column-width-${width}`, {
22
+ [`s-fluid-layout-column-ratio-${ratio}`]: !isNil(ratio),
23
+ [`s-fluid-layout-column-height-${height}`]: !isNil(height),
24
+ }, className), style: style }, children));
25
+ };
26
+ function getSizeForItem(item, screen) {
27
+ const size = item.size();
28
+ const currentScreenSizeConfiguration = item.sizeForScreen(screen);
29
+ const ratio = currentScreenSizeConfiguration?.heightAsRatio;
30
+ const height = currentScreenSizeConfiguration?.gridHeight;
31
+ const width = currentScreenSizeConfiguration?.gridWidth;
32
+ return {
33
+ height,
34
+ width,
35
+ ratio,
36
+ size,
37
+ };
38
+ }
39
+ //# sourceMappingURL=DashboardLayoutItemViewRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutItemViewRenderer.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,MAAM,iBAAiB,CAAC;AACpC,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAIxC,MAAM,aAAa,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAE3E,MAAM,CAAC,MAAM,+BAA+B,GAA0C,CAAC,KAAK,EAAE,EAAE;IAC5F,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC7E,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEpE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACvB,IAAI,aAAa,GAAG;YAChB,SAAS;SACZ,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACX,aAAa,GAAG;gBACZ,GAAG,aAAa;gBAChB,GAAG,aAAa;aACnB,CAAC;QACN,CAAC;QACD,OAAO,aAAa,CAAC;IACzB,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE1B,OAAO,CACH,oBAAC,GAAG,IACA,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EACvB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EACvB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EACvB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EACvB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EACvB,SAAS,EAAE,EAAE,CACT,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,MAAM,EAAE,EACjC,+BAA+B,KAAK,EAAE,EACtC;YACI,CAAC,+BAA+B,KAAK,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YACvD,CAAC,gCAAgC,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;SAC7D,EACD,SAAS,CACZ,EACD,KAAK,EAAE,KAAK,IAEX,QAAQ,CACP,CACT,CAAC;AACN,CAAC,CAAC;AAEF,SAAS,cAAc,CAAC,IAAyC,EAAE,MAAkB;IACjF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACzB,MAAM,8BAA8B,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,8BAA8B,EAAE,aAAa,CAAC;IAC5D,MAAM,MAAM,GAAG,8BAA8B,EAAE,UAAU,CAAC;IAC1D,MAAM,KAAK,GAAG,8BAA8B,EAAE,SAAS,CAAC;IAExD,OAAO;QACH,MAAM;QACN,KAAK;QACL,KAAK;QACL,IAAI;KACP,CAAC;AACN,CAAC"}
@@ -0,0 +1,24 @@
1
+ /// <reference types="react" />
2
+ import { ScreenSize } from "@gooddata/sdk-model";
3
+ import { RenderMode } from "../../../types.js";
4
+ import { IDashboardLayoutSectionFacade } from "../../../_staging/dashboard/fluidLayout/facade/interfaces.js";
5
+ import { IDashboardLayoutGridRowRenderer, IDashboardLayoutItemKeyGetter, IDashboardLayoutItemRenderer, IDashboardLayoutSectionHeaderRenderer, IDashboardLayoutSectionKeyGetter, IDashboardLayoutSectionRenderer, IDashboardLayoutWidgetRenderer } from "./interfaces.js";
6
+ /**
7
+ * @alpha
8
+ */
9
+ export interface IDashboardLayoutSectionProps<TWidget> {
10
+ section: IDashboardLayoutSectionFacade<TWidget>;
11
+ sectionKeyGetter?: IDashboardLayoutSectionKeyGetter<TWidget>;
12
+ sectionRenderer?: IDashboardLayoutSectionRenderer<TWidget>;
13
+ sectionHeaderRenderer?: IDashboardLayoutSectionHeaderRenderer<TWidget>;
14
+ itemKeyGetter?: IDashboardLayoutItemKeyGetter<TWidget>;
15
+ itemRenderer?: IDashboardLayoutItemRenderer<TWidget>;
16
+ widgetRenderer: IDashboardLayoutWidgetRenderer<TWidget>;
17
+ gridRowRenderer?: IDashboardLayoutGridRowRenderer<TWidget>;
18
+ getLayoutDimensions: () => DOMRect;
19
+ screen: ScreenSize;
20
+ renderMode: RenderMode;
21
+ isDraggingWidget?: boolean;
22
+ }
23
+ export declare function DashboardLayoutSection<TWidget>(props: IDashboardLayoutSectionProps<TWidget>): JSX.Element;
24
+ //# sourceMappingURL=DashboardLayoutSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSection.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAEH,6BAA6B,EAChC,MAAM,8DAA8D,CAAC;AAItE,OAAO,EACH,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,qCAAqC,EACrC,gCAAgC,EAChC,+BAA+B,EAC/B,8BAA8B,EACjC,MAAM,iBAAiB,CAAC;AAKzB;;GAEG;AACH,MAAM,WAAW,4BAA4B,CAAC,OAAO;IACjD,OAAO,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC;IAChD,gBAAgB,CAAC,EAAE,gCAAgC,CAAC,OAAO,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,+BAA+B,CAAC,OAAO,CAAC,CAAC;IAC3D,qBAAqB,CAAC,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;IACvE,aAAa,CAAC,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC;IACvD,YAAY,CAAC,EAAE,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACrD,cAAc,EAAE,8BAA8B,CAAC,OAAO,CAAC,CAAC;IACxD,eAAe,CAAC,EAAE,+BAA+B,CAAC,OAAO,CAAC,CAAC;IAC3D,mBAAmB,EAAE,MAAM,OAAO,CAAC;IACnC,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAYD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,4BAA4B,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAwFzG"}
@@ -0,0 +1,50 @@
1
+ import flatMap from "lodash/flatMap.js";
2
+ import React, { useMemo } from "react";
3
+ import { DashboardLayoutGridRow } from "./DashboardLayoutGridRow.js";
4
+ import { DashboardLayoutSectionHeaderRenderer } from "./DashboardLayoutSectionHeaderRenderer.js";
5
+ import { DashboardLayoutSectionRenderer } from "./DashboardLayoutSectionRenderer.js";
6
+ import { DashboardLayoutSectionOverlayController } from "../DashboardItemOverlay/DashboardItemOverlayController.js";
7
+ import last from "lodash/last.js";
8
+ import { DashboardLayoutGridRowEdit } from "./DashboardLayoutGridRowEdit.js";
9
+ const defaultSectionRenderer = (props) => (React.createElement(DashboardLayoutSectionRenderer, { ...props }));
10
+ const defaultHeaderRenderer = (props) => (React.createElement(DashboardLayoutSectionHeaderRenderer, { ...props }));
11
+ const defaultItemKeyGetter = ({ item }) => item.index().toString();
12
+ export function DashboardLayoutSection(props) {
13
+ const { section, sectionRenderer = defaultSectionRenderer, sectionHeaderRenderer = defaultHeaderRenderer, itemKeyGetter = defaultItemKeyGetter, gridRowRenderer, itemRenderer, widgetRenderer, getLayoutDimensions, screen, renderMode, } = props;
14
+ const renderProps = { section, screen, renderMode };
15
+ const items = useMemo(() => {
16
+ if (renderMode === "edit") {
17
+ const itemsInRowsByIndex = section
18
+ .items()
19
+ .asGridRows(screen)
20
+ .map((itemsInRow) => [last(itemsInRow).index(), itemsInRow]);
21
+ const itemsInRow = section.items().all();
22
+ return (React.createElement(DashboardLayoutGridRowEdit, { screen: screen, itemsInRowsByIndex: itemsInRowsByIndex, section: section, items: itemsInRow, gridRowRenderer: gridRowRenderer, itemKeyGetter: itemKeyGetter, itemRenderer: itemRenderer, widgetRenderer: widgetRenderer, renderMode: renderMode, getLayoutDimensions: getLayoutDimensions }));
23
+ }
24
+ return flatMap(section.items().asGridRows(screen), (itemsInRow, index) => {
25
+ return (React.createElement(DashboardLayoutGridRow, { key: index.toString(), screen: screen, section: section, items: itemsInRow, gridRowRenderer: gridRowRenderer, itemKeyGetter: itemKeyGetter, itemRenderer: itemRenderer, widgetRenderer: widgetRenderer, renderMode: renderMode, getLayoutDimensions: getLayoutDimensions }));
26
+ });
27
+ }, [
28
+ getLayoutDimensions,
29
+ gridRowRenderer,
30
+ itemKeyGetter,
31
+ itemRenderer,
32
+ renderMode,
33
+ screen,
34
+ section,
35
+ widgetRenderer,
36
+ ]);
37
+ return sectionRenderer({
38
+ ...renderProps,
39
+ DefaultSectionRenderer: DashboardLayoutSectionRenderer,
40
+ children: (React.createElement(React.Fragment, null,
41
+ sectionHeaderRenderer({
42
+ section,
43
+ screen,
44
+ DefaultSectionHeaderRenderer: DashboardLayoutSectionHeaderRenderer,
45
+ }),
46
+ items,
47
+ renderMode === "edit" ? React.createElement(DashboardLayoutSectionOverlayController, { section: section }) : null)),
48
+ });
49
+ }
50
+ //# sourceMappingURL=DashboardLayoutSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSection.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import React from "react";
2
+ /**
3
+ * @alpha
4
+ */
5
+ export interface IDashboardLayoutSectionHeaderProps {
6
+ title?: string;
7
+ description?: string;
8
+ /**
9
+ * This prop is here to allow rendering row hotspots in gdc-dashboards edit mode
10
+ * in the same DOM location as before without duplicating css classes / DOM structure,
11
+ * because we want to have all the logic and styling of the dashboard layout in one place,
12
+ * to keep the look of Dashboard component in sync with gdc-dashboards.
13
+ */
14
+ renderBeforeHeader?: React.ReactNode;
15
+ /**
16
+ * This prop is here to allow rendering editable row header in gdc-dashboards edit mode
17
+ * in the same DOM location as before without duplicating css classes / DOM structure,
18
+ * because we want to have all the logic and styling of the dashboard layout in one place,
19
+ * to keep the look of Dashboard component in sync with gdc-dashboards.
20
+ */
21
+ renderHeader?: React.ReactNode;
22
+ }
23
+ export declare const DashboardLayoutSectionHeader: React.FC<IDashboardLayoutSectionHeaderProps>;
24
+ //# sourceMappingURL=DashboardLayoutSectionHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionHeader.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;GAEG;AACH,MAAM,WAAW,kCAAkC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAErC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAClC;AAED,eAAO,MAAM,4BAA4B,EAAE,KAAK,CAAC,EAAE,CAAC,kCAAkC,CA0BrF,CAAC"}
@@ -0,0 +1,15 @@
1
+ // (C) 2019-2024 GoodData Corporation
2
+ import React from "react";
3
+ import { Typography } from "@gooddata/sdk-ui-kit";
4
+ import { DashboardLayoutSectionHeaderDescription } from "./DashboardLayoutSectionHeaderDescription.js";
5
+ export const DashboardLayoutSectionHeader = (props) => {
6
+ const { title, description, renderBeforeHeader, renderHeader } = props;
7
+ return (React.createElement("div", { className: "gd-fluid-layout-row-header s-fluid-layout-row-header" },
8
+ renderBeforeHeader,
9
+ React.createElement("div", { className: "gd-fluid-layout-row-header-container" }, renderHeader ?? (React.createElement("div", { className: "gd-row-header-view" },
10
+ title ? (React.createElement("div", { className: "gd-row-header-title-wrapper" },
11
+ React.createElement("span", { className: "title" },
12
+ React.createElement(Typography, { tagName: "h2", className: "s-fluid-layout-row-title" }, title)))) : null,
13
+ description ? (React.createElement(DashboardLayoutSectionHeaderDescription, { description: description })) : null)))));
14
+ };
15
+ //# sourceMappingURL=DashboardLayoutSectionHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionHeader.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,uCAAuC,EAAE,MAAM,8CAA8C,CAAC;AA0BvG,MAAM,CAAC,MAAM,4BAA4B,GAAiD,CAAC,KAAK,EAAE,EAAE;IAChG,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAEvE,OAAO,CACH,6BAAK,SAAS,EAAC,sDAAsD;QAChE,kBAAkB;QACnB,6BAAK,SAAS,EAAC,sCAAsC,IAChD,YAAY,IAAI,CACb,6BAAK,SAAS,EAAC,oBAAoB;YAC9B,KAAK,CAAC,CAAC,CAAC,CACL,6BAAK,SAAS,EAAC,6BAA6B;gBACxC,8BAAM,SAAS,EAAC,OAAO;oBACnB,oBAAC,UAAU,IAAC,OAAO,EAAC,IAAI,EAAC,SAAS,EAAC,0BAA0B,IACxD,KAAK,CACG,CACV,CACL,CACT,CAAC,CAAC,CAAC,IAAI;YACP,WAAW,CAAC,CAAC,CAAC,CACX,oBAAC,uCAAuC,IAAC,WAAW,EAAE,WAAW,GAAI,CACxE,CAAC,CAAC,CAAC,IAAI,CACN,CACT,CACC,CACJ,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import * as React from "react";
2
+ /**
3
+ * @alpha
4
+ */
5
+ export interface IDashboardLayoutSectionHeaderDescriptionProps {
6
+ description: string;
7
+ }
8
+ export declare const DashboardLayoutSectionHeaderDescription: React.FC<IDashboardLayoutSectionHeaderDescriptionProps>;
9
+ //# sourceMappingURL=DashboardLayoutSectionHeaderDescription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionHeaderDescription.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B;;GAEG;AACH,MAAM,WAAW,6CAA6C;IAC1D,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,uCAAuC,EAAE,KAAK,CAAC,EAAE,CAC1D,6CAA6C,CAmBhD,CAAC"}
@@ -0,0 +1,12 @@
1
+ // (C) 2019-2024 GoodData Corporation
2
+ import * as React from "react";
3
+ import cx from "classnames";
4
+ import { RichText } from "@gooddata/sdk-ui-kit";
5
+ import { selectEnableRichTextDescriptions, useDashboardSelector } from "../../../model/index.js";
6
+ export const DashboardLayoutSectionHeaderDescription = (props) => {
7
+ const { description } = props;
8
+ const useRichText = useDashboardSelector(selectEnableRichTextDescriptions);
9
+ const className = cx("gd-paragraph", "description", "s-fluid-layout-row-description");
10
+ return (React.createElement("div", { className: className }, useRichText ? (React.createElement(RichText, { className: "gd-layout-row-description-richtext", value: description, renderMode: "view" })) : (description)));
11
+ };
12
+ //# sourceMappingURL=DashboardLayoutSectionHeaderDescription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionHeaderDescription.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gCAAgC,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AASjG,MAAM,CAAC,MAAM,uCAAuC,GAEhD,CAAC,KAAK,EAAE,EAAE;IACV,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,WAAW,GAAG,oBAAoB,CAAC,gCAAgC,CAAC,CAAC;IAE3E,MAAM,SAAS,GAAG,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,gCAAgC,CAAC,CAAC;IACtF,OAAO,CACH,6BAAK,SAAS,EAAE,SAAS,IACpB,WAAW,CAAC,CAAC,CAAC,CACX,oBAAC,QAAQ,IACL,SAAS,EAAC,oCAAoC,EAC9C,KAAK,EAAE,WAAW,EAClB,UAAU,EAAC,MAAM,GACnB,CACL,CAAC,CAAC,CAAC,CACA,WAAW,CACd,CACC,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { IDashboardLayoutSectionHeaderRenderProps } from "./interfaces.js";
3
+ export declare function DashboardLayoutSectionHeaderRenderer(props: IDashboardLayoutSectionHeaderRenderProps<any>): JSX.Element | null;
4
+ //# sourceMappingURL=DashboardLayoutSectionHeaderRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionHeaderRenderer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,wCAAwC,EAAE,MAAM,iBAAiB,CAAC;AAG3E,wBAAgB,oCAAoC,CAChD,KAAK,EAAE,wCAAwC,CAAC,GAAG,CAAC,GACrD,GAAG,CAAC,OAAO,GAAG,IAAI,CAgBpB"}
@@ -0,0 +1,12 @@
1
+ // (C) 2019-2024 GoodData Corporation
2
+ import * as React from "react";
3
+ import { DashboardLayoutItemViewRenderer } from "./DashboardLayoutItemViewRenderer.js";
4
+ import { DashboardLayoutSectionHeader } from "./DashboardLayoutSectionHeader.js";
5
+ import { emptyItemFacadeWithFullSize } from "./utils/emptyFacade.js";
6
+ export function DashboardLayoutSectionHeaderRenderer(props) {
7
+ const { section, screen } = props;
8
+ const sectionHeader = section.header();
9
+ return sectionHeader ? (React.createElement(DashboardLayoutItemViewRenderer, { DefaultItemRenderer: DashboardLayoutItemViewRenderer, item: emptyItemFacadeWithFullSize, screen: screen },
10
+ React.createElement(DashboardLayoutSectionHeader, { title: sectionHeader.title, description: sectionHeader.description }))) : null;
11
+ }
12
+ //# sourceMappingURL=DashboardLayoutSectionHeaderRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionHeaderRenderer.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAErE,MAAM,UAAU,oCAAoC,CAChD,KAAoD;IAEpD,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAEvC,OAAO,aAAa,CAAC,CAAC,CAAC,CACnB,oBAAC,+BAA+B,IAC5B,mBAAmB,EAAE,+BAA+B,EACpD,IAAI,EAAE,2BAA2B,EACjC,MAAM,EAAE,MAAM;QAEd,oBAAC,4BAA4B,IACzB,KAAK,EAAE,aAAa,CAAC,KAAK,EAC1B,WAAW,EAAE,aAAa,CAAC,WAAW,GACxC,CAC4B,CACrC,CAAC,CAAC,CAAC,IAAI,CAAC;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IDashboardLayoutSectionRenderer } from "./interfaces.js";
2
+ export declare const DashboardLayoutSectionRenderer: IDashboardLayoutSectionRenderer<unknown>;
3
+ //# sourceMappingURL=DashboardLayoutSectionRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionRenderer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAC;AAMlE,eAAO,MAAM,8BAA8B,EAAE,+BAA+B,CAAC,OAAO,CAenF,CAAC"}
@@ -0,0 +1,13 @@
1
+ // (C) 2007-2024 GoodData Corporation
2
+ import React from "react";
3
+ import cx from "classnames";
4
+ const isHiddenStyle = { height: 0, width: 0, overflow: "hidden", flex: 0 };
5
+ const defaultStyle = {};
6
+ export const DashboardLayoutSectionRenderer = (props) => {
7
+ const { children, className, debug, isHidden } = props;
8
+ const style = isHidden ? isHiddenStyle : defaultStyle;
9
+ return (React.createElement("div", { className: cx(["gd-fluidlayout-row", "s-fluid-layout-row", className], {
10
+ "gd-fluidlayout-row-debug": debug,
11
+ }), style: style }, children));
12
+ };
13
+ //# sourceMappingURL=DashboardLayoutSectionRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutSectionRenderer.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,MAAM,aAAa,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC3E,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,CAAC,MAAM,8BAA8B,GAA6C,CAAC,KAAK,EAAE,EAAE;IAC9F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEvD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC;IAEtD,OAAO,CACH,6BACI,SAAS,EAAE,EAAE,CAAC,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,SAAS,CAAC,EAAE;YACnE,0BAA0B,EAAE,KAAK;SACpC,CAAC,EACF,KAAK,EAAE,KAAK,IAEX,QAAQ,CACP,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { IDashboardLayoutWidgetRenderProps } from "./interfaces.js";
3
+ export declare function DashboardLayoutWidgetRenderer(props: IDashboardLayoutWidgetRenderProps<any>): JSX.Element;
4
+ //# sourceMappingURL=DashboardLayoutWidgetRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutWidgetRenderer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,iCAAiC,EAAE,MAAM,iBAAiB,CAAC;AAEpE,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iCAAiC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,CAmDxG"}
@@ -0,0 +1,32 @@
1
+ // (C) 2007-2024 GoodData Corporation
2
+ import React, { useMemo } from "react";
3
+ import cx from "classnames";
4
+ export function DashboardLayoutWidgetRenderer(props) {
5
+ const { item, screen, debug, className, contentRef, isResizedByLayoutSizingStrategy, minHeight, height, allowOverflow, children, } = props;
6
+ const { heightAsRatio, gridHeight } = item.size()[screen];
7
+ const style = useMemo(() => {
8
+ const computedStyle = {
9
+ minHeight,
10
+ height,
11
+ };
12
+ if (allowOverflow) {
13
+ computedStyle.overflowX = "hidden";
14
+ computedStyle.overflowY = "auto";
15
+ }
16
+ if (debug) {
17
+ if (!heightAsRatio) {
18
+ computedStyle.outline = "solid 1px yellow";
19
+ }
20
+ else {
21
+ computedStyle.border = isResizedByLayoutSizingStrategy
22
+ ? "dashed 1px #d6d6d6"
23
+ : "solid 1px green";
24
+ }
25
+ }
26
+ return computedStyle;
27
+ }, [minHeight, height, allowOverflow, debug, heightAsRatio, isResizedByLayoutSizingStrategy]);
28
+ return (React.createElement("div", { ref: contentRef, className: cx("gd-fluidlayout-column-container", className, {
29
+ "custom-height": !!gridHeight,
30
+ }), style: style }, children));
31
+ }
32
+ //# sourceMappingURL=DashboardLayoutWidgetRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardLayoutWidgetRenderer.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAiB,OAAO,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,MAAM,UAAU,6BAA6B,CAAC,KAA6C;IACvF,MAAM,EACF,IAAI,EACJ,MAAM,EACN,KAAK,EACL,SAAS,EACT,UAAU,EACV,+BAA+B,EAC/B,SAAS,EACT,MAAM,EACN,aAAa,EACb,QAAQ,GACX,GAAG,KAAK,CAAC;IAEV,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAE,CAAC;IAE3D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACvB,MAAM,aAAa,GAAkB;YACjC,SAAS;YACT,MAAM;SACT,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YAChB,aAAa,CAAC,SAAS,GAAG,QAAQ,CAAC;YACnC,aAAa,CAAC,SAAS,GAAG,MAAM,CAAC;QACrC,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjB,aAAa,CAAC,OAAO,GAAG,kBAAkB,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACJ,aAAa,CAAC,MAAM,GAAG,+BAA+B;oBAClD,CAAC,CAAC,oBAAoB;oBACtB,CAAC,CAAC,iBAAiB,CAAC;YAC5B,CAAC;QACL,CAAC;QAED,OAAO,aAAa,CAAC;IACzB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,+BAA+B,CAAC,CAAC,CAAC;IAE9F,OAAO,CACH,6BACI,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,EAAE,CAAC,iCAAiC,EAAE,SAAS,EAAE;YACxD,eAAe,EAAE,CAAC,CAAC,UAAU;SAChC,CAAC,EACF,KAAK,EAAE,KAAK,IAEX,QAAQ,CACP,CACT,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IDashboardLayoutSectionRenderer } from "./interfaces.js";
2
+ export declare const EditableDashboardLayoutSectionRenderer: IDashboardLayoutSectionRenderer<unknown>;
3
+ //# sourceMappingURL=EditableDashboardLayoutSectionRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableDashboardLayoutSectionRenderer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAC;AAuBlE,eAAO,MAAM,sCAAsC,EAAE,+BAA+B,CAAC,OAAO,CAgB3F,CAAC"}
@@ -0,0 +1,26 @@
1
+ // (C) 2007-2024 GoodData Corporation
2
+ import React from "react";
3
+ import cx from "classnames";
4
+ import { DashboardLayoutSectionBorder, useIsDraggingWidget, } from "../../dragAndDrop/index.js";
5
+ import { selectActiveSectionIndex, useDashboardSelector } from "../../../model/index.js";
6
+ const isHiddenStyle = { height: 0, width: 0, overflow: "hidden", flex: 0 };
7
+ const defaultStyle = {};
8
+ function useBorderStatus(sectionIndex) {
9
+ const activeSectionIndex = useDashboardSelector(selectActiveSectionIndex);
10
+ const isDraggingWidget = useIsDraggingWidget();
11
+ if (isDraggingWidget) {
12
+ return "muted";
13
+ }
14
+ const isActive = activeSectionIndex === sectionIndex;
15
+ return !isActive ? "invisible" : "muted";
16
+ }
17
+ export const EditableDashboardLayoutSectionRenderer = (props) => {
18
+ const { children, className, debug, isHidden, section } = props;
19
+ const style = isHidden ? isHiddenStyle : defaultStyle;
20
+ const status = useBorderStatus(section.index());
21
+ return (React.createElement("div", { className: cx(["gd-fluidlayout-row", "s-fluid-layout-row", className], {
22
+ "gd-fluidlayout-row-debug": debug,
23
+ }), style: style },
24
+ React.createElement(DashboardLayoutSectionBorder, { status: status }, children)));
25
+ };
26
+ //# sourceMappingURL=EditableDashboardLayoutSectionRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableDashboardLayoutSectionRenderer.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACH,4BAA4B,EAE5B,mBAAmB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,MAAM,aAAa,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC3E,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,SAAS,eAAe,CAAC,YAAoB;IACzC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;IAC1E,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,IAAI,gBAAgB,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,kBAAkB,KAAK,YAAY,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;AAC7C,CAAC;AAED,MAAM,CAAC,MAAM,sCAAsC,GAA6C,CAAC,KAAK,EAAE,EAAE;IACtG,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEhE,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC;IACtD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEhD,OAAO,CACH,6BACI,SAAS,EAAE,EAAE,CAAC,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,SAAS,CAAC,EAAE;YACnE,0BAA0B,EAAE,KAAK;SACpC,CAAC,EACF,KAAK,EAAE,KAAK;QAEZ,oBAAC,4BAA4B,IAAC,MAAM,EAAE,MAAM,IAAG,QAAQ,CAAgC,CACrF,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ export interface IEditableLabelWithBubbleProps {
3
+ className: string;
4
+ alignTo: string;
5
+ maxRows: number;
6
+ value: string;
7
+ maxLength: number;
8
+ placeholderMessage: string;
9
+ warningLimit: number;
10
+ onSubmit: (value: string) => void;
11
+ onEditingStart?: () => void;
12
+ onCancel?: () => void;
13
+ children?: React.ReactNode;
14
+ }
15
+ export declare function EditableLabelWithBubble({ onEditingStart, maxLength, value, warningLimit, onCancel, alignTo, className, maxRows, placeholderMessage, children, onSubmit, }: IEditableLabelWithBubbleProps): JSX.Element;
16
+ //# sourceMappingURL=EditableLabelWithBubble.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableLabelWithBubble.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.tsx"],"names":[],"mappings":"AACA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAQrD,MAAM,WAAW,6BAA6B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC9B;AAED,wBAAgB,uBAAuB,CAAC,EACpC,cAAc,EACd,SAAS,EACT,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,SAAS,EACT,OAAO,EACP,kBAAkB,EAClB,QAAQ,EACR,QAAQ,GACX,EAAE,6BAA6B,GAAG,GAAG,CAAC,OAAO,CAmE7C"}
@@ -0,0 +1,38 @@
1
+ // (C) 2019-2024 GoodData Corporation
2
+ import React, { useCallback, useState } from "react";
3
+ import { Bubble, EditableLabel } from "@gooddata/sdk-ui-kit";
4
+ import { useIntl } from "react-intl";
5
+ const BUBBLE_ALIGN_POINTS = [{ align: "bl tl" }];
6
+ const ARROW_OFFSETS = { "bl tl": [0, 7] };
7
+ const BUBBLE_STYLE = "bubble-primary";
8
+ export function EditableLabelWithBubble({ onEditingStart, maxLength, value, warningLimit, onCancel, alignTo, className, maxRows, placeholderMessage, children, onSubmit, }) {
9
+ const intl = useIntl();
10
+ const [currentValue, setCurrentValue] = useState(value);
11
+ const [editing, setEditing] = useState(false);
12
+ const charactersCountLeft = maxLength - currentValue.length;
13
+ const maximumCharactersCount = maxLength;
14
+ const bubbleMessage = intl.formatMessage({ id: "layout.header.characters.left" }, { currentCharactersCount: charactersCountLeft, maximumCharactersCount });
15
+ const currentValueLength = currentValue.length;
16
+ const isBubbleVisible = editing && maxLength - currentValueLength <= warningLimit;
17
+ const onStart = useCallback(() => {
18
+ setEditing(true);
19
+ onEditingStart?.();
20
+ }, [onEditingStart]);
21
+ const onCancelCallback = useCallback(() => {
22
+ setEditing(false);
23
+ setCurrentValue(value);
24
+ onCancel?.();
25
+ }, [onCancel, value]);
26
+ const onSubmitCallback = useCallback((newValue) => {
27
+ setEditing(false);
28
+ setCurrentValue(newValue);
29
+ onSubmit(newValue);
30
+ }, [onSubmit]);
31
+ const onChange = useCallback((newValue) => {
32
+ setCurrentValue(newValue);
33
+ }, []);
34
+ return (React.createElement(React.Fragment, null,
35
+ React.createElement(EditableLabel, { className: className, maxRows: maxRows, value: value, maxLength: maxLength, placeholder: placeholderMessage, onEditingStart: onStart, onCancel: onCancelCallback, onChange: onChange, onSubmit: onSubmitCallback }, children),
36
+ isBubbleVisible ? (React.createElement(Bubble, { alignTo: alignTo, className: BUBBLE_STYLE, alignPoints: BUBBLE_ALIGN_POINTS, arrowOffsets: ARROW_OFFSETS }, bubbleMessage)) : null));
37
+ }
38
+ //# sourceMappingURL=EditableLabelWithBubble.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableLabelWithBubble.js","sourceRoot":"","sources":["../../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export interface ISectionHeaderEditableProps {
3
+ title: string;
4
+ description: string;
5
+ index: number;
6
+ }
7
+ export declare function SectionHeaderEditable(props: ISectionHeaderEditableProps): JSX.Element;
8
+ //# sourceMappingURL=SectionHeaderEditable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SectionHeaderEditable.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.tsx"],"names":[],"mappings":";AA4BA,MAAM,WAAW,2BAA2B;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,2BAA2B,GAAG,GAAG,CAAC,OAAO,CA2HrF"}
@@ -0,0 +1,66 @@
1
+ // (C) 2019-2024 GoodData Corporation
2
+ import React, { useCallback, useEffect, useState } from "react";
3
+ import { useIntl } from "react-intl";
4
+ import cx from "classnames";
5
+ import { RichTextWithTooltip } from "@gooddata/sdk-ui-kit";
6
+ import { EditableLabelWithBubble } from "./EditableLabelWithBubble.js";
7
+ import { getTitle, getDescription, MAX_TITLE_LENGTH, TITLE_LENGTH_WARNING_LIMIT, MAX_DESCRIPTION_LENGTH, DESCRIPTION_LENGTH_WARNING_LIMIT, } from "./sectionHeaderHelper.js";
8
+ import { changeLayoutSectionHeader, selectEnableRichTextDescriptions, uiActions, useDashboardDispatch, useDashboardSelector, } from "../../../../model/index.js";
9
+ const richTextTooltipAlignPoints = [
10
+ { align: "bl tl", offset: { x: 6, y: 1 } },
11
+ { align: "tl bl", offset: { x: 6, y: -1 } },
12
+ ];
13
+ export function SectionHeaderEditable(props) {
14
+ const useRichText = useDashboardSelector(selectEnableRichTextDescriptions);
15
+ const description = useRichText ? props.description : getDescription(props.description);
16
+ const title = getTitle(props.title);
17
+ const { index } = props;
18
+ const intl = useIntl();
19
+ const placeholder = intl.formatMessage({
20
+ id: "layout.header.add.description.placeholder",
21
+ });
22
+ const dispatch = useDashboardDispatch();
23
+ const changeTitle = useCallback((title) => dispatch(changeLayoutSectionHeader(index, { title }, true)), [dispatch, index]);
24
+ const changeDescription = useCallback((description) => dispatch(changeLayoutSectionHeader(index, { description }, true)), [dispatch, index]);
25
+ const onEditingStart = useCallback(() => {
26
+ dispatch(uiActions.setActiveSectionIndex(index));
27
+ }, [dispatch, index]);
28
+ const onEditingEnd = useCallback(() => {
29
+ dispatch(uiActions.clearActiveSectionIndex());
30
+ }, [dispatch]);
31
+ const onTitleSubmit = useCallback((title) => {
32
+ changeTitle(title);
33
+ onEditingEnd();
34
+ }, [changeTitle, onEditingEnd]);
35
+ const onDescriptionSubmit = useCallback((description) => {
36
+ changeDescription(description);
37
+ onEditingEnd();
38
+ }, [changeDescription, onEditingEnd]);
39
+ const [isRichTextEditing, setIsRichTextEditing] = useState(false);
40
+ const [richTextValue, setRichTextValue] = useState("");
41
+ const onDescriptionClick = useCallback(() => {
42
+ if (!isRichTextEditing) {
43
+ onEditingStart();
44
+ setIsRichTextEditing(true);
45
+ }
46
+ }, [isRichTextEditing, onEditingStart]);
47
+ const onDescriptionBlur = useCallback(() => {
48
+ changeDescription(richTextValue);
49
+ onEditingEnd();
50
+ setIsRichTextEditing(false);
51
+ }, [changeDescription, onEditingEnd, richTextValue]);
52
+ const onRichTextChange = useCallback((value) => {
53
+ setRichTextValue(value);
54
+ }, []);
55
+ useEffect(() => {
56
+ setRichTextValue(description);
57
+ }, [description]);
58
+ return (React.createElement("div", { className: "gd-row-header-edit" },
59
+ React.createElement("div", { className: "gd-editable-label-container gd-row-header-title-wrapper" },
60
+ React.createElement(EditableLabelWithBubble, { className: `gd-title-for-${index} s-fluid-layout-row-title-input title gd-heading-2`, maxRows: 10, value: title || "", maxLength: MAX_TITLE_LENGTH, warningLimit: TITLE_LENGTH_WARNING_LIMIT, placeholderMessage: intl.formatMessage({ id: "layout.header.add.title.placeholder" }), alignTo: `.gd-title-for-${index}`, onSubmit: onTitleSubmit, onEditingStart: onEditingStart, onCancel: onEditingEnd })),
61
+ React.createElement("div", { className: "gd-editable-label-container gd-row-header-description-wrapper" }, useRichText ? (React.createElement("div", { className: cx("gd-editable-label-richtext s-fluid-layout-row-description-input", {
62
+ "is-editing": isRichTextEditing,
63
+ }), onClick: onDescriptionClick, onBlur: onDescriptionBlur },
64
+ React.createElement(RichTextWithTooltip, { value: richTextValue, renderMode: isRichTextEditing ? "edit" : "view", onChange: onRichTextChange, editRows: 10, editPlaceholder: placeholder, emptyElement: React.createElement("div", { className: "gd-editable-label-richtext-empty" }, placeholder), showTooltip: isRichTextEditing, tooltipAlignPoints: richTextTooltipAlignPoints }))) : (React.createElement(EditableLabelWithBubble, { className: `gd-description-for-${index} s-fluid-layout-row-description-input description`, alignTo: `.gd-description-for-${index}`, maxRows: 15, value: description || "", maxLength: MAX_DESCRIPTION_LENGTH, warningLimit: DESCRIPTION_LENGTH_WARNING_LIMIT, placeholderMessage: placeholder, onSubmit: onDescriptionSubmit, onEditingStart: onEditingStart, onCancel: onEditingEnd })))));
65
+ }
66
+ //# sourceMappingURL=SectionHeaderEditable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SectionHeaderEditable.js","sourceRoot":"","sources":["../../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const MAX_TITLE_LENGTH = 256;
2
+ export declare const MAX_DESCRIPTION_LENGTH = 1024;
3
+ export declare const TITLE_LENGTH_WARNING_LIMIT = 128;
4
+ export declare const DESCRIPTION_LENGTH_WARNING_LIMIT = 512;
5
+ export declare function getTitle(title: string): string;
6
+ export declare function getDescription(description: string): string;
7
+ //# sourceMappingURL=sectionHeaderHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sectionHeaderHelper.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,gCAAgC,MAAM,CAAC;AAEpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAM1D"}
@@ -0,0 +1,18 @@
1
+ // (C) 2019-2024 GoodData Corporation
2
+ export const MAX_TITLE_LENGTH = 256;
3
+ export const MAX_DESCRIPTION_LENGTH = 1024;
4
+ export const TITLE_LENGTH_WARNING_LIMIT = 128;
5
+ export const DESCRIPTION_LENGTH_WARNING_LIMIT = 512;
6
+ export function getTitle(title) {
7
+ if (title && title.length > MAX_TITLE_LENGTH) {
8
+ return title.substring(0, MAX_TITLE_LENGTH) + "...";
9
+ }
10
+ return title;
11
+ }
12
+ export function getDescription(description) {
13
+ if (description && description.length > MAX_DESCRIPTION_LENGTH) {
14
+ return description.substring(0, MAX_DESCRIPTION_LENGTH) + "...";
15
+ }
16
+ return description;
17
+ }
18
+ //# sourceMappingURL=sectionHeaderHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sectionHeaderHelper.js","sourceRoot":"","sources":["../../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAE3C,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAC9C,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC;AAEpD,MAAM,UAAU,QAAQ,CAAC,KAAa;IAClC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC;IACxD,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,WAAmB;IAC9C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;QAC7D,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,sBAAsB,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC;IAED,OAAO,WAAW,CAAC;AACvB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { IDashboardLayoutSectionHeaderRenderer } from "./interfaces.js";
2
+ /**
3
+ * render function for DashboardLayoutSectionHeader respecting render mode
4
+ *
5
+ * @internal
6
+ */
7
+ export declare const renderModeAwareDashboardLayoutSectionHeaderRenderer: IDashboardLayoutSectionHeaderRenderer<unknown>;
8
+ //# sourceMappingURL=RenderModeAwareDashboardLayoutSectionHeaderRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderModeAwareDashboardLayoutSectionHeaderRenderer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,qCAAqC,EAAE,MAAM,iBAAiB,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,mDAAmD,gDAGZ,CAAC"}