@sisense/sdk-ui 2.21.0 → 2.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/dist/ai.cjs +58 -58
  2. package/dist/ai.js +863 -846
  3. package/dist/analytics-composer/node.cjs +1 -1
  4. package/dist/analytics-composer/node.js +718 -709
  5. package/dist/analytics-composer.cjs +1 -1
  6. package/dist/analytics-composer.js +6 -6
  7. package/dist/{dimensions-DuUqQgpi.js → dimensions-BiLyFpCg.js} +1 -1
  8. package/dist/{dimensions-DVGn8ORR.cjs → dimensions-X4_igtmO.cjs} +1 -1
  9. package/dist/{execute-query-B21bnb05.js → execute-query-BEeqqDl6.js} +1483 -1490
  10. package/dist/execute-query-DJDE0zRU.cjs +1 -0
  11. package/dist/{index-0brX9D6q.cjs → index-NyouhE_A.cjs} +1 -1
  12. package/dist/{index-Ck90GjPy.js → index-kxX21arA.js} +15 -1
  13. package/dist/index.cjs +404 -404
  14. package/dist/index.js +22869 -21774
  15. package/dist/index.umd.js +644 -644
  16. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/index.d.ts +1 -1
  17. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/translate-dashboard-utils.d.ts +8 -1
  18. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/types.d.ts +9 -2
  19. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/index.d.ts +4 -0
  20. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/persist-dashboard-model-middleware.d.ts +13 -0
  21. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/{use-dashboard-model-reducer.d.ts → dashboard-model-reducer/types.d.ts} +19 -36
  22. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/use-dashboard-model-reducer.d.ts +9 -0
  23. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/dashboard-model-reducer/utils.d.ts +28 -0
  24. package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/use-dashboard-persistence.d.ts +4 -4
  25. package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/duplicate-widget-utils.d.ts +34 -0
  26. package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/index.d.ts +2 -0
  27. package/dist/packages/sdk-ui/src/domains/dashboarding/hooks/duplicate-widget/use-duplicate-widget-menu-item.d.ts +57 -0
  28. package/dist/packages/sdk-ui/src/domains/dashboarding/types.d.ts +43 -2
  29. package/dist/packages/sdk-ui/src/domains/dashboarding/use-composed-dashboard.d.ts +15 -3
  30. package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/cascading-filter-tile.d.ts +7 -0
  31. package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/cascading-level-filter.d.ts +4 -1
  32. package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/use-cascadding-filter-tile-menu-items/use-cascadding-filter-tile-lock-menu-item.d.ts +13 -0
  33. package/dist/packages/sdk-ui/src/domains/filters/components/cascading-filter-tile/use-cascadding-filter-tile-menu-items/use-cascadding-filter-tile-menu-items.d.ts +14 -0
  34. package/dist/packages/sdk-ui/src/domains/filters/components/criteria-filter-tile/criteria-filter-tile.d.ts +7 -0
  35. package/dist/packages/sdk-ui/src/domains/filters/components/custom-filter-tile.d.ts +7 -0
  36. package/dist/packages/sdk-ui/src/domains/filters/components/date-filter/date-range-filter-tile/date-range-filter-tile.d.ts +7 -0
  37. package/dist/packages/sdk-ui/src/domains/filters/components/date-filter/relative-date-filter-tile/relative-date-filter-tile.d.ts +7 -0
  38. package/dist/packages/sdk-ui/src/domains/filters/components/{filter-tile.d.ts → filter-tile/filter-tile.d.ts} +7 -0
  39. package/dist/packages/sdk-ui/src/domains/filters/components/filter-tile/index.d.ts +1 -0
  40. package/dist/packages/sdk-ui/src/domains/filters/components/filter-tile/types.d.ts +36 -0
  41. package/dist/packages/sdk-ui/src/domains/filters/components/filter-tile-container.d.ts +6 -0
  42. package/dist/packages/sdk-ui/src/domains/filters/components/filters-panel/types.d.ts +13 -0
  43. package/dist/packages/sdk-ui/src/domains/filters/components/index.d.ts +1 -1
  44. package/dist/packages/sdk-ui/src/domains/filters/components/member-filter-tile/member-filter-tile.d.ts +7 -0
  45. package/dist/packages/sdk-ui/src/domains/filters/components/unsupported-filter-tile.d.ts +10 -1
  46. package/dist/packages/sdk-ui/src/domains/filters/shared/clone-filter-and-toggle-locked.d.ts +7 -0
  47. package/dist/packages/sdk-ui/src/domains/filters/shared/filter-tile-menu-button.d.ts +10 -0
  48. package/dist/packages/sdk-ui/src/domains/filters/shared/use-filter-tile-menu-items/use-filter-tile-lock-menu-item.d.ts +15 -0
  49. package/dist/packages/sdk-ui/src/domains/filters/shared/use-filter-tile-menu-items/use-filter-tile-menu-items.d.ts +14 -0
  50. package/dist/packages/sdk-ui/src/domains/formulas/index.d.ts +0 -1
  51. package/dist/packages/sdk-ui/src/domains/formulas/use-get-shared-formula.d.ts +20 -7
  52. package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/index.d.ts +1 -0
  53. package/dist/packages/sdk-ui/src/domains/widgets/components/widget-by-id/translate-widget-style-options/to-widget-dto-style.d.ts +63 -0
  54. package/dist/packages/sdk-ui/src/domains/widgets/helpers/header-menu-utils.d.ts +1 -1
  55. package/dist/packages/sdk-ui/src/domains/widgets/helpers/index.d.ts +1 -1
  56. package/dist/packages/sdk-ui/src/domains/widgets/shared/widget-header/types.d.ts +1 -17
  57. package/dist/packages/sdk-ui/src/domains/widgets/shared/widget-header/widget-menu-button.d.ts +1 -1
  58. package/dist/packages/sdk-ui/src/infra/api/types/dashboard-dto.d.ts +2 -1
  59. package/dist/packages/sdk-ui/src/infra/app/client-application.d.ts +17 -0
  60. package/dist/packages/sdk-ui/src/infra/app/settings/settings.d.ts +3 -0
  61. package/dist/packages/sdk-ui/src/infra/app/settings/types/deployment-props.d.ts +1 -1
  62. package/dist/packages/sdk-ui/src/infra/app/settings/types/features.d.ts +18 -1
  63. package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/index.d.ts +5 -0
  64. package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/plugin-context.d.ts +15 -0
  65. package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/plugin-provider.d.ts +21 -0
  66. package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/types.d.ts +50 -0
  67. package/dist/packages/sdk-ui/src/infra/contexts/plugin-provider/validate-plugins.d.ts +9 -0
  68. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/de-de.d.ts +14 -0
  69. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/en-us.d.ts +14 -0
  70. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/es-ar.d.ts +14 -0
  71. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/es-es.d.ts +14 -0
  72. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/fr-fr.d.ts +14 -0
  73. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/it-it.d.ts +14 -0
  74. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ja-jp.d.ts +14 -0
  75. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ko-kr.d.ts +14 -0
  76. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/nl-nl.d.ts +14 -0
  77. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/pt-br.d.ts +14 -0
  78. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/ru-ru.d.ts +14 -0
  79. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/tr-tr.d.ts +14 -0
  80. package/dist/packages/sdk-ui/src/infra/translation/resources/__external__/zh-cn.d.ts +14 -0
  81. package/dist/packages/sdk-ui/src/infra/translation/resources/en.d.ts +14 -0
  82. package/dist/packages/sdk-ui/src/infra/translation/resources/index.d.ts +28 -0
  83. package/dist/packages/sdk-ui/src/modules/ai/api/chat-rest-api.d.ts +2 -1
  84. package/dist/packages/sdk-ui/src/modules/ai/api/narration-endpoints.d.ts +2 -1
  85. package/dist/packages/sdk-ui/src/modules/ai/get-nlg-insights-from-widget.d.ts +1 -0
  86. package/dist/packages/sdk-ui/src/props.d.ts +13 -20
  87. package/dist/packages/sdk-ui/src/public-api/internal.d.ts +1 -0
  88. package/dist/packages/sdk-ui/src/public-api/public.d.ts +2 -2
  89. package/dist/packages/sdk-ui/src/public-api/sisense-internal.d.ts +6 -0
  90. package/dist/packages/sdk-ui/src/shared/components/alert/alert.d.ts +91 -0
  91. package/dist/packages/sdk-ui/src/shared/components/alert/index.d.ts +2 -0
  92. package/dist/packages/sdk-ui/src/shared/components/menu/menu-button.d.ts +2 -1
  93. package/dist/packages/sdk-ui/src/shared/components/quota-notification/quota-notification.d.ts +32 -0
  94. package/dist/packages/sdk-ui/src/shared/hooks/use-app-settings.d.ts +11 -0
  95. package/dist/packages/sdk-ui/src/shared/hooks/use-quota-notification.d.ts +54 -0
  96. package/dist/packages/sdk-ui/src/shared/hooks/use-quota-warning-dismissed.d.ts +8 -0
  97. package/dist/packages/sdk-ui/src/shared/icons/warning-icon.d.ts +6 -0
  98. package/dist/packages/sdk-ui/src/shared/icons/x-circle-icon.d.ts +6 -0
  99. package/dist/packages/sdk-ui/src/shared/types/menu-item.d.ts +17 -0
  100. package/dist/{use-common-filters-DBqRT0et.js → quota-notification-D6oMJal8.js} +10460 -10234
  101. package/dist/{use-common-filters-CXJN3RSs.cjs → quota-notification-z3dv2KoH.cjs} +129 -129
  102. package/dist/translations/de-de.cjs +1 -1
  103. package/dist/translations/de-de.js +16 -2
  104. package/dist/translations/en-us.cjs +1 -1
  105. package/dist/translations/en-us.js +1 -1
  106. package/dist/translations/es-ar.cjs +1 -1
  107. package/dist/translations/es-ar.js +16 -2
  108. package/dist/translations/es-es.cjs +1 -1
  109. package/dist/translations/es-es.js +16 -2
  110. package/dist/translations/fr-fr.cjs +1 -1
  111. package/dist/translations/fr-fr.js +16 -2
  112. package/dist/translations/it-it.cjs +1 -1
  113. package/dist/translations/it-it.js +16 -2
  114. package/dist/translations/ja-jp.cjs +1 -1
  115. package/dist/translations/ja-jp.js +16 -2
  116. package/dist/translations/ko-kr.cjs +1 -1
  117. package/dist/translations/ko-kr.js +16 -2
  118. package/dist/translations/nl-nl.cjs +1 -1
  119. package/dist/translations/nl-nl.js +16 -2
  120. package/dist/translations/pt-br.cjs +1 -1
  121. package/dist/translations/pt-br.js +16 -2
  122. package/dist/translations/ru-ru.cjs +1 -1
  123. package/dist/translations/ru-ru.js +16 -2
  124. package/dist/translations/tr-tr.cjs +1 -1
  125. package/dist/translations/tr-tr.js +16 -2
  126. package/dist/translations/zh-cn.cjs +1 -1
  127. package/dist/translations/zh-cn.js +16 -2
  128. package/dist/{types-Ch9J6ycn.cjs → types-CoY6F8Ma.cjs} +1 -1
  129. package/dist/{types-Ockb-LJ0.js → types-ixSwJkxM.js} +1 -1
  130. package/dist/{utils-BXDqo_yg.js → utils-BP-BglHE.js} +4181 -4157
  131. package/dist/{utils-DH69_bUK.cjs → utils-C8YMrOdw.cjs} +36 -36
  132. package/dist/{widget-composer-DfVCQL2G.js → widget-composer-CUUFoCb9.js} +3 -3
  133. package/dist/{widget-composer-DgCWcMJ1.cjs → widget-composer-DI4sHaNe.cjs} +3 -3
  134. package/package.json +10 -9
  135. package/dist/execute-query-BIkhszY1.cjs +0 -1
  136. /package/dist/packages/sdk-ui/src/domains/dashboarding/dashboard-model/use-dashboard-model/{use-dasboard-model-utils.d.ts → use-dashboard-model-utils.d.ts} +0 -0
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -270,6 +270,12 @@ declare const _default: {
270
270
  unknownResponse: string;
271
271
  invalidInput: string;
272
272
  noAvailableDataTopics: string;
273
+ failedToFetchCreditBalance: string;
274
+ };
275
+ quota: {
276
+ exceededErrorTitle: string;
277
+ exceededErrorDescription: string;
278
+ warningDescription: string;
273
279
  };
274
280
  };
275
281
  attribute: {
@@ -389,6 +395,14 @@ declare const _default: {
389
395
  nextGroup: string;
390
396
  };
391
397
  };
398
+ filterTile: {
399
+ menu: {
400
+ lock: string;
401
+ unlock: string;
402
+ lockGroup: string;
403
+ unlockGroup: string;
404
+ };
405
+ };
392
406
  };
393
407
  }[];
394
408
  export default _default;
@@ -267,6 +267,12 @@ export declare const translation: {
267
267
  unknownResponse: string;
268
268
  invalidInput: string;
269
269
  noAvailableDataTopics: string;
270
+ failedToFetchCreditBalance: string;
271
+ };
272
+ quota: {
273
+ exceededErrorTitle: string;
274
+ exceededErrorDescription: string;
275
+ warningDescription: string;
270
276
  };
271
277
  };
272
278
  attribute: {
@@ -386,6 +392,14 @@ export declare const translation: {
386
392
  nextGroup: string;
387
393
  };
388
394
  };
395
+ filterTile: {
396
+ menu: {
397
+ lock: string;
398
+ unlock: string;
399
+ lockGroup: string;
400
+ unlockGroup: string;
401
+ };
402
+ };
389
403
  };
390
404
  /**
391
405
  * A reference type containing all currently used translation keys.
@@ -277,6 +277,12 @@ export declare const resources: {
277
277
  unknownResponse: string;
278
278
  invalidInput: string;
279
279
  noAvailableDataTopics: string;
280
+ failedToFetchCreditBalance: string;
281
+ };
282
+ quota: {
283
+ exceededErrorTitle: string;
284
+ exceededErrorDescription: string;
285
+ warningDescription: string;
280
286
  };
281
287
  };
282
288
  attribute: {
@@ -396,6 +402,14 @@ export declare const resources: {
396
402
  nextGroup: string;
397
403
  };
398
404
  };
405
+ filterTile: {
406
+ menu: {
407
+ lock: string;
408
+ unlock: string;
409
+ lockGroup: string;
410
+ unlockGroup: string;
411
+ };
412
+ };
399
413
  };
400
414
  'en-US': {
401
415
  errors: {
@@ -666,6 +680,12 @@ export declare const resources: {
666
680
  unknownResponse: string;
667
681
  invalidInput: string;
668
682
  noAvailableDataTopics: string;
683
+ failedToFetchCreditBalance: string;
684
+ };
685
+ quota: {
686
+ exceededErrorTitle: string;
687
+ exceededErrorDescription: string;
688
+ warningDescription: string;
669
689
  };
670
690
  };
671
691
  attribute: {
@@ -785,5 +805,13 @@ export declare const resources: {
785
805
  nextGroup: string;
786
806
  };
787
807
  };
808
+ filterTile: {
809
+ menu: {
810
+ lock: string;
811
+ unlock: string;
812
+ lockGroup: string;
813
+ unlockGroup: string;
814
+ };
815
+ };
788
816
  };
789
817
  };
@@ -6,7 +6,8 @@ export declare class ChatRestApi {
6
6
  private readonly volatile;
7
7
  private httpClient;
8
8
  private readonly isUnifiedNarrationEnabled;
9
- constructor(httpClient: HttpClient, volatile?: boolean, isUnifiedNarrationEnabled?: boolean);
9
+ private readonly isSisenseAiEnabled;
10
+ constructor(httpClient: HttpClient, volatile?: boolean, isUnifiedNarrationEnabled?: boolean, isSisenseAiEnabled?: boolean);
10
11
  getChatContexts: () => Promise<ChatContext[]>;
11
12
  private getNlgInsights;
12
13
  private getQueryRecommendations;
@@ -1,7 +1,7 @@
1
1
  import type { HttpClient } from '@sisense/sdk-rest-client';
2
2
  import type { GetNlgInsightsRequest, GetNlgInsightsResponse } from './types.js';
3
3
  /** Unified narrative endpoint. Try first; fall back to legacy on 404. */
4
- export declare const UNIFIED_NARRATION_ENDPOINT = "api/v2/ai/widget/narrative";
4
+ export declare const UNIFIED_NARRATION_ENDPOINT = "api/v2/ai/narrative";
5
5
  /** Legacy endpoint (used when unified narrative returns 404). */
6
6
  export declare const LEGACY_NARRATION_ENDPOINT = "api/v2/ai/nlg/queryResult";
7
7
  /**
@@ -10,6 +10,7 @@ export declare const LEGACY_NARRATION_ENDPOINT = "api/v2/ai/nlg/queryResult";
10
10
  */
11
11
  export type GetNarrationsOptions = {
12
12
  isUnifiedNarrationEnabled?: boolean;
13
+ isSisenseAiEnabled?: boolean;
13
14
  };
14
15
  /**
15
16
  * Fetches narrations. Single place for endpoint logic: isUnifiedNarrationEnabled === false → legacy only;
@@ -12,6 +12,7 @@ export interface GetNlgInsightsFromWidgetOptions {
12
12
  verbosity?: 'Low' | 'High';
13
13
  /** When false, legacy narration endpoint only; when true or undefined, try unified then fallback. From props.isUnifiedNarrationEnabled. */
14
14
  isUnifiedNarrationEnabled?: boolean;
15
+ isSisenseAiEnabled?: boolean;
15
16
  }
16
17
  /**
17
18
  * Pure function that fetches NLG insights from WidgetProps.
@@ -9,7 +9,7 @@ import { HighchartsOptions } from './domains/visualizations/core/chart-options-p
9
9
  import type { ChartWidgetProps } from './domains/widgets/components/chart-widget/types';
10
10
  import { FiltersMergeStrategy } from './domains/widgets/components/widget-by-id/types';
11
11
  import { AppConfig } from './infra/app/client-application';
12
- import { HookEnableParam } from './shared/hooks/types';
12
+ import type { Plugin } from './infra/contexts/plugin-provider/types';
13
13
  import { AreamapDataPoint, AreamapStyleOptions, AreaRangeStyleOptions, AreaStyleOptions, BoxplotDataPoint, BoxplotStyleOptions, CalendarHeatmapDataPoint, CalendarHeatmapStyleOptions, CartesianChartDataOptions, CategoricalChartDataOptions, ChartDataOptions, ChartDataPoints, ChartStyleOptions, ChartType, CustomDrilldownResult, DataPoint, DrilldownOptions, DrilldownSelection, FunnelStyleOptions, IndicatorDataPoint, IndicatorRenderOptions, IndicatorStyleOptions, LineStyleOptions, MenuAlignment, MenuItemSection, MenuPosition, PieStyleOptions, PivotTableDataPoint, PivotTableDrilldownOptions, PivotTableStyleOptions, PolarStyleOptions, RegularChartStyleOptions, RegularChartType, ScatterDataPoint, ScattermapDataPoint, ScattermapStyleOptions, ScatterStyleOptions, StackableStyleOptions, StreamgraphStyleOptions, SunburstStyleOptions, TableStyleOptions, TabularChartStyleOptions, TextWidgetDataPoint, ThemeConfig, ThemeOid, ThemeSettings, TreemapStyleOptions, WidgetByIdStyleOptions } from './types';
14
14
  export type { TabberButtonsWidgetProps } from './domains/widgets/components/tabber-buttons-widget/types';
15
15
  export type { WidgetProps, WidgetType, WithCommonWidgetProps, } from './domains/widgets/components/widget/types';
@@ -137,6 +137,18 @@ export interface SisenseContextProviderProps {
137
137
  * @internal
138
138
  */
139
139
  disableFusionPalette?: boolean;
140
+ /**
141
+ * Array of plugins to register.
142
+ *
143
+ * Plugins should satisfy the following conditions:
144
+ * - Name uniqueness (duplicates are skipped with a warning)
145
+ * - Version compatibility with the current SDK version
146
+ *
147
+ * @category Sisense App
148
+ *
149
+ * @internal
150
+ */
151
+ plugins?: Plugin[];
140
152
  }
141
153
  /**
142
154
  * Props for {@link ExecuteQuery} component.
@@ -1377,25 +1389,6 @@ export interface DrilldownWidgetProps {
1377
1389
  */
1378
1390
  children: (customDrilldownResult: CustomDrilldownResult) => ReactNode;
1379
1391
  }
1380
- /**
1381
- * Params of the {@link useGetSharedFormula} hook
1382
- *
1383
- * Can consist either of an oid or a name/dataSource pair
1384
- */
1385
- export interface UseGetSharedFormulaParams extends HookEnableParam {
1386
- /**
1387
- * Formula identifier
1388
- */
1389
- oid?: string;
1390
- /**
1391
- * Formula name
1392
- */
1393
- name?: string;
1394
- /**
1395
- * Data source - e.g. `Sample ECommerce`
1396
- */
1397
- dataSource?: DataSource;
1398
- }
1399
1392
  /**
1400
1393
  * Props of the {@link CalendarHeatmapChart} component.
1401
1394
  */
@@ -19,6 +19,7 @@ export { processDrilldownSelections } from '../domains/drilldown/hooks/use-drill
19
19
  export { CommonWidget, type CommonWidgetProps } from '../domains/widgets/components/common-widget';
20
20
  export { TableWidget, type TableWidgetProps } from '../domains/widgets/components/table-widget';
21
21
  export * from '../infra/contexts/custom-widgets-provider/custom-widgets-provider-adapter';
22
+ export { useGetSharedFormulaInternal } from '../domains/formulas/use-get-shared-formula';
22
23
  export { translateColumnToAttribute } from '../domains/visualizations/core/chart-data-options/utils';
23
24
  export { isSameAttribute } from '../shared/utils/filters';
24
25
  export { isChartWidgetProps, isPivotTableWidgetProps, isTextWidgetProps, isCustomWidgetProps, } from '../domains/widgets/components/widget-by-id/utils';
@@ -50,11 +50,11 @@ export { TabberButtonsWidget } from '../domains/widgets/components/tabber-button
50
50
  export { DrilldownBreadcrumbs } from '../domains/drilldown/components/drilldown-breadcrumbs';
51
51
  export * from '../infra/contexts/custom-widgets-provider/types';
52
52
  export { useCustomWidgets } from '../infra/contexts/custom-widgets-provider';
53
- export { useGetDashboardModel, useGetDashboardModels, useDashboardModel, type DashboardModel, type GetDashboardModelParams, type GetDashboardModelsParams, type DashboardModelState, type DashboardModelLoadingState, type DashboardModelSuccessState, type DashboardModelErrorState, type DashboardModelsState, type DashboardModelsLoadingState, type DashboardModelsSuccessState, type DashboardModelsErrorState, type GetDashboardModelOptions, type GetDashboardModelsOptions, type WidgetsPanelColumnLayout, type WidgetsPanelLayout, type WidgetsPanelColumn, type WidgetsPanelRow, type WidgetsPanelCell, type WidgetId, type DashboardId, type WidgetsOptions, type CommonFiltersOptions, type CommonFiltersApplyMode, type FiltersIgnoringRules, UseDashboardModelActionType, } from '../domains/dashboarding/dashboard-model';
53
+ export { useGetDashboardModel, useGetDashboardModels, useDashboardModel, type DashboardModel, type GetDashboardModelParams, type GetDashboardModelsParams, type DashboardModelState, type DashboardModelLoadingState, type DashboardModelSuccessState, type DashboardModelErrorState, type DashboardModelsState, type DashboardModelsLoadingState, type DashboardModelsSuccessState, type DashboardModelsErrorState, type GetDashboardModelOptions, type GetDashboardModelsOptions, type WidgetsPanelColumnLayout, type WidgetsPanelLayout, type WidgetsPanelColumn, type WidgetsPanelRow, type WidgetsPanelCell, type WidgetId, type DashboardId, type WidgetsOptions, type SpecificWidgetOptions, type CommonFiltersOptions, type CommonFiltersApplyMode, type FiltersIgnoringRules, UseDashboardModelActionType, } from '../domains/dashboarding/dashboard-model';
54
54
  export { useGetWidgetModel, type WidgetModel, type WidgetDataOptions, type WidgetModelState, type WidgetModelLoadingState, type WidgetModelErrorState, type WidgetModelSuccessState, type GetWidgetModelParams, } from '../domains/widgets/widget-model';
55
55
  export { useGetHierarchyModels, type HierarchyModel, type Hierarchy, type HierarchyId, type GetHierarchyModelsParams, type HierarchyModelsState, type HierarchyModelsLoadingState, type HierarchyModelsErrorState, type HierarchyModelsSuccessState, } from '../domains/drilldown/hierarchy-model';
56
56
  export * from '../domains/filters';
57
- export * from '../domains/formulas';
57
+ export { useGetSharedFormula, type GetSharedFormulaParams, type UseGetSharedFormulaParams, type SharedFormulaState, type SharedFormulaLoadingState, type SharedFormulaErrorState, type SharedFormulaSuccessState, } from '../domains/formulas';
58
58
  export { DataSchemaBrowser } from '../domains/data-browser/data-schema-browser/data-schema-browser';
59
59
  export { useGetDataSourceDimensions, useGetDataSourceFields, type GetDataSourceDimensionsParams, type DataSourceDimensionsState, type DataSourceDimensionsLoadingState, type DataSourceDimensionsErrorState, type DataSourceDimensionsSuccessState, } from '../domains/data-browser/data-source-dimensional-model';
60
60
  export { ThemeProvider } from '../infra/contexts/theme-provider';
@@ -13,3 +13,9 @@ export { trackHook } from '../infra/decorators/hook-decorators';
13
13
  export { useThemeContext } from '../infra/contexts/theme-provider';
14
14
  export { type DashboardDto } from '../infra/api/types/dashboard-dto';
15
15
  export { type WidgetDto } from '../domains/widgets/components/widget-by-id/types';
16
+ export { useAppSettings } from '../shared/hooks/use-app-settings';
17
+ export type { AppSettings } from '../infra/app/settings/settings';
18
+ export { QuotaNotification } from '../shared/components/quota-notification/quota-notification.js';
19
+ export type { QuotaNotificationProps } from '../shared/components/quota-notification/quota-notification.js';
20
+ export { useQuotaNotification } from '../shared/hooks/use-quota-notification.js';
21
+ export type { QuotaNotificationOptions, QuotaApiResponse, QuotaState, } from '../shared/hooks/use-quota-notification.js';
@@ -0,0 +1,91 @@
1
+ import { ReactNode } from 'react';
2
+ /**
3
+ * Props for Alert component
4
+ */
5
+ export interface AlertProps {
6
+ /**
7
+ * Variant of the alert
8
+ */
9
+ variant?: 'error' | 'warning' | 'info';
10
+ /**
11
+ * Title text displayed in the alert
12
+ */
13
+ title?: string;
14
+ /**
15
+ * Description text displayed in the alert
16
+ */
17
+ description?: string;
18
+ /**
19
+ * Custom icon to display. If not provided, AlertIcon is used
20
+ */
21
+ icon?: ReactNode;
22
+ /**
23
+ * Whether the alert can be dismissed
24
+ */
25
+ dismissible?: boolean;
26
+ /**
27
+ * Callback when alert is dismissed
28
+ */
29
+ onDismiss?: () => void;
30
+ /**
31
+ * When true and dismissible, clicking anywhere on the alert (not just the close button)
32
+ * triggers onDismiss. Useful for banner-style alerts.
33
+ *
34
+ * @default false
35
+ */
36
+ dismissOnClick?: boolean;
37
+ /**
38
+ * Additional CSS class name
39
+ */
40
+ className?: string;
41
+ }
42
+ /**
43
+ * Alert component for displaying warnings, errors, and informational messages
44
+ *
45
+ * @param props - Alert component props
46
+ * @returns Alert component
47
+ * @internal
48
+ */
49
+ export declare const Alert: ({ variant, title, description, icon, dismissible, onDismiss, dismissOnClick, className, }: AlertProps) => import("react/jsx-runtime").JSX.Element;
50
+ /**
51
+ * Props for AlertTitle component
52
+ */
53
+ export interface AlertTitleProps {
54
+ /**
55
+ * Content of the title
56
+ */
57
+ children: ReactNode;
58
+ /**
59
+ * Additional CSS class name
60
+ */
61
+ className?: string;
62
+ }
63
+ /**
64
+ * Alert title subcomponent
65
+ *
66
+ * @param props - AlertTitle props
67
+ * @returns AlertTitle component
68
+ * @internal
69
+ */
70
+ export declare const AlertTitle: ({ children, className }: AlertTitleProps) => import("react/jsx-runtime").JSX.Element;
71
+ /**
72
+ * Props for AlertDescription component
73
+ */
74
+ export interface AlertDescriptionProps {
75
+ /**
76
+ * Content of the description
77
+ */
78
+ children: ReactNode;
79
+ /**
80
+ * Additional CSS class name
81
+ */
82
+ className?: string;
83
+ }
84
+ /**
85
+ * Alert description subcomponent
86
+ *
87
+ * @param props - AlertDescription props
88
+ * @returns AlertDescription component
89
+ * @internal
90
+ */
91
+ export declare const AlertDescription: ({ children, className }: AlertDescriptionProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { Alert, AlertTitle, AlertDescription } from './alert';
2
+ export type { AlertProps, AlertTitleProps, AlertDescriptionProps } from './alert';
@@ -3,6 +3,7 @@ type MenuButtonProps = {
3
3
  color?: string;
4
4
  onClick?: MouseEventHandler<HTMLButtonElement>;
5
5
  ariaLabel?: string;
6
+ size?: number;
6
7
  };
7
- export declare const MenuButton: ({ color, onClick, ariaLabel, ...restProps }: MenuButtonProps) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const MenuButton: ({ color, onClick, ariaLabel, size, ...restProps }: MenuButtonProps) => import("react/jsx-runtime").JSX.Element;
8
9
  export {};
@@ -0,0 +1,32 @@
1
+ import { type QuotaNotificationOptions } from '../../hooks/use-quota-notification.js';
2
+ /**
3
+ * Props for QuotaNotification component
4
+ *
5
+ * @internal
6
+ */
7
+ export interface QuotaNotificationProps extends QuotaNotificationOptions {
8
+ /**
9
+ * Additional CSS class name
10
+ */
11
+ className?: string;
12
+ /**
13
+ * Whether the warning banner has been dismissed (controlled from parent)
14
+ */
15
+ warningDismissed?: boolean;
16
+ /**
17
+ * Callback when warning is dismissed (for controlled usage)
18
+ */
19
+ onDismissWarning?: () => void;
20
+ }
21
+ /**
22
+ * Component that displays credit balance warnings/errors
23
+ *
24
+ * Shows an error banner when credit is exceeded (not dismissible).
25
+ * Shows a warning banner when credit usage >= warningThreshold (dismissible).
26
+ * Automatically updates via polling every 60 seconds.
27
+ *
28
+ * @param props - QuotaNotification props
29
+ * @returns QuotaNotification component or null
30
+ * @internal
31
+ */
32
+ export declare function QuotaNotification({ className, warningDismissed: controlledWarningDismissed, onDismissWarning, enabled, warningThreshold, exceededThreshold, }?: QuotaNotificationProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,11 @@
1
+ import type { AppSettings } from '../../infra/app/settings/settings';
2
+ /**
3
+ * Hook that returns the full application settings from SisenseContext.
4
+ *
5
+ * Use this to access app settings (language, user role, LLM quota settings, etc.)
6
+ * when customizing components wrapped inside SisenseContextProvider.
7
+ *
8
+ * @returns AppSettings when app is initialized, undefined otherwise
9
+ * @internal
10
+ */
11
+ export declare const useAppSettings: () => AppSettings | undefined;
@@ -0,0 +1,54 @@
1
+ export declare const DEFAULT_WARNING_THRESHOLD = 85;
2
+ export declare const DEFAULT_EXCEEDED_THRESHOLD = 100;
3
+ /**
4
+ * Response from the quota/credit balance API
5
+ *
6
+ * @internal
7
+ */
8
+ export interface QuotaApiResponse {
9
+ balance: number;
10
+ initialBalance: number;
11
+ sequenceNumber: string;
12
+ date: string;
13
+ }
14
+ /**
15
+ * Calculated quota state from API response
16
+ *
17
+ * @internal
18
+ */
19
+ export interface QuotaState {
20
+ initialBalance: number;
21
+ currentBalance: number;
22
+ usagePercentage: number;
23
+ isWarning: boolean;
24
+ isExceeded: boolean;
25
+ }
26
+ /**
27
+ * Options for useQuotaNotification
28
+ *
29
+ * @internal
30
+ */
31
+ export interface QuotaNotificationOptions {
32
+ /** Whether to fetch. When false, skips API calls and polling. Defaults to feature-flag value. */
33
+ enabled?: boolean;
34
+ /** Warning threshold percentage. Defaults to 85. */
35
+ warningThreshold?: number;
36
+ /** Exceeded threshold percentage. Defaults to 100. */
37
+ exceededThreshold?: number;
38
+ }
39
+ /**
40
+ * Hook that fetches and calculates quota notification state with automatic polling.
41
+ * Respects aiAssistant feature flags (quotaNotification + featureModelType) when enabled is not passed.
42
+ *
43
+ * Polls every 60 seconds to keep quota state up-to-date.
44
+ *
45
+ * @param options - Quota notification options. When enabled is false, skips fetching and polling.
46
+ * @returns Quota state, enabled flag, loading status, and error
47
+ * @internal
48
+ */
49
+ export declare const useQuotaNotification: (options?: QuotaNotificationOptions) => {
50
+ enabled: boolean;
51
+ quotaState: QuotaState | null;
52
+ isLoading: boolean;
53
+ error: unknown;
54
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Hook that manages quota warning dismissed state with sessionStorage persistence.
3
+ * State survives navigation within the same tab but resets when the tab is closed.
4
+ *
5
+ * @returns Tuple of [dismissed, setDismissed]
6
+ * @internal
7
+ */
8
+ export declare function useQuotaWarningDismissed(): [boolean, (dismissed: boolean) => void];
@@ -0,0 +1,6 @@
1
+ import { SVGProps } from 'react';
2
+ /**
3
+ * Quota warning icon - circle with exclamation mark, used for quota warning banner
4
+ * From Figma design; fill #FFCB05
5
+ */
6
+ export declare const WarningIcon: (props: SVGProps<SVGSVGElement>) => import("react/jsx-runtime").JSX.Element;