@gooddata/sdk-ui-dashboard 11.58.0-alpha.1 → 11.58.0-alpha.3

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 (177) hide show
  1. package/NOTICE +9 -9
  2. package/esm/__version.d.ts +1 -1
  3. package/esm/__version.js +1 -1
  4. package/esm/_staging/sharedHooks/useFiltersNamings.d.ts.map +1 -1
  5. package/esm/_staging/sharedHooks/useFiltersNamings.js +5 -3
  6. package/esm/index.d.ts +4 -4
  7. package/esm/index.d.ts.map +1 -1
  8. package/esm/index.js +2 -2
  9. package/esm/model/DashboardTester.d.ts.map +1 -1
  10. package/esm/model/DashboardTester.js +7 -1
  11. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts.map +1 -1
  12. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +13 -6
  13. package/esm/model/commandHandlers/parameters/filterParameterDependenciesWorker.d.ts +45 -0
  14. package/esm/model/commandHandlers/parameters/filterParameterDependenciesWorker.d.ts.map +1 -0
  15. package/esm/model/commandHandlers/parameters/filterParameterDependenciesWorker.js +99 -0
  16. package/esm/model/commandHandlers/parameters/insightParameterDependenciesWorker.d.ts +11 -0
  17. package/esm/model/commandHandlers/parameters/insightParameterDependenciesWorker.d.ts.map +1 -0
  18. package/esm/model/commandHandlers/parameters/insightParameterDependenciesWorker.js +71 -0
  19. package/esm/model/commandHandlers/parameters/loadFilterParameterDependencies.d.ts +22 -0
  20. package/esm/model/commandHandlers/parameters/loadFilterParameterDependencies.d.ts.map +1 -0
  21. package/esm/model/commandHandlers/parameters/loadFilterParameterDependencies.js +39 -0
  22. package/esm/model/commandHandlers/parameters/loadInsightParameterDependencies.d.ts +21 -0
  23. package/esm/model/commandHandlers/parameters/loadInsightParameterDependencies.d.ts.map +1 -0
  24. package/esm/model/commandHandlers/parameters/loadInsightParameterDependencies.js +86 -0
  25. package/esm/model/react/useInitializeDashboardStore.d.ts.map +1 -1
  26. package/esm/model/react/useInitializeDashboardStore.js +4 -0
  27. package/esm/model/react/useIsWidgetRestricted.d.ts.map +1 -1
  28. package/esm/model/react/useIsWidgetRestricted.js +14 -7
  29. package/esm/model/react/useWidgetExecConfig.d.ts +4 -4
  30. package/esm/model/react/useWidgetExecConfig.d.ts.map +1 -1
  31. package/esm/model/react/useWidgetExecConfig.js +2 -2
  32. package/esm/model/store/catalog/catalogReducers.d.ts +16 -4
  33. package/esm/model/store/catalog/catalogReducers.d.ts.map +1 -1
  34. package/esm/model/store/catalog/catalogReducers.js +15 -3
  35. package/esm/model/store/catalog/catalogSelectors.d.ts +21 -6
  36. package/esm/model/store/catalog/catalogSelectors.d.ts.map +1 -1
  37. package/esm/model/store/catalog/catalogSelectors.js +20 -5
  38. package/esm/model/store/catalog/catalogState.d.ts +30 -9
  39. package/esm/model/store/catalog/catalogState.d.ts.map +1 -1
  40. package/esm/model/store/catalog/catalogState.js +2 -1
  41. package/esm/model/store/catalog/index.d.ts +4 -1
  42. package/esm/model/store/catalog/index.d.ts.map +1 -1
  43. package/esm/model/store/tabs/layout/layoutSelectors.d.ts +10 -0
  44. package/esm/model/store/tabs/layout/layoutSelectors.d.ts.map +1 -1
  45. package/esm/model/store/tabs/layout/layoutSelectors.js +55 -26
  46. package/esm/model/store/tabs/parameters/parametersHelpers.d.ts +42 -8
  47. package/esm/model/store/tabs/parameters/parametersHelpers.d.ts.map +1 -1
  48. package/esm/model/store/tabs/parameters/parametersHelpers.js +88 -19
  49. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts +13 -6
  50. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts.map +1 -1
  51. package/esm/model/store/tabs/parameters/parametersSelectors.js +24 -13
  52. package/esm/presentation/automations/shared/automationFilters/components/AutomationAttributeFilter.d.ts.map +1 -1
  53. package/esm/presentation/automations/shared/automationFilters/components/AutomationAttributeFilter.js +16 -2
  54. package/esm/presentation/automations/shared/hooks/useFiltersNamings.d.ts.map +1 -1
  55. package/esm/presentation/automations/shared/hooks/useFiltersNamings.js +5 -3
  56. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.d.ts.map +1 -1
  57. package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js +35 -13
  58. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +3 -0
  59. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  60. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +5 -2
  61. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +3 -0
  62. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  63. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +5 -2
  64. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +3 -0
  65. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  66. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +5 -2
  67. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +12 -0
  68. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  69. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +14 -2
  70. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +3 -0
  71. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  72. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +5 -2
  73. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +3 -0
  74. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  75. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +5 -2
  76. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +3 -0
  77. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  78. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +5 -2
  79. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +3 -0
  80. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  81. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +5 -2
  82. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +3 -0
  83. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  84. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +5 -2
  85. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +3 -0
  86. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  87. package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +5 -2
  88. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +3 -0
  89. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  90. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +5 -2
  91. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +3 -0
  92. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  93. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +5 -2
  94. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +3 -0
  95. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  96. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +5 -2
  97. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +3 -0
  98. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  99. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +5 -2
  100. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +3 -0
  101. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  102. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +5 -2
  103. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +3 -0
  104. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  105. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +5 -2
  106. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +3 -0
  107. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  108. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +5 -2
  109. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +3 -0
  110. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  111. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +5 -2
  112. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +3 -0
  113. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  114. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +5 -2
  115. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +3 -0
  116. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  117. package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +5 -2
  118. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +3 -0
  119. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  120. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +5 -2
  121. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +3 -0
  122. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  123. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +5 -2
  124. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +3 -0
  125. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  126. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +5 -2
  127. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +3 -0
  128. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  129. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +5 -2
  130. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +3 -0
  131. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  132. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +5 -2
  133. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +3 -0
  134. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  135. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +5 -2
  136. package/esm/presentation/widget/common/RestrictedPlaceholder.d.ts +4 -8
  137. package/esm/presentation/widget/common/RestrictedPlaceholder.d.ts.map +1 -1
  138. package/esm/presentation/widget/common/RestrictedPlaceholder.js +16 -23
  139. package/esm/presentation/widget/insight/DefaultInsightBody/DefaultInsightBody.d.ts.map +1 -1
  140. package/esm/presentation/widget/insight/DefaultInsightBody/DefaultInsightBody.js +2 -4
  141. package/esm/presentation/widget/insight/LayeredTableView.d.ts +1 -1
  142. package/esm/presentation/widget/insight/LayeredTableView.d.ts.map +1 -1
  143. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.d.ts.map +1 -1
  144. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.js +2 -3
  145. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/InsightDrillDialog.d.ts.map +1 -1
  146. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/InsightDrillDialog.js +1 -1
  147. package/esm/presentation/widget/insight/configuration/InsightDescriptionConfig/InsightDescription.d.ts.map +1 -1
  148. package/esm/presentation/widget/insight/configuration/InsightDescriptionConfig/InsightDescription.js +30 -12
  149. package/esm/presentation/widget/insight/types.d.ts +1 -1
  150. package/esm/presentation/widget/insight/types.d.ts.map +1 -1
  151. package/esm/presentation/widget/richText/EditModeDashboardRichText.d.ts.map +1 -1
  152. package/esm/presentation/widget/richText/EditModeDashboardRichText.js +18 -6
  153. package/esm/presentation/widget/richText/RestrictedReferencesDialog.d.ts +22 -0
  154. package/esm/presentation/widget/richText/RestrictedReferencesDialog.d.ts.map +1 -0
  155. package/esm/presentation/widget/richText/RestrictedReferencesDialog.js +41 -0
  156. package/esm/presentation/widget/richText/useEditableRichTextMenu.d.ts.map +1 -1
  157. package/esm/presentation/widget/richText/useEditableRichTextMenu.js +6 -2
  158. package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcher.js +1 -1
  159. package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsList/VisualizationListItem.d.ts.map +1 -1
  160. package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsList/VisualizationListItem.js +1 -4
  161. package/esm/presentation/widget/widget/InsightWidget/DefaultDashboardInsightWidget.js +2 -3
  162. package/esm/sdk-ui-dashboard.d.ts +99 -42
  163. package/package.json +23 -23
  164. package/styles/css/main.css +28 -16
  165. package/styles/css/main.css.map +1 -1
  166. package/styles/css/richTextWidget.css +4 -0
  167. package/styles/css/richTextWidget.css.map +1 -1
  168. package/styles/scss/richTextWidget.scss +5 -1
  169. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadMeasureParameterDependencies.d.ts +0 -13
  170. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadMeasureParameterDependencies.d.ts.map +0 -1
  171. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadMeasureParameterDependencies.js +0 -98
  172. package/esm/presentation/widget/insight/geoDefaultDisplayFormRefs.d.ts +0 -5
  173. package/esm/presentation/widget/insight/geoDefaultDisplayFormRefs.d.ts.map +0 -1
  174. package/esm/presentation/widget/insight/geoDefaultDisplayFormRefs.js +0 -28
  175. package/esm/presentation/widget/insight/insightToTable.d.ts +0 -74
  176. package/esm/presentation/widget/insight/insightToTable.d.ts.map +0 -1
  177. package/esm/presentation/widget/insight/insightToTable.js +0 -482
@@ -1 +1 @@
1
- {"version":3,"file":"zh-Hant.localization-bundle.d.ts","sourceRoot":"","sources":["../../../../src/presentation/localization/bundles/zh-Hant.localization-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zh-Hant.localization-bundle.d.ts","sourceRoot":"","sources":["../../../../src/presentation/localization/bundles/zh-Hant.localization-bundle.ts"],"names":[],"mappings":"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"}
@@ -37,8 +37,8 @@ export const zh_Hant = {
37
37
  "messages.drill.InteractionUpdatedSuccess": "互動已更新。",
38
38
  "filterBar.label": "過濾器",
39
39
  "filterBar.restrictedFilters.remove": "移除受限制的篩選器",
40
- "filterBar.restrictedFilters.reason": "{count, plural, other {您無權存取 # 個篩選器。}}",
41
- "filterBar.restrictedFilters": "{count, plural, other {未套用 # 個篩選器}}",
40
+ "filterBar.restrictedFilters.reason": "{count, plural, other {您無權存取 # 個篩選器。請聯絡管理員以要求存取權。}}",
41
+ "filterBar.restrictedFilters": "{count, plural, other {# 個受限制的篩選器}}",
42
42
  "filterBar.showAll": "顯示所有",
43
43
  "filterBar.showLess": "顯示較少",
44
44
  "filterBar.filterListAutoExpanded": "篩選器清單已自動展開",
@@ -648,6 +648,9 @@ export const zh_Hant = {
648
648
  "richText.summaryDashboard.empty": "(無可用的儀表板摘要)",
649
649
  "richText.deleteDialog.header": "刪除富文本?",
650
650
  "richText.deleteDialog.message": "富文本及其所有內容將不可逆轉地刪除。",
651
+ "richText.restrictedReferences.dialog.header": "移除受限制的內容?",
652
+ "richText.restrictedReferences.dialog.message": "此文字的部分內容受到限制。編輯後,將為所有使用者永久移除受限制的物件。",
653
+ "richText.restrictedReferences.dialog.submit": "移除並編輯",
651
654
  "richText.emptyContent": "沒有富文本內容",
652
655
  "visualizationSwitcher.restrictedEntry": "受限制",
653
656
  "visualizationSwitcher.emptyContent": "切換器中沒有可視化",
@@ -14,17 +14,13 @@ export interface IRestrictedPlaceholderContentProps {
14
14
  height?: number;
15
15
  }
16
16
  /**
17
- * The built-in restricted placeholder content: a lock with the reason and the recovery step.
18
- *
19
- * It is the error tile the dashboard already shows for a visualization that is gone, with the lock
20
- * in place of the warning, so the two read as the same kind of message. It renders the same at every
21
- * size — the tile clips what does not fit and the hover tooltip carries the whole message — so one
22
- * widget cannot read differently in two render modes. The measured size is therefore not used, and
23
- * is passed to a consumer's replacement only.
17
+ * The built-in restricted placeholder content: a lock with the reason and the recovery step, as the
18
+ * design has it. It takes over the whole widget, title included, because a stored title can name the
19
+ * object the reader may not know exists.
24
20
  *
25
21
  * @alpha
26
22
  */
27
- export declare function RestrictedPlaceholderContent(_props: IRestrictedPlaceholderContentProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function RestrictedPlaceholderContent({ width }: IRestrictedPlaceholderContentProps): import("react/jsx-runtime").JSX.Element;
28
24
  /**
29
25
  * Props of the component standing in for a widget the current user is not allowed to see.
30
26
  *
@@ -1 +1 @@
1
- {"version":3,"file":"RestrictedPlaceholder.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/common/RestrictedPlaceholder.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAItD,OAAO,EAAE,KAAK,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAc9D;;;;;GAKG;AACH,MAAM,WAAW,kCAAkC;IAC/C,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,kCAAkC,2CA0BtF;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,UAAU,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,EAClC,MAAM,EACN,oBAAoB,EACpB,UAAU,EACV,OAAO,GACV,EAAE,2BAA2B,GAAG;IAAE,OAAO,EAAE,oCAAoC,CAAA;CAAE,2CAoBjF"}
1
+ {"version":3,"file":"RestrictedPlaceholder.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/common/RestrictedPlaceholder.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,KAAK,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAW9D;;;;;GAKG;AACH,MAAM,WAAW,kCAAkC;IAC/C,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,EAAE,KAAK,EAAE,EAAE,kCAAkC,2CAgBzF;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,UAAU,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,EAClC,MAAM,EACN,oBAAoB,EACpB,UAAU,EACV,OAAO,GACV,EAAE,2BAA2B,GAAG;IAAE,OAAO,EAAE,oCAAoC,CAAA;CAAE,2CAoBjF"}
@@ -1,35 +1,28 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2026 GoodData Corporation
2
3
  import cx from "classnames";
3
4
  import { useIntl } from "react-intl";
4
- import { ErrorComponent } from "@gooddata/sdk-ui";
5
- import { Bubble, BubbleHoverTrigger } from "@gooddata/sdk-ui-kit";
5
+ import { UiRestrictedPlaceholder } from "@gooddata/sdk-ui-kit";
6
6
  import { DashboardItem } from "../../presentationComponents/DashboardItems/DashboardItem.js";
7
7
  import { DashboardItemVisualization } from "../../presentationComponents/DashboardItems/DashboardItemVisualization.js";
8
- const tooltipAlignPoints = [{ align: "bc tc" }];
9
- const errorContentStyle = {
10
- // it centres its column, and centring splits the overflow between both ends: on a tile too small
11
- // for the message that takes the lock off the top. From the start, the lock and the reason are
12
- // what survives the clip.
13
- justifyContent: "flex-start",
14
- minWidth: 0,
15
- };
16
8
  /**
17
- * The built-in restricted placeholder content: a lock with the reason and the recovery step.
18
- *
19
- * It is the error tile the dashboard already shows for a visualization that is gone, with the lock
20
- * in place of the warning, so the two read as the same kind of message. It renders the same at every
21
- * size — the tile clips what does not fit and the hover tooltip carries the whole message — so one
22
- * widget cannot read differently in two render modes. The measured size is therefore not used, and
23
- * is passed to a consumer's replacement only.
9
+ * Below this, the recovery step does not fit on a line of its own and the design keeps the reason
10
+ * alone. The width decides it, never the height: the same tile is measured ten pixels shorter in
11
+ * edit mode than in view mode, and one widget must not read differently between the two.
12
+ */
13
+ const COMPACT_WIDTH = 320;
14
+ /**
15
+ * The built-in restricted placeholder content: a lock with the reason and the recovery step, as the
16
+ * design has it. It takes over the whole widget, title included, because a stored title can name the
17
+ * object the reader may not know exists.
24
18
  *
25
19
  * @alpha
26
20
  */
27
- export function RestrictedPlaceholderContent(_props) {
21
+ export function RestrictedPlaceholderContent({ width }) {
28
22
  const intl = useIntl();
29
- return (_jsxs(BubbleHoverTrigger, { className: "gd-restricted-placeholder-trigger", children: [_jsx(ErrorComponent, { className: "gd-restricted-placeholder", dataTestId: "restricted-placeholder", icon: "gd-icon-lock",
30
- // it does not shrink on its own - flex: 1 0 auto - so a narrow tile would push its
31
- // centred lock outside the visible area
32
- width: "100%", style: errorContentStyle, message: intl.formatMessage({ id: "widget.error.restricted_insight.message" }), description: intl.formatMessage({ id: "widget.error.restricted_insight.description" }) }), _jsxs(Bubble, { alignPoints: tooltipAlignPoints, children: [intl.formatMessage({ id: "widget.error.restricted_insight.message" }), _jsx("br", {}), intl.formatMessage({ id: "widget.error.restricted_insight.description" })] })] }));
23
+ const title = intl.formatMessage({ id: "widget.error.restricted_insight.message" });
24
+ const description = intl.formatMessage({ id: "widget.error.restricted_insight.description" });
25
+ return (_jsx("div", { className: "gd-restricted-placeholder-trigger", children: _jsx(UiRestrictedPlaceholder, { title: title, description: description, size: width !== undefined && width < COMPACT_WIDTH ? "compact" : "default", dataTestId: "restricted-placeholder" }) }));
33
26
  }
34
27
  /**
35
28
  * Stands in for an insight widget the current user is not allowed to see. It replaces the widget title
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultInsightBody.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/widget/insight/DefaultInsightBody/DefaultInsightBody.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,2CA8C1D"}
1
+ {"version":3,"file":"DefaultInsightBody.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/widget/insight/DefaultInsightBody/DefaultInsightBody.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,2CAyC1D"}
@@ -1,14 +1,12 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  // (C) 2022-2026 GoodData Corporation
3
3
  import { useMemo } from "react";
4
- import { InsightRenderer } from "@gooddata/sdk-ui-ext";
4
+ import { InsightRenderer, convertInsightToLayerTables, convertInsightToTableDefinition, getGeoTableDisplayFormRefs, } from "@gooddata/sdk-ui-ext";
5
5
  import { useDashboardSelector } from "../../../../model/react/DashboardStoreProvider.js";
6
6
  import { selectCatalogAttributesWithComputed } from "../../../../model/store/catalog/catalogSelectors.js";
7
7
  import { selectSettings } from "../../../../model/store/config/configSelectors.js";
8
8
  import { selectPreloadedAttributesWithReferences } from "../../../../model/store/tabs/filterContext/filterContextSelectors.js";
9
9
  import { useShowAsTable } from "../../showAsTableButton/useShowAsTable.js";
10
- import { getGeoDefaultDisplayFormRefs } from "../geoDefaultDisplayFormRefs.js";
11
- import { convertInsightToLayerTables, convertInsightToTableDefinition } from "../insightToTable.js";
12
10
  import { LayeredTableView } from "../LayeredTableView.js";
13
11
  /**
14
12
  * Default implementation of the InsightBody.
@@ -42,7 +40,7 @@ export function DefaultInsightBody(props) {
42
40
  return _jsx(LayeredTableView, { ...props, layerTables: layerTables });
43
41
  }
44
42
  const defaultDisplayFormRefs = isWidgetAsTable
45
- ? getGeoDefaultDisplayFormRefs(insight, settings, catalogAttributes, preloadedAttributesWithReferences)
43
+ ? getGeoTableDisplayFormRefs(insight, settings, catalogAttributes, preloadedAttributesWithReferences)
46
44
  : undefined;
47
45
  const insightToShow = isWidgetAsTable
48
46
  ? convertInsightToTableDefinition(insight, { settings, defaultDisplayFormRefs })
@@ -1,5 +1,5 @@
1
1
  import { type ReactElement } from "react";
2
- import { type ILayerTableDefinition } from "./insightToTable.js";
2
+ import { type ILayerTableDefinition } from "@gooddata/sdk-ui-ext";
3
3
  import { type IInsightBodyProps } from "./types.js";
4
4
  /**
5
5
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"LayeredTableView.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/insight/LayeredTableView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAkE,MAAM,OAAO,CAAC;AAO1G,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC;IAC9E,WAAW,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CAwG5E"}
1
+ {"version":3,"file":"LayeredTableView.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/insight/LayeredTableView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAkE,MAAM,OAAO,CAAC;AAI1G,OAAO,EAAE,KAAK,qBAAqB,EAAmB,MAAM,sBAAsB,CAAC;AAGnF,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC;IAC9E,WAAW,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CAwG5E"}
@@ -1 +1 @@
1
- {"version":3,"file":"DrillDialogInsight.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,KAAK,YAAY,EAMpB,MAAM,OAAO,CAAC;AAmCf,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAwC7D;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAC/B,OAAO,EACP,MAAM,EACN,OAAO,EACP,SAAS,EACT,SAAS,EACT,OAAO,EACP,OAAO,EAAE,SAAS,EAClB,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,gBAAgB,GACnB,EAAE,sBAAsB,GAAG,YAAY,CAyJvC"}
1
+ {"version":3,"file":"DrillDialogInsight.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,KAAK,YAAY,EAMpB,MAAM,OAAO,CAAC;AAsCf,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAwC7D;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAC/B,OAAO,EACP,MAAM,EACN,OAAO,EACP,SAAS,EACT,SAAS,EACT,OAAO,EACP,OAAO,EAAE,SAAS,EAClB,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,gBAAgB,GACnB,EAAE,sBAAsB,GAAG,YAAY,CAyJvC"}
@@ -4,6 +4,7 @@ import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
4
4
  import { createSelector } from "@reduxjs/toolkit";
5
5
  import { insightSetFilters } from "@gooddata/sdk-model";
6
6
  import { useBackendStrict, useWorkspaceStrict, } from "@gooddata/sdk-ui";
7
+ import { convertInsightToLayerTables, convertInsightToTableDefinition, getGeoTableDisplayFormRefs, } from "@gooddata/sdk-ui-ext";
7
8
  import { useDashboardSelector } from "../../../../../model/react/DashboardStoreProvider.js";
8
9
  import { useWidgetExecConfig } from "../../../../../model/react/useWidgetExecConfig.js";
9
10
  import { useWidgetFilters } from "../../../../../model/react/useWidgetFilters.js";
@@ -13,9 +14,7 @@ import { selectDrillableItems } from "../../../../../model/store/drill/drillSele
13
14
  import { selectPermissions } from "../../../../../model/store/permissions/permissionsSelectors.js";
14
15
  import { selectPreloadedAttributesWithReferences } from "../../../../../model/store/tabs/filterContext/filterContextSelectors.js";
15
16
  import { IntlWrapper } from "../../../../localization/IntlWrapper.js";
16
- import { getGeoDefaultDisplayFormRefs } from "../../geoDefaultDisplayFormRefs.js";
17
17
  import { InsightBody } from "../../InsightBody.js";
18
- import { convertInsightToLayerTables, convertInsightToTableDefinition } from "../../insightToTable.js";
19
18
  import { CustomError } from "../CustomError/CustomError.js";
20
19
  import { useInsightPositionStyle } from "../useInsightPositionStyle.js";
21
20
  import { useResolveDashboardInsightProperties } from "../useResolveDashboardInsightProperties.js";
@@ -96,7 +95,7 @@ export function DrillDialogInsight({ insight, widget, backend, workspace, drillS
96
95
  : undefined, [isWidgetAsTable, syncedInsight, settings, catalogAttributes, preloadedAttributesWithReferences]);
97
96
  // Convert insight to table format if needed for drill dialog
98
97
  const finalInsight = useMemo(() => {
99
- const defaultDisplayFormRefs = getGeoDefaultDisplayFormRefs(syncedInsight, settings, catalogAttributes, preloadedAttributesWithReferences);
98
+ const defaultDisplayFormRefs = getGeoTableDisplayFormRefs(syncedInsight, settings, catalogAttributes, preloadedAttributesWithReferences);
100
99
  if (!isWidgetAsTable) {
101
100
  return syncedInsight;
102
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InsightDrillDialog.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/InsightDrillDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,YAAY,EAAyB,MAAM,OAAO,CAAC;AAKrF,OAAO,EAEH,KAAK,QAAQ,EACb,KAAK,cAAc,EAKtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,OAAO,EAAyB,MAAM,kBAAkB,CAAC;AA0BvE,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAgB7G;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,sBAAsB,EAAE,OAAO,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,QAAQ,CAAC;IAClB,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,oBAAoB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACnC;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,wBAAwB,GAAG,YAAY,CA2MhF"}
1
+ {"version":3,"file":"InsightDrillDialog.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/InsightDrillDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,YAAY,EAAyB,MAAM,OAAO,CAAC;AAKrF,OAAO,EAEH,KAAK,QAAQ,EACb,KAAK,cAAc,EAKtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,OAAO,EAAyB,MAAM,kBAAkB,CAAC;AA2BvE,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAe7G;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,sBAAsB,EAAE,OAAO,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,QAAQ,CAAC;IAClB,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,oBAAoB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACnC;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,wBAAwB,GAAG,YAAY,CA2MhF"}
@@ -4,6 +4,7 @@ import { useCallback, useState } from "react";
4
4
  import cx from "classnames";
5
5
  import { useIntl } from "react-intl";
6
6
  import { insightTitle, insightVisualizationType, isInsight, } from "@gooddata/sdk-model";
7
+ import { supportsShowAsTable } from "@gooddata/sdk-ui-ext";
7
8
  import { Button, FLOATING_ELEMENT_DATA_ATTR, FullScreenOverlay, Overlay, OverlayController, OverlayControllerProvider, RichText, UiIcon, UiTooltip, isNotDocumentFocused, useIdPrefixed, useMediaQuery, } from "@gooddata/sdk-ui-kit";
8
9
  import { DOWNLOADER_ID } from "../../../../../_staging/fileUtils/downloadFile.js";
9
10
  import { useDashboardSelector } from "../../../../../model/react/DashboardStoreProvider.js";
@@ -21,7 +22,6 @@ import { useInsightExport } from "../../../common/useInsightExport.js";
21
22
  import { useShowAsTable } from "../../../showAsTableButton/useShowAsTable.js";
22
23
  import { useInsightWarning } from "../../../widget/InsightWidget/useInsightWarning.js";
23
24
  import { InsightWidgetWarningPartialResult } from "../../../widget/warningPartialResult/InsightWidgetWarningPartialResult.js";
24
- import { supportsShowAsTable } from "../../insightToTable.js";
25
25
  import { DrillDialog } from "./DrillDialog.js";
26
26
  import { DrillDialogInsight } from "./DrillDialogInsight.js";
27
27
  import { getTitleWithBreadcrumbs } from "./getTitleWithBreadcrumbs.js";
@@ -1 +1 @@
1
- {"version":3,"file":"InsightDescription.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightDescriptionConfig/InsightDescription.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAoC,MAAM,OAAO,CAAC;AAK7E,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAYrE,UAAU,wBAAwB;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,WAAW,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,EAC/B,WAAW,EACX,cAAc,EACd,QAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,GACb,EAAE,wBAAwB,2CAmE1B"}
1
+ {"version":3,"file":"InsightDescription.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightDescriptionConfig/InsightDescription.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAoC,MAAM,OAAO,CAAC;AAK7E,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAgBrE,UAAU,wBAAwB;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,WAAW,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,EAC/B,WAAW,EACX,cAAc,EACd,QAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,GACb,EAAE,wBAAwB,2CAkG1B"}
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2022-2026 GoodData Corporation
3
3
  import { useCallback, useEffect, useState } from "react";
4
4
  import cx from "classnames";
@@ -7,6 +7,7 @@ import { RichTextWithTooltip } from "@gooddata/sdk-ui-kit";
7
7
  import { useDashboardSelector } from "../../../../../model/react/DashboardStoreProvider.js";
8
8
  import { useDashboardExecConfig } from "../../../../../model/react/useWidgetExecConfig.js";
9
9
  import { selectRestrictedRichTextReferences } from "../../../../../model/store/unavailableObjects/unavailableObjectsSelectors.js";
10
+ import { RestrictedReferencesDialog, useHasRestrictedReferences, } from "../../../richText/RestrictedReferencesDialog.js";
10
11
  const richTextTooltipAlignPoints = [
11
12
  { align: "bl tl", offset: { x: 4, y: 5 } },
12
13
  { align: "tl bl", offset: { x: 4, y: -5 } },
@@ -16,7 +17,8 @@ export function InsightDescription({ description, setDescription, readOnly = fal
16
17
  const placeholder = intl.formatMessage({
17
18
  id: "configurationPanel.visualprops.descriptionPlaceholder",
18
19
  });
19
- const [isRichTextEditing, setIsRichTextEditing] = useState(false);
20
+ // what the editor asked for; whether it is the question or the editor follows from the text
21
+ const [isEditingRequested, setIsEditingRequested] = useState(false);
20
22
  const [richTextValue, setRichTextValue] = useState(description);
21
23
  const execConfig = useDashboardExecConfig();
22
24
  const restrictedReferences = useDashboardSelector(selectRestrictedRichTextReferences);
@@ -26,17 +28,33 @@ export function InsightDescription({ description, setDescription, readOnly = fal
26
28
  const onChange = useCallback((value) => {
27
29
  setDescription(value.trim());
28
30
  }, [setDescription]);
29
- const onDescriptionClick = useCallback(() => {
30
- if (!isRichTextEditing && !readOnly) {
31
- setIsRichTextEditing(true);
32
- }
33
- }, [isRichTextEditing, readOnly]);
34
- const onDescriptionBlur = useCallback(() => {
35
- setIsRichTextEditing(false);
36
- onChange(richTextValue);
37
- }, [onChange, richTextValue]);
31
+ const startEditing = useCallback(() => setIsEditingRequested(true), []);
38
32
  const onRichTextChange = useCallback((value) => {
39
33
  setRichTextValue(value);
40
34
  }, []);
41
- return (_jsx("label", { className: "gd-input", children: _jsx("div", { className: cx("gd-input-field gd-rich-text-insight-description", { disabled: readOnly }), onClick: onDescriptionClick, onBlur: onDescriptionBlur, children: _jsx(RichTextWithTooltip, { value: richTextValue, renderMode: isRichTextEditing ? "edit" : "view", onChange: onRichTextChange, editRows: 4, editPlaceholder: placeholder, emptyElement: readOnly ? undefined : (_jsx("div", { className: "gd-editable-label-richtext-empty", children: placeholder })), showTooltip: isRichTextEditing, tooltipAlignPoints: richTextTooltipAlignPoints, referencesEnabled: true, LoadingComponent: LoadingComponent, filters: insightFilters, separators: separators, restrictedReferences: restrictedReferences, execConfig: execConfig }) }) }));
35
+ const hasRestrictedReferences = useHasRestrictedReferences(richTextValue);
36
+ const isRichTextEditing = isEditingRequested && !hasRestrictedReferences;
37
+ const isAskingToSanitize = isEditingRequested && hasRestrictedReferences;
38
+ // the rewrite is committed at once: it was confirmed, and it is not a keystroke. The editor was
39
+ // already asked for, so the description opens as soon as the text no longer holds a reference
40
+ const onSanitized = useCallback((sanitized) => {
41
+ setRichTextValue(sanitized);
42
+ onChange(sanitized);
43
+ }, [onChange]);
44
+ const stopEditing = useCallback(() => setIsEditingRequested(false), []);
45
+ const onDescriptionBlur = useCallback(() => {
46
+ // the confirmation takes the focus out of the description, and that is not the editor
47
+ // leaving it: nothing is decided yet
48
+ if (isAskingToSanitize) {
49
+ return;
50
+ }
51
+ setIsEditingRequested(false);
52
+ onChange(richTextValue);
53
+ }, [onChange, richTextValue, isAskingToSanitize]);
54
+ const onDescriptionClick = useCallback(() => {
55
+ if (!isEditingRequested && !readOnly) {
56
+ startEditing();
57
+ }
58
+ }, [isEditingRequested, readOnly, startEditing]);
59
+ return (_jsxs("label", { className: "gd-input", children: [_jsx("div", { className: cx("gd-input-field gd-rich-text-insight-description", { disabled: readOnly }), onClick: onDescriptionClick, onBlur: onDescriptionBlur, children: _jsx(RichTextWithTooltip, { value: richTextValue, renderMode: isRichTextEditing ? "edit" : "view", onChange: onRichTextChange, editRows: 4, editPlaceholder: placeholder, emptyElement: readOnly ? undefined : (_jsx("div", { className: "gd-editable-label-richtext-empty", children: placeholder })), showTooltip: isRichTextEditing, tooltipAlignPoints: richTextTooltipAlignPoints, referencesEnabled: true, LoadingComponent: LoadingComponent, filters: insightFilters, separators: separators, restrictedReferences: restrictedReferences, execConfig: execConfig }) }), isAskingToSanitize ? (_jsx(RestrictedReferencesDialog, { value: richTextValue, onSanitized: onSanitized, onCancel: stopEditing })) : null] }));
42
60
  }
@@ -2,9 +2,9 @@ import { type ComponentType } from "react";
2
2
  import { type IAnalyticalBackend, type IUserWorkspaceSettings } from "@gooddata/sdk-backend-spi";
3
3
  import { type IColorPalette, type IExecutionConfig, type IFilter, type IInsight, type IInsightWidget, type ISeparators, type IWorkspacePermissions } from "@gooddata/sdk-model";
4
4
  import { type ExplicitDrill, type IDrillEventIntersectionElement, type IErrorProps, type ILoadingProps, type ILocale, type IPushData, type IVisualizationCallbacks, type OnError, type OnExportReady, type OnLoadingChanged } from "@gooddata/sdk-ui";
5
+ import { type ILayerTableDefinition } from "@gooddata/sdk-ui-ext";
5
6
  import { type IDrillStep, type OnDashboardDrill, type OnDrillDownSuccess, type OnDrillToAttributeUrlSuccess, type OnDrillToCustomUrlSuccess, type OnDrillToDashboardSuccess, type OnDrillToInsightSuccess, type OnKeyDriverAnalysisSuccess, type OnWidgetDrill } from "../../drill/types.js";
6
7
  import { type WidgetExportDataAttributes } from "../../export/types.js";
7
- import { type ILayerTableDefinition } from "./insightToTable.js";
8
8
  /**
9
9
  * Insight widget props.
10
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/insight/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/insight/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditModeDashboardRichText.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/richText/EditModeDashboardRichText.tsx"],"names":[],"mappings":"AA6BA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAK1D;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,uBAAuB,2CAgHvG"}
1
+ {"version":3,"file":"EditModeDashboardRichText.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/richText/EditModeDashboardRichText.tsx"],"names":[],"mappings":"AA+BA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAK1D;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,uBAAuB,2CAqIvG"}
@@ -1,6 +1,6 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2020-2026 GoodData Corporation
3
- import { useEffect, useMemo, useState } from "react";
3
+ import { useCallback, useEffect, useMemo, useState } from "react";
4
4
  import { FormattedMessage, useIntl } from "react-intl";
5
5
  import { widgetRef } from "@gooddata/sdk-model";
6
6
  import { usePrevious } from "@gooddata/sdk-ui";
@@ -13,9 +13,11 @@ import { useDashboardDispatch, useDashboardSelector } from "../../../model/react
13
13
  import { useDashboardExecConfig } from "../../../model/react/useWidgetExecConfig.js";
14
14
  import { useWidgetSelection } from "../../../model/react/useWidgetSelection.js";
15
15
  import { selectIsWhiteLabeled, selectSeparators } from "../../../model/store/config/configSelectors.js";
16
+ import { uiActions } from "../../../model/store/ui/index.js";
16
17
  import { selectRestrictedRichTextReferences } from "../../../model/store/unavailableObjects/unavailableObjectsSelectors.js";
17
18
  import { DASHBOARD_OVERLAYS_FILTER_Z_INDEX } from "../../../presentation/constants/zIndex.js";
18
19
  import { useDashboardComponentsContext } from "../../dashboardContexts/DashboardComponentsContext.js";
20
+ import { RestrictedReferencesDialog, useHasRestrictedReferences } from "./RestrictedReferencesDialog.js";
19
21
  import { useEditableRichTextMenu } from "./useEditableRichTextMenu.js";
20
22
  const overlayController = OverlayController.getInstance(DASHBOARD_OVERLAYS_FILTER_Z_INDEX);
21
23
  /**
@@ -32,8 +34,21 @@ export function EditModeDashboardRichText({ widget, clientWidth, clientHeight })
32
34
  const { filters } = useRichTextWidgetFilters(widget);
33
35
  const separators = useDashboardSelector(selectSeparators);
34
36
  const dispatch = useDashboardDispatch();
37
+ const releaseWidget = useCallback(() => dispatch(uiActions.clearWidgetSelection()), [dispatch]);
35
38
  const [richText, setRichText] = useState(widget?.content);
36
- const [isRichTextEditing, setIsRichTextEditing] = useState(false);
39
+ // the rewrite is committed at once: it was confirmed, and it is not a keystroke
40
+ const onSanitized = useCallback((sanitized) => {
41
+ setRichText(sanitized);
42
+ dispatch(changeRichTextWidgetContent(widget.ref, sanitized));
43
+ }, [dispatch, widget.ref]);
44
+ // Selecting the widget is what opens its editor, and a text holding a reference the editor may
45
+ // not read is asked about first. Both states are that selection and that text, so neither is
46
+ // kept as a flag: confirming rewrites the text, which is what turns the question into the
47
+ // editor; cancelling lets the widget go - deliberately, rather than through deselectWidgets,
48
+ // which holds on to a widget whose text the pointer happens to have selected.
49
+ const hasRestrictedReferences = useHasRestrictedReferences(richText);
50
+ const isRichTextEditing = isSelected && !hasRestrictedReferences;
51
+ const isAskingToSanitize = isSelected && hasRestrictedReferences;
37
52
  const [isConfirmDeleteDialogVisible, setIsConfirmDeleteDialogVisible] = useState(false);
38
53
  const theme = useTheme();
39
54
  const emptyContentIconColor = theme?.palette?.complementary?.c7 ?? "#6D7680";
@@ -42,9 +57,6 @@ export function EditModeDashboardRichText({ widget, clientWidth, clientHeight })
42
57
  }, [emptyContentIconColor, intl]);
43
58
  const { RichTextMenuComponentProvider, LoadingComponent } = useDashboardComponentsContext();
44
59
  const RichTextMenuComponent = useMemo(() => RichTextMenuComponentProvider(widget), [RichTextMenuComponentProvider, widget]);
45
- useEffect(() => {
46
- setIsRichTextEditing(isSelected);
47
- }, [isSelected]);
48
60
  useEffect(() => {
49
61
  // Deselect widget and commit updated markdown text "on blur"
50
62
  if (previousIsSelected && !isSelected && richText !== widget?.content) {
@@ -56,5 +68,5 @@ export function EditModeDashboardRichText({ widget, clientWidth, clientHeight })
56
68
  clientWidth > 250 &&
57
69
  typeof clientHeight !== "undefined" &&
58
70
  clientHeight > 150;
59
- return (_jsxs(_Fragment, { children: [hasConfigPanelOpen ? (_jsx(RichTextMenuComponent, { widget: widget, isOpen: hasConfigPanelOpen, onClose: closeConfigPanel, items: menuItems })) : null, _jsx(RichText, { referencesEnabled: true, filters: filters, separators: separators, restrictedReferences: restrictedReferences, className: "gd-rich-text-widget", value: richText, onChange: setRichText, renderMode: isRichTextEditing ? "edit" : "view", emptyElement: EmptyElement, LoadingComponent: LoadingComponent, execConfig: execConfig }), isRichTextEditing && showLink ? (_jsx("div", { className: "gd-rich-text-widget-footer", children: _jsx("div", { className: "gd-rich-text-footer-options", children: showLink ? (_jsx("a", { className: "gd-button-link-dimmed gd-icon-circle-question", href: "https://www.gooddata.com/docs/cloud/create-dashboards/rich-text/", rel: "noopener noreferrer", target: "_blank", children: _jsx(FormattedMessage, { id: "richText.formattingOptions" }) })) : null }) })) : null, isConfirmDeleteDialogVisible ? (_jsx(OverlayControllerProvider, { overlayController: overlayController, children: _jsx(ConfirmDialog, { className: "s-rich-text-remove-confirm-dialog", onSubmit: () => dispatch(eagerRemoveSectionItemByWidgetRef(widget.ref)), onCancel: () => setIsConfirmDeleteDialogVisible(false), headline: intl.formatMessage({ id: "richText.deleteDialog.header" }), submitButtonText: intl.formatMessage({ id: "delete" }), cancelButtonText: intl.formatMessage({ id: "cancel" }), children: _jsx(FormattedMessage, { id: "richText.deleteDialog.message" }) }) })) : null] }));
71
+ return (_jsxs(_Fragment, { children: [hasConfigPanelOpen ? (_jsx(RichTextMenuComponent, { widget: widget, isOpen: hasConfigPanelOpen, onClose: closeConfigPanel, items: menuItems })) : null, _jsx(RichText, { referencesEnabled: true, filters: filters, separators: separators, restrictedReferences: restrictedReferences, className: "gd-rich-text-widget", value: richText, onChange: setRichText, renderMode: isRichTextEditing ? "edit" : "view", emptyElement: EmptyElement, LoadingComponent: LoadingComponent, execConfig: execConfig }), isRichTextEditing && showLink ? (_jsx("div", { className: "gd-rich-text-widget-footer", children: _jsx("div", { className: "gd-rich-text-footer-options", children: showLink ? (_jsx("a", { className: "gd-button-link-dimmed gd-icon-circle-question", href: "https://www.gooddata.com/docs/cloud/create-dashboards/rich-text/", rel: "noopener noreferrer", target: "_blank", children: _jsx(FormattedMessage, { id: "richText.formattingOptions" }) })) : null }) })) : null, isAskingToSanitize ? (_jsx(RestrictedReferencesDialog, { value: richText, onSanitized: onSanitized, onCancel: releaseWidget })) : null, isConfirmDeleteDialogVisible ? (_jsx(OverlayControllerProvider, { overlayController: overlayController, children: _jsx(ConfirmDialog, { className: "s-rich-text-remove-confirm-dialog", onSubmit: () => dispatch(eagerRemoveSectionItemByWidgetRef(widget.ref)), onCancel: () => setIsConfirmDeleteDialogVisible(false), headline: intl.formatMessage({ id: "richText.deleteDialog.header" }), submitButtonText: intl.formatMessage({ id: "delete" }), cancelButtonText: intl.formatMessage({ id: "cancel" }), children: _jsx(FormattedMessage, { id: "richText.deleteDialog.message" }) }) })) : null] }));
60
72
  }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Whether the text references an object the current user is not allowed to read. A surface that
3
+ * edits text asks this to know which of its two states it is in, rather than keeping a flag that
4
+ * says the same thing a moment later.
5
+ */
6
+ export declare function useHasRestrictedReferences(value: string): boolean;
7
+ interface IRestrictedReferencesDialogProps {
8
+ /** The text as it stands. */
9
+ value: string;
10
+ /** Stores the sanitized text. The caller edits it once it no longer holds such a reference. */
11
+ onSanitized: (sanitized: string) => void;
12
+ /** The editor kept the references, and is not editing after all. */
13
+ onCancel: () => void;
14
+ }
15
+ /**
16
+ * Asks before a text that references objects the user cannot read is edited: those references have
17
+ * to go first, and that is destructive. The caller mounts it while it is the answer it is waiting
18
+ * for - confirming rewrites the text, which is what ends the question.
19
+ */
20
+ export declare function RestrictedReferencesDialog({ value, onSanitized, onCancel, }: IRestrictedReferencesDialogProps): import("react/jsx-runtime").JSX.Element;
21
+ export {};
22
+ //# sourceMappingURL=RestrictedReferencesDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RestrictedReferencesDialog.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/richText/RestrictedReferencesDialog.tsx"],"names":[],"mappings":"AA0BA;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAWjE;AAED,UAAU,gCAAgC;IACtC,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,+FAA+F;IAC/F,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,oEAAoE;IACpE,QAAQ,EAAE,MAAM,IAAI,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,EACvC,KAAK,EACL,WAAW,EACX,QAAQ,GACX,EAAE,gCAAgC,2CAmDlC"}
@@ -0,0 +1,41 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2026 GoodData Corporation
3
+ import { useCallback, useMemo, useRef } from "react";
4
+ import { useIntl } from "react-intl";
5
+ import { areObjRefsEqual } from "@gooddata/sdk-model";
6
+ import { UiButton, UiDialogBody, UiDialogFooter, UiDialogHeader, UiModalDialog, collectReferences, replaceReferences, } from "@gooddata/sdk-ui-kit";
7
+ import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
8
+ import { selectRestrictedRichTextReferences } from "../../../model/store/unavailableObjects/unavailableObjectsSelectors.js";
9
+ /**
10
+ * Put in the text in place of a reference the editor may not read, as the design has it. It is
11
+ * stored as the text itself, and thus is the same for every reader and not localised.
12
+ */
13
+ const RESTRICTED_REFERENCE_REPLACEMENT = "???";
14
+ /**
15
+ * Whether the text references an object the current user is not allowed to read. A surface that
16
+ * edits text asks this to know which of its two states it is in, rather than keeping a flag that
17
+ * says the same thing a moment later.
18
+ */
19
+ export function useHasRestrictedReferences(value) {
20
+ const restrictedReferences = useDashboardSelector(selectRestrictedRichTextReferences);
21
+ return useMemo(() => {
22
+ if (restrictedReferences.length === 0) {
23
+ return false;
24
+ }
25
+ return Object.values(collectReferences(value)).some((reference) => restrictedReferences.some((restricted) => areObjRefsEqual(restricted, reference.ref)));
26
+ }, [value, restrictedReferences]);
27
+ }
28
+ /**
29
+ * Asks before a text that references objects the user cannot read is edited: those references have
30
+ * to go first, and that is destructive. The caller mounts it while it is the answer it is waiting
31
+ * for - confirming rewrites the text, which is what ends the question.
32
+ */
33
+ export function RestrictedReferencesDialog({ value, onSanitized, onCancel, }) {
34
+ const intl = useIntl();
35
+ const cancelButtonRef = useRef(null);
36
+ const restrictedReferences = useDashboardSelector(selectRestrictedRichTextReferences);
37
+ const onConfirm = useCallback(() => {
38
+ onSanitized(replaceReferences(value, restrictedReferences, RESTRICTED_REFERENCE_REPLACEMENT));
39
+ }, [value, restrictedReferences, onSanitized]);
40
+ return (_jsx("span", { className: "gd-restricted-references-dialog-wrapper", onClick: (event) => event.stopPropagation(), children: _jsxs(UiModalDialog, { variant: "confirmation", isOpen: true, width: 440, initialFocus: cancelButtonRef, dataTestId: "rich-text-sanitize-references-dialog", accessibilityConfig: { role: "alertdialog" }, onClose: onCancel, children: [_jsx(UiDialogHeader, { title: intl.formatMessage({ id: "richText.restrictedReferences.dialog.header" }), titleSize: "large", onClose: onCancel }), _jsx(UiDialogBody, { children: intl.formatMessage({ id: "richText.restrictedReferences.dialog.message" }) }), _jsxs(UiDialogFooter, { children: [_jsx(UiButton, { ref: cancelButtonRef, label: intl.formatMessage({ id: "cancel" }), variant: "secondary", size: "medium", onClick: onCancel }), _jsx(UiButton, { label: intl.formatMessage({ id: "richText.restrictedReferences.dialog.submit" }), variant: "danger", size: "medium", onClick: onConfirm })] })] }) }));
41
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"useEditableRichTextMenu.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/richText/useEditableRichTextMenu.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO3D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,KAAK,6BAA6B,GAAG;IACjC,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,uBAAuB,WACxB,6BAA6B,KACtC;IAAE,SAAS,EAAE,iBAAiB,EAAE,CAAA;CA2BlC,CAAC"}
1
+ {"version":3,"file":"useEditableRichTextMenu.d.ts","sourceRoot":"","sources":["../../../../src/presentation/widget/richText/useEditableRichTextMenu.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAQ3D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,KAAK,6BAA6B,GAAG;IACjC,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,uBAAuB,WACxB,6BAA6B,KACtC;IAAE,SAAS,EAAE,iBAAiB,EAAE,CAAA;CA8BlC,CAAC"}
@@ -3,6 +3,7 @@ import { useMemo } from "react";
3
3
  import { useIntl } from "react-intl";
4
4
  import { useDashboardDispatch, useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
5
5
  import { useDashboardEventDispatch } from "../../../model/react/useDashboardEventDispatch.js";
6
+ import { useIsWidgetRestricted } from "../../../model/react/useIsWidgetRestricted.js";
6
7
  import { selectEnableRichTextWidgetFilterConfiguration } from "../../../model/store/config/configSelectors.js";
7
8
  import { useDashboardCustomizationsContext } from "../../dashboardContexts/DashboardCustomizationsContext.js";
8
9
  import { getDefaultRichTextEditMode } from "../richTextMenu/DefaultDashboardRichTextMenu/getDefaultRichTextEditMenuItems.js";
@@ -12,15 +13,18 @@ export const useEditableRichTextMenu = (config) => {
12
13
  const dispatch = useDashboardDispatch();
13
14
  const eventDispatch = useDashboardEventDispatch();
14
15
  const enableRichTextWidgetFilterConfiguration = useDashboardSelector(selectEnableRichTextWidgetFilterConfiguration);
16
+ // there is nothing to configure about a reference the editor is not allowed to read, so the
17
+ // menu of such a widget holds removal alone
18
+ const isRestricted = useIsWidgetRestricted(widget);
15
19
  const { richTextMenuItemsProvider } = useDashboardCustomizationsContext();
16
20
  const defaultMenuItems = useMemo(() => {
17
21
  return getDefaultRichTextEditMode(widget, {
18
22
  intl,
19
23
  dispatch,
20
24
  eventDispatch,
21
- enableRichTextWidgetFilterConfiguration,
25
+ enableRichTextWidgetFilterConfiguration: enableRichTextWidgetFilterConfiguration && !isRestricted,
22
26
  });
23
- }, [dispatch, eventDispatch, intl, widget, enableRichTextWidgetFilterConfiguration]);
27
+ }, [dispatch, eventDispatch, intl, widget, enableRichTextWidgetFilterConfiguration, isRestricted]);
24
28
  const menuItems = useMemo(() => {
25
29
  return richTextMenuItemsProvider
26
30
  ? richTextMenuItemsProvider(widget, defaultMenuItems, closeMenu, "edit")
@@ -4,6 +4,7 @@ import { useCallback, useMemo, useRef } from "react";
4
4
  import cx from "classnames";
5
5
  import { useIntl } from "react-intl";
6
6
  import { insightVisualizationType, widgetTitle, } from "@gooddata/sdk-model";
7
+ import { supportsShowAsTable } from "@gooddata/sdk-ui-ext";
7
8
  import { useId } from "@gooddata/sdk-ui-kit";
8
9
  import { changeVisualizationSwitcherActiveVisualization } from "../../../model/commands/visualizationSwitcher.js";
9
10
  import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
@@ -19,7 +20,6 @@ import { DashboardItemVisualization } from "../../presentationComponents/Dashboa
19
20
  import { getVisTypeCssClass } from "../../presentationComponents/DashboardItems/utils.js";
20
21
  import { useInsightExport } from "../common/useInsightExport.js";
21
22
  import { InsightWidgetDescriptionTrigger } from "../description/InsightWidgetDescriptionTrigger.js";
22
- import { supportsShowAsTable } from "../insight/insightToTable.js";
23
23
  import { ShowAsTableButton } from "../showAsTableButton/ShowAsTableButton.js";
24
24
  import { useShowAsTable } from "../showAsTableButton/useShowAsTable.js";
25
25
  import { useAlertingAndScheduling } from "../widget/InsightWidget/useAlertingAndScheduling.js";
@@ -1 +1 @@
1
- {"version":3,"file":"VisualizationListItem.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/visualizationSwitcher/configuration/VisualizationsList/VisualizationListItem.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAA4B,MAAM,qBAAqB,CAAC;AA2BnG,UAAU,2BAA2B;IACjC,aAAa,EAAE,cAAc,CAAC;IAC9B,OAAO,EAAE,QAAQ,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,sBAAsB,EAAE,CAAC,qBAAqB,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,qBAAqB,EAAE,CAAC,qBAAqB,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,6BAA6B,EAAE,CAAC,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7F;AAED,wBAAgB,qBAAqB,CAAC,EAClC,aAAa,EACb,OAAO,EACP,QAAQ,EACR,MAAM,EACN,OAAO,EACP,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,GAChC,EAAE,2BAA2B,2CAgF7B"}
1
+ {"version":3,"file":"VisualizationListItem.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/visualizationSwitcher/configuration/VisualizationsList/VisualizationListItem.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAA4B,MAAM,qBAAqB,CAAC;AA2BnG,UAAU,2BAA2B;IACjC,aAAa,EAAE,cAAc,CAAC;IAC9B,OAAO,EAAE,QAAQ,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,sBAAsB,EAAE,CAAC,qBAAqB,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,qBAAqB,EAAE,CAAC,qBAAqB,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,6BAA6B,EAAE,CAAC,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7F;AAED,wBAAgB,qBAAqB,CAAC,EAClC,aAAa,EACb,OAAO,EACP,QAAQ,EACR,MAAM,EACN,OAAO,EACP,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,GAChC,EAAE,2BAA2B,2CA8E7B"}