@gooddata/sdk-ui-kit 11.8.0-alpha.4 → 11.8.0-alpha.5

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 (86) hide show
  1. package/esm/@ui/UiIconButton/UiIconButtonRenderer.d.ts +1 -0
  2. package/esm/@ui/UiIconButton/UiIconButtonRenderer.d.ts.map +1 -1
  3. package/esm/@ui/UiIconButton/UiIconButtonRenderer.js +2 -2
  4. package/esm/@ui/UiIconButton/UiIconButtonRenderer.js.map +1 -1
  5. package/esm/@ui/UiMenu/components/Item.d.ts.map +1 -1
  6. package/esm/@ui/UiMenu/components/Item.js +6 -7
  7. package/esm/@ui/UiMenu/components/Item.js.map +1 -1
  8. package/esm/@ui/UiMenu/components/defaults/DefaultUiMenuStaticItem.js +4 -4
  9. package/esm/@ui/UiMenu/components/defaults/DefaultUiMenuStaticItem.js.map +1 -1
  10. package/esm/@ui/UiTabs/UiTabs.d.ts +3 -37
  11. package/esm/@ui/UiTabs/UiTabs.d.ts.map +1 -1
  12. package/esm/@ui/UiTabs/UiTabs.js +8 -122
  13. package/esm/@ui/UiTabs/UiTabs.js.map +1 -1
  14. package/esm/@ui/UiTabs/bem.d.ts +5 -0
  15. package/esm/@ui/UiTabs/bem.d.ts.map +1 -0
  16. package/esm/@ui/UiTabs/bem.js +4 -0
  17. package/esm/@ui/UiTabs/bem.js.map +1 -0
  18. package/esm/@ui/UiTabs/context.d.ts +8 -0
  19. package/esm/@ui/UiTabs/context.d.ts.map +1 -0
  20. package/esm/@ui/UiTabs/context.js +10 -0
  21. package/esm/@ui/UiTabs/context.js.map +1 -0
  22. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabs.d.ts +7 -0
  23. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabs.d.ts.map +1 -0
  24. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabs.js +71 -0
  25. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabs.js.map +1 -0
  26. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabsButton.d.ts +7 -0
  27. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabsButton.d.ts.map +1 -0
  28. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabsButton.js +15 -0
  29. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabsButton.js.map +1 -0
  30. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsContainer.d.ts +7 -0
  31. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsContainer.d.ts.map +1 -0
  32. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsContainer.js +45 -0
  33. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsContainer.js.map +1 -0
  34. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTab.d.ts +7 -0
  35. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTab.d.ts.map +1 -0
  36. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTab.js +23 -0
  37. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTab.js.map +1 -0
  38. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActions.d.ts +7 -0
  39. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActions.d.ts.map +1 -0
  40. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActions.js +49 -0
  41. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActions.js.map +1 -0
  42. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActionsButton.d.ts +7 -0
  43. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActionsButton.d.ts.map +1 -0
  44. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActionsButton.js +21 -0
  45. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabActionsButton.js.map +1 -0
  46. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabValue.d.ts +7 -0
  47. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabValue.d.ts.map +1 -0
  48. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabValue.js +13 -0
  49. package/esm/@ui/UiTabs/defaultComponents/DefaultUiTabsTabValue.js.map +1 -0
  50. package/esm/@ui/UiTabs/defaultComponents/index.d.ts +8 -0
  51. package/esm/@ui/UiTabs/defaultComponents/index.d.ts.map +1 -0
  52. package/esm/@ui/UiTabs/defaultComponents/index.js +9 -0
  53. package/esm/@ui/UiTabs/defaultComponents/index.js.map +1 -0
  54. package/esm/@ui/UiTabs/messages.d.ts.map +1 -1
  55. package/esm/@ui/UiTabs/messages.js +1 -0
  56. package/esm/@ui/UiTabs/messages.js.map +1 -1
  57. package/esm/@ui/UiTabs/types.d.ts +114 -0
  58. package/esm/@ui/UiTabs/types.d.ts.map +1 -0
  59. package/esm/@ui/UiTabs/types.js +3 -0
  60. package/esm/@ui/UiTabs/types.js.map +1 -0
  61. package/esm/@ui/UiTabs/useUiTabsContextStoreValue.d.ts +7 -0
  62. package/esm/@ui/UiTabs/useUiTabsContextStoreValue.d.ts.map +1 -0
  63. package/esm/@ui/UiTabs/useUiTabsContextStoreValue.js +82 -0
  64. package/esm/@ui/UiTabs/useUiTabsContextStoreValue.js.map +1 -0
  65. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.d.ts +1 -0
  66. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.d.ts.map +1 -1
  67. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.js +1 -0
  68. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.js.map +1 -1
  69. package/esm/Dropdown/DropdownButtonKeyboardWrapper.d.ts.map +1 -1
  70. package/esm/Dropdown/DropdownButtonKeyboardWrapper.js +4 -0
  71. package/esm/Dropdown/DropdownButtonKeyboardWrapper.js.map +1 -1
  72. package/esm/Messages/toasts/ToastsCenter.js +5 -5
  73. package/esm/Messages/toasts/ToastsCenter.js.map +1 -1
  74. package/esm/Messages/toasts/useToastMessage.js +5 -5
  75. package/esm/Messages/toasts/useToastMessage.js.map +1 -1
  76. package/esm/index.d.ts +4 -1
  77. package/esm/index.d.ts.map +1 -1
  78. package/esm/index.js +3 -0
  79. package/esm/index.js.map +1 -1
  80. package/esm/sdk-ui-kit.d.ts +166 -37
  81. package/package.json +9 -9
  82. package/src/@ui/UiCard/UiCard.scss +2 -0
  83. package/src/@ui/UiDrawer/UiDrawer.scss +1 -1
  84. package/src/@ui/UiTabs/UiTabs.scss +89 -31
  85. package/styles/css/main.css +72 -20
  86. package/styles/css/main.css.map +1 -1
@@ -20,6 +20,7 @@ export interface UiIconButtonPublicProps {
20
20
  ariaAttributes?: IDropdownButtonRenderProps["ariaAttributes"];
21
21
  accessibilityConfig?: IDropdownButtonRenderProps["accessibilityConfig"];
22
22
  tabIndex?: number;
23
+ id?: string;
23
24
  }
24
25
  export interface UiIconButtonInternalProps {
25
26
  iconAfter?: IconType;
@@ -1 +1 @@
1
- {"version":3,"file":"UiIconButtonRenderer.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiIconButton/UiIconButtonRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAc,MAAM,OAAO,CAAC;AAI9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EACH,WAAW,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAClB,MAAM,sBAAsB,CAAC;AAK9B;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;IAElF,OAAO,CAAC,EACF,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,aAAa,GACb,YAAY,GACZ,WAAW,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACrD,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAC9D,mBAAmB,CAAC,EAAE,0BAA0B,CAAC,qBAAqB,CAAC,CAAC;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACtC,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,aAAa,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;CACnE;AAED,MAAM,MAAM,yBAAyB,GAAG,uBAAuB,GAAG,yBAAyB,CAAC;AAI5F,eAAO,MAAM,oBAAoB,mJAkDhC,CAAC"}
1
+ {"version":3,"file":"UiIconButtonRenderer.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiIconButton/UiIconButtonRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAc,MAAM,OAAO,CAAC;AAI9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EACH,WAAW,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAClB,MAAM,sBAAsB,CAAC;AAK9B;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;IAElF,OAAO,CAAC,EACF,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,aAAa,GACb,YAAY,GACZ,WAAW,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACrD,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAC9D,mBAAmB,CAAC,EAAE,0BAA0B,CAAC,qBAAqB,CAAC,CAAC;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,yBAAyB;IACtC,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,aAAa,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;CACnE;AAED,MAAM,MAAM,yBAAyB,GAAG,uBAAuB,GAAG,yBAAyB,CAAC;AAI5F,eAAO,MAAM,oBAAoB,mJAoDhC,CAAC"}
@@ -7,7 +7,7 @@ import { bem } from "../@utils/bem.js";
7
7
  import { getButtonIconSize } from "../@utils/size.js";
8
8
  import { UiIcon } from "../UiIcon/UiIcon.js";
9
9
  const { b } = bem("gd-ui-kit-icon-button");
10
- export const UiIconButtonRenderer = forwardRef(({ icon, iconAfter, iconAfterSize = "xsmall", label, size = "medium", variant = "secondary", isDisabled, isActive, onClick, dataId, dataTestId, onKeyDown, ariaAttributes, accessibilityConfig, tabIndex, }, ref) => {
10
+ export const UiIconButtonRenderer = forwardRef(({ icon, iconAfter, iconAfterSize = "xsmall", label, size = "medium", variant = "secondary", isDisabled, isActive, onClick, dataId, dataTestId, onKeyDown, ariaAttributes, accessibilityConfig, tabIndex, id, }, ref) => {
11
11
  const iconSize = getButtonIconSize(size);
12
12
  const testId = dataTestId || `${stringUtils.simplifyText(label)}`;
13
13
  return (_jsxs("button", { ref: ref, className: b({
@@ -15,7 +15,7 @@ export const UiIconButtonRenderer = forwardRef(({ icon, iconAfter, iconAfterSize
15
15
  size,
16
16
  variant,
17
17
  active: isActive,
18
- }), disabled: isDisabled, onClick: onClick, onKeyDown: onKeyDown, "data-id": dataId, "data-testid": testId, "aria-disabled": isDisabled, "aria-label": label, tabIndex: tabIndex, ...ariaAttributes, ...accessibilityConfigToAttributes(accessibilityConfig), children: [_jsx(UiIcon, { type: icon, size: iconSize, ariaHidden: true }), iconAfter ? (_jsx(UiIcon, { type: iconAfter, size: getButtonIconSize(iconAfterSize), ariaHidden: true })) : null] }));
18
+ }), id: id, disabled: isDisabled, onClick: onClick, onKeyDown: onKeyDown, "data-id": dataId, "data-testid": testId, "aria-disabled": isDisabled, "aria-label": label, tabIndex: tabIndex, ...accessibilityConfigToAttributes(accessibilityConfig), ...ariaAttributes, children: [_jsx(UiIcon, { type: icon, size: iconSize, ariaHidden: true }), iconAfter ? (_jsx(UiIcon, { type: iconAfter, size: getButtonIconSize(iconAfterSize), ariaHidden: true })) : null] }));
19
19
  });
20
20
  UiIconButtonRenderer.displayName = "UiIconButtonRenderer";
21
21
  //# sourceMappingURL=UiIconButtonRenderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiIconButtonRenderer.js","sourceRoot":"","sources":["../../../src/@ui/UiIconButton/UiIconButtonRenderer.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAA6B,UAAU,EAAE,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAY7E,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAqC7C,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAC1C,CACI,EACI,IAAI,EACJ,SAAS,EACT,aAAa,GAAG,QAAQ,EACxB,KAAK,EACL,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,WAAW,EACrB,UAAU,EACV,QAAQ,EACR,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,QAAQ,GACX,EACD,GAAG,EACL,EAAE;IACA,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,UAAU,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IAClE,OAAO,CACH,kBACI,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,CAAC,CAAC;YACT,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ;YAC7C,IAAI;YACJ,OAAO;YACP,MAAM,EAAE,QAAQ;SACnB,CAAC,EACF,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,aACX,MAAM,iBACF,MAAM,mBACJ,UAAU,gBACb,KAAK,EACjB,QAAQ,EAAE,QAAQ,KACd,cAAc,KACd,+BAA+B,CAAC,mBAAmB,CAAC,aAExD,KAAC,MAAM,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,SAAG,EAChD,SAAS,CAAC,CAAC,CAAC,CACT,KAAC,MAAM,IAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,CAAC,aAAa,CAAC,EAAE,UAAU,SAAG,CACjF,CAAC,CAAC,CAAC,IAAI,IACH,CACZ,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,oBAAoB,CAAC,WAAW,GAAG,sBAAsB,CAAC"}
1
+ {"version":3,"file":"UiIconButtonRenderer.js","sourceRoot":"","sources":["../../../src/@ui/UiIconButton/UiIconButtonRenderer.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAA6B,UAAU,EAAE,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAY7E,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAsC7C,MAAM,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAC1C,CACI,EACI,IAAI,EACJ,SAAS,EACT,aAAa,GAAG,QAAQ,EACxB,KAAK,EACL,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,WAAW,EACrB,UAAU,EACV,QAAQ,EACR,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,QAAQ,EACR,EAAE,GACL,EACD,GAAG,EACL,EAAE;IACA,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,UAAU,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IAClE,OAAO,CACH,kBACI,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,CAAC,CAAC;YACT,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ;YAC7C,IAAI;YACJ,OAAO;YACP,MAAM,EAAE,QAAQ;SACnB,CAAC,EACF,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,aACX,MAAM,iBACF,MAAM,mBACJ,UAAU,gBACb,KAAK,EACjB,QAAQ,EAAE,QAAQ,KACd,+BAA+B,CAAC,mBAAmB,CAAC,KACpD,cAAc,aAElB,KAAC,MAAM,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,SAAG,EAChD,SAAS,CAAC,CAAC,CAAC,CACT,KAAC,MAAM,IAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,CAAC,aAAa,CAAC,EAAE,UAAU,SAAG,CACjF,CAAC,CAAC,CAAC,IAAI,IACH,CACZ,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,oBAAoB,CAAC,WAAW,GAAG,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../src/@ui/UiMenu/components/Item.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEhE,eAAO,MAAM,IAAI,wCAAsB,CAAC,SAAS,eAAe,qBAAqB,gBAAgB,CAAC,CAAC,CAAC,8CAuBtG,CAAC"}
1
+ {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../src/@ui/UiMenu/components/Item.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEhE,eAAO,MAAM,IAAI,wCAAsB,CAAC,SAAS,eAAe,qBAAqB,gBAAgB,CAAC,CAAC,CAAC,8CAsBtG,CAAC"}
@@ -3,13 +3,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { memo } from "react";
4
4
  import { typedUiMenuContextStore } from "../context.js";
5
5
  export const Item = memo(function Item({ item }) {
6
- const { InteractiveItemWrapper, StaticItem, GroupItem, ContentItemWrapper } = typedUiMenuContextStore().useContextStore((ctx) => ({
7
- InteractiveItemWrapper: ctx.InteractiveItemWrapper,
8
- StaticItem: ctx.StaticItem,
9
- GroupItem: ctx.GroupItem,
10
- ContentItem: ctx.ContentItem,
11
- ContentItemWrapper: ctx.ContentItemWrapper,
12
- }));
6
+ const { InteractiveItemWrapper, StaticItem, GroupItem, ContentItemWrapper } = typedUiMenuContextStore().useContextStoreValues([
7
+ "InteractiveItemWrapper",
8
+ "StaticItem",
9
+ "GroupItem",
10
+ "ContentItemWrapper",
11
+ ]);
13
12
  if (item.type === "interactive") {
14
13
  return _jsx(InteractiveItemWrapper, { item: item });
15
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../src/@ui/UiMenu/components/Item.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAGxD,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,CAAqC,EAAE,IAAI,EAAuB;IACpG,MAAM,EAAE,sBAAsB,EAAE,UAAU,EAAE,SAAS,EAAE,kBAAkB,EAAE,GACvE,uBAAuB,EAAK,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnD,sBAAsB,EAAE,GAAG,CAAC,sBAAsB;QAClD,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;KAC7C,CAAC,CAAC,CAAC;IAER,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC9B,OAAO,KAAC,sBAAsB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IAClD,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IACtC,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IACrC,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,KAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../src/@ui/UiMenu/components/Item.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAGxD,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,CAAqC,EAAE,IAAI,EAAuB;IACpG,MAAM,EAAE,sBAAsB,EAAE,UAAU,EAAE,SAAS,EAAE,kBAAkB,EAAE,GACvE,uBAAuB,EAAK,CAAC,qBAAqB,CAAC;QAC/C,wBAAwB;QACxB,YAAY;QACZ,WAAW;QACX,oBAAoB;KACvB,CAAC,CAAC;IAEP,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC9B,OAAO,KAAC,sBAAsB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IAClD,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IACtC,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IACrC,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,KAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC,CAAC"}
@@ -7,10 +7,10 @@ import { typedUiMenuContextStore } from "../../context.js";
7
7
  * @internal
8
8
  */
9
9
  export const DefaultUiMenuStaticItem = memo(function DefaultUiMenuStaticItem({ item }) {
10
- const { itemClassName, itemDataTestId } = typedUiMenuContextStore().useContextStore((ctx) => ({
11
- itemClassName: ctx.itemClassName,
12
- itemDataTestId: ctx.itemDataTestId,
13
- }));
10
+ const { itemClassName, itemDataTestId } = typedUiMenuContextStore().useContextStoreValues([
11
+ "itemClassName",
12
+ "itemDataTestId",
13
+ ]);
14
14
  return (_jsx("li", { role: "none", className: typeof itemClassName === "function" ? itemClassName(item) : itemClassName, "data-testid": typeof itemDataTestId === "function" ? itemDataTestId(item) : itemDataTestId, children: item.data }));
15
15
  });
16
16
  //# sourceMappingURL=DefaultUiMenuStaticItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultUiMenuStaticItem.js","sourceRoot":"","sources":["../../../../../src/@ui/UiMenu/components/defaults/DefaultUiMenuStaticItem.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAA2B,IAAI,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAG3D;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,SAAS,uBAAuB,CAE1E,EAAE,IAAI,EAA6B;IACjC,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,uBAAuB,EAAK,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7F,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,cAAc,EAAE,GAAG,CAAC,cAAc;KACrC,CAAC,CAAC,CAAC;IAEJ,OAAO,CACH,aACI,IAAI,EAAC,MAAM,EACX,SAAS,EAAE,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,iBACvE,OAAO,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,YAExF,IAAI,CAAC,IAAiB,GACtB,CACR,CAAC;AACN,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"DefaultUiMenuStaticItem.js","sourceRoot":"","sources":["../../../../../src/@ui/UiMenu/components/defaults/DefaultUiMenuStaticItem.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAA2B,IAAI,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAG3D;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,SAAS,uBAAuB,CAE1E,EAAE,IAAI,EAA6B;IACjC,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,uBAAuB,EAAK,CAAC,qBAAqB,CAAC;QACzF,eAAe;QACf,gBAAgB;KACnB,CAAC,CAAC;IAEH,OAAO,CACH,aACI,IAAI,EAAC,MAAM,EACX,SAAS,EAAE,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,iBACvE,OAAO,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,YAExF,IAAI,CAAC,IAAiB,GACtB,CACR,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -1,41 +1,7 @@
1
- import { HTMLAttributes } from "react";
2
- import { IAccessibilityConfigBase } from "../../typings/accessibility.js";
3
- import { SizeLarge, SizeMedium, SizeSmall } from "../@types/size.js";
1
+ import { EmptyObject } from "@gooddata/util";
2
+ import { IUiTabsProps } from "./types.js";
4
3
  /**
5
4
  * @internal
6
5
  */
7
- export interface UiTabsAccessibilityConfig extends IAccessibilityConfigBase {
8
- tabRole?: HTMLAttributes<HTMLElement>["role"];
9
- }
10
- /**
11
- * @internal
12
- */
13
- export interface UiTabsProps {
14
- size?: SizeSmall | SizeMedium | SizeLarge;
15
- tabs: Array<UiTab>;
16
- onTabSelect: (tab: UiTab) => void;
17
- selectedTabId: string;
18
- accessibilityConfig?: UiTabsAccessibilityConfig;
19
- /**
20
- * Maximum length for tab labels. When exceeded, the label will be truncated with ellipsis
21
- * and the full label will be available via aria-label.
22
- */
23
- maxLabelLength?: number;
24
- /**
25
- * Enable overflow dropdown that appears when tabs don't fit in the container.
26
- * When true, a dropdown button will appear showing all tabs.
27
- */
28
- enableOverflowDropdown?: boolean;
29
- }
30
- /**
31
- * @internal
32
- */
33
- export interface UiTab {
34
- id: string;
35
- label: string;
36
- }
37
- /**
38
- * @internal
39
- */
40
- export declare function UiTabs({ size, tabs, onTabSelect, selectedTabId, accessibilityConfig, maxLabelLength, enableOverflowDropdown, }: UiTabsProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function UiTabs<TTabProps extends Record<any, any> = EmptyObject, TTabActionProps extends Record<any, any> = EmptyObject>(props: IUiTabsProps<TTabProps, TTabActionProps>): import("react/jsx-runtime").JSX.Element;
41
7
  //# sourceMappingURL=UiTabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiTabs.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTabs/UiTabs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAqD,MAAM,OAAO,CAAC;AAM1F,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAQrE;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACvE,OAAO,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1C,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACnB,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAChD;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACjB;AAyFD;;GAEG;AACH,wBAAgB,MAAM,CAAC,EACnB,IAAe,EACf,IAAI,EACJ,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,sBAA8B,GACjC,EAAE,WAAW,2CA+Ib"}
1
+ {"version":3,"file":"UiTabs.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTabs/UiTabs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C;;GAEG;AACH,wBAAgB,MAAM,CAClB,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EAChD,eAAe,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EACxD,KAAK,EAAE,YAAY,CAAC,SAAS,EAAE,eAAe,CAAC,2CAUhD"}
@@ -1,127 +1,13 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- // (C) 2025 GoodData Corporation
3
- import { useCallback, useEffect, useMemo, useRef, useState } from "react";
4
- import { useIntl } from "react-intl";
5
- import { messages } from "./messages.js";
6
- import { Dropdown } from "../../Dropdown/index.js";
7
- import { bem } from "../@utils/bem.js";
8
- import { makeTabsKeyboardNavigation } from "../@utils/keyboardNavigation.js";
9
- import { UiButton } from "../UiButton/UiButton.js";
10
- import { UiListbox } from "../UiListbox/UiListbox.js";
11
- import { UiTooltip } from "../UiTooltip/UiTooltip.js";
12
- const { b, e } = bem("gd-ui-kit-tabs");
13
- /**
14
- * Truncates a string to a maximum length and adds ellipsis
15
- */
16
- function truncateLabel(label, maxLength) {
17
- if (!maxLength || label.length <= maxLength) {
18
- return label;
19
- }
20
- return label.slice(0, maxLength - 1) + "…";
21
- }
22
- /**
23
- * Dropdown component that shows all tabs in a list when tabs overflow
24
- * @internal
25
- */
26
- function UiTabsOverflowDropdown({ tabs, selectedTabId, onTabSelect }) {
27
- const intl = useIntl();
28
- // Convert tabs to listbox items for the overflow dropdown
29
- const listboxItems = useMemo(() => tabs.map((tab) => ({
30
- type: "interactive",
31
- id: tab.id,
32
- stringTitle: tab.label,
33
- data: tab,
34
- })), [tabs]);
35
- const handleDropdownSelect = useCallback((item) => {
36
- onTabSelect(item.data);
37
- }, [onTabSelect]);
38
- return (_jsx("div", { className: e("dropdown"), children: _jsx(Dropdown, { renderButton: ({ toggleDropdown, isOpen }) => (_jsx(UiButton, { label: intl.formatMessage(messages["all"]), iconAfter: isOpen ? "chevronUp" : "chevronDown", size: "small", variant: "tertiary", accessibilityConfig: {
39
- ariaLabel: intl.formatMessage(messages["showAllTabs"]),
40
- ariaExpanded: isOpen,
41
- }, onClick: toggleDropdown })), renderBody: ({ closeDropdown, ariaAttributes }) => (_jsx(UiListbox, { items: listboxItems, selectedItemId: selectedTabId, onSelect: (item) => {
42
- handleDropdownSelect(item);
43
- closeDropdown();
44
- }, ariaAttributes: ariaAttributes, maxWidth: 160, maxHeight: 400 })), alignPoints: [{ align: "br tr" }, { align: "tr br" }], closeOnEscape: true, accessibilityConfig: {
45
- triggerRole: "button",
46
- popupRole: "listbox",
47
- } }) }));
48
- }
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getTypedUiTabsContextStore } from "./context.js";
3
+ import { useUiTabsContextStoreValue } from "./useUiTabsContextStoreValue.js";
49
4
  /**
50
5
  * @internal
51
6
  */
52
- export function UiTabs({ size = "medium", tabs, onTabSelect, selectedTabId, accessibilityConfig, maxLabelLength, enableOverflowDropdown = false, }) {
53
- const tabRefs = useRef([]);
54
- const focusedIndexRef = useRef(null);
55
- const containerRef = useRef(null);
56
- const [showOverflowDropdown, setShowOverflowDropdown] = useState(false);
57
- const focusTab = useCallback((index) => {
58
- tabRefs.current[index]?.focus();
59
- }, []);
60
- const handleKeyDown = useMemo(() => makeTabsKeyboardNavigation({
61
- onFocusPrevious: () => {
62
- const previousTabIndex = (focusedIndexRef.current - 1 + tabs.length) % tabs.length;
63
- focusTab(previousTabIndex);
64
- },
65
- onFocusNext: () => {
66
- const nextTabIndex = (focusedIndexRef.current + 1) % tabs.length;
67
- focusTab(nextTabIndex);
68
- },
69
- onFocusFirst: () => {
70
- focusTab(0);
71
- },
72
- onFocusLast: () => {
73
- focusTab(tabs.length - 1);
74
- },
75
- onSelect: () => {
76
- const focusedTab = tabs[focusedIndexRef.current];
77
- onTabSelect(focusedTab);
78
- },
79
- }), [tabs, onTabSelect, focusTab]);
80
- // Check if tabs overflow the container
81
- useEffect(() => {
82
- if (!enableOverflowDropdown || !containerRef.current) {
83
- return undefined;
84
- }
85
- const containerElement = containerRef.current;
86
- const checkOverflow = () => {
87
- const container = containerRef.current;
88
- if (!container) {
89
- return;
90
- }
91
- const hasOverflow = container.scrollWidth > container.clientWidth;
92
- setShowOverflowDropdown(hasOverflow);
93
- };
94
- checkOverflow();
95
- const resizeObserver = new ResizeObserver(checkOverflow);
96
- resizeObserver.observe(containerElement);
97
- return () => {
98
- resizeObserver.disconnect();
99
- };
100
- }, [enableOverflowDropdown, tabs]);
101
- // Scroll to selected tab when selection changes
102
- useEffect(() => {
103
- const selectedIndex = tabs.findIndex((tab) => tab.id === selectedTabId);
104
- if (selectedIndex !== -1 && tabRefs.current[selectedIndex]) {
105
- tabRefs.current[selectedIndex].scrollIntoView({
106
- behavior: "smooth",
107
- block: "nearest",
108
- inline: "center",
109
- });
110
- }
111
- }, [selectedTabId, tabs]);
112
- const handleTabClick = useCallback((tab) => {
113
- onTabSelect(tab);
114
- }, [onTabSelect]);
115
- const handleTabFocus = useCallback((index) => {
116
- focusedIndexRef.current = index;
117
- }, []);
118
- return (_jsxs("div", { className: b({ size, overflow: enableOverflowDropdown }), "aria-label": accessibilityConfig?.ariaLabel, "aria-labelledby": accessibilityConfig?.ariaLabelledBy, "aria-describedby": accessibilityConfig?.ariaDescribedBy, "aria-expanded": accessibilityConfig?.ariaExpanded, role: accessibilityConfig?.role, children: [_jsx("div", { className: e("container"), ref: containerRef, children: tabs.map((tab, index) => {
119
- const truncatedLabel = truncateLabel(tab.label, maxLabelLength);
120
- const needsTruncation = truncatedLabel !== tab.label;
121
- const button = (_jsx("button", { className: e("item", { selected: tab.id === selectedTabId }), onClick: () => handleTabClick(tab), role: accessibilityConfig?.tabRole, "aria-selected": tab.id === selectedTabId, "aria-label": needsTruncation ? tab.label : undefined, tabIndex: tab.id === selectedTabId ? 0 : -1, ref: (el) => {
122
- tabRefs.current[index] = el;
123
- }, onKeyDown: handleKeyDown, onFocus: () => handleTabFocus(index), children: _jsx("span", { className: e("label"), children: truncatedLabel }) }, tab.id));
124
- return needsTruncation ? (_jsx(UiTooltip, { anchor: button, content: tab.label, triggerBy: ["hover", "focus"], arrowPlacement: "top" }, tab.id)) : (button);
125
- }) }), Boolean(enableOverflowDropdown && showOverflowDropdown) && (_jsx("div", { className: e("dropdown-wrapper"), children: _jsx(UiTabsOverflowDropdown, { tabs: tabs, selectedTabId: selectedTabId, onTabSelect: onTabSelect }) }))] }));
7
+ export function UiTabs(props) {
8
+ const ContextStore = getTypedUiTabsContextStore();
9
+ const contextStoreValue = useUiTabsContextStoreValue(props);
10
+ const Container = contextStoreValue.Container;
11
+ return (_jsx(ContextStore, { value: contextStoreValue, children: _jsx(Container, {}) }));
126
12
  }
127
13
  //# sourceMappingURL=UiTabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiTabs.js","sourceRoot":"","sources":["../../../src/@ui/UiTabs/UiTabs.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiTabs.js","sourceRoot":"","sources":["../../../src/@ui/UiTabs/UiTabs.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E;;GAEG;AACH,MAAM,UAAU,MAAM,CAGpB,KAA+C;IAC7C,MAAM,YAAY,GAAG,0BAA0B,EAA8B,CAAC;IAC9E,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;IAE9C,OAAO,CACH,KAAC,YAAY,IAAC,KAAK,EAAE,iBAAiB,YAClC,KAAC,SAAS,KAAG,GACF,CAClB,CAAC;AACN,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const UiTabsBem: {
2
+ b: (props?: import("../@utils/bem.js").StyleProps) => string;
3
+ e: (element: string, props?: import("../@utils/bem.js").StyleProps) => string;
4
+ };
5
+ //# sourceMappingURL=bem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bem.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTabs/bem.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;;;CAAwB,CAAC"}
@@ -0,0 +1,4 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import { bem } from "../@utils/bem.js";
3
+ export const UiTabsBem = bem("gd-ui-kit-tabs");
4
+ //# sourceMappingURL=bem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bem.js","sourceRoot":"","sources":["../../../src/@ui/UiTabs/bem.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { IContextStore } from "@gooddata/sdk-ui";
2
+ import { EmptyObject } from "@gooddata/util";
3
+ import { IUiTabContext } from "./types.js";
4
+ /**
5
+ * @internal
6
+ */
7
+ export declare function getTypedUiTabsContextStore<TTabProps extends Record<any, any> = EmptyObject, TTabActionProps extends Record<any, any> = EmptyObject>(): IContextStore<IUiTabContext<TTabProps, TTabActionProps>>;
8
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTabs/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAsB,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3C;;GAEG;AACH,wBAAgB,0BAA0B,CACtC,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EAChD,eAAe,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,KAEzB,aAAa,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CACxF"}
@@ -0,0 +1,10 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import { createContextStore } from "@gooddata/sdk-ui";
3
+ const UiTabsContextStore = createContextStore("UiTabs");
4
+ /**
5
+ * @internal
6
+ */
7
+ export function getTypedUiTabsContextStore() {
8
+ return UiTabsContextStore;
9
+ }
10
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/@ui/UiTabs/context.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAiB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAKrE,MAAM,kBAAkB,GAAG,kBAAkB,CAAkC,QAAQ,CAAC,CAAC;AAEzF;;GAEG;AACH,MAAM,UAAU,0BAA0B;IAItC,OAAO,kBAA8E,CAAC;AAC1F,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { EmptyObject } from "@gooddata/util";
2
+ import { IUiTabComponentProps } from "../types.js";
3
+ /**
4
+ * @internal
5
+ */
6
+ export declare function DefaultUiTabsAllTabs<TTabProps extends Record<any, any> = EmptyObject, TTabActionProps extends Record<any, any> = EmptyObject>(_props: IUiTabComponentProps<"AllTabs", TTabProps, TTabActionProps>): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=DefaultUiTabsAllTabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsAllTabs.d.ts","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabs.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAc7C,OAAO,EAAU,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,wBAAgB,oBAAoB,CAChC,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EAChD,eAAe,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EACxD,MAAM,EAAE,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,2CA4GpE"}
@@ -0,0 +1,71 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2025 GoodData Corporation
3
+ import { useCallback, useState } from "react";
4
+ import { Dropdown } from "../../../Dropdown/index.js";
5
+ import { ListWithActionsFocusStore, useFocusWithinContainer, useListWithActionsFocusStoreValue, } from "../../hooks/useListWithActionsFocus.js";
6
+ import { SELECT_ITEM_ACTION, useListWithActionsKeyboardNavigation, } from "../../hooks/useListWithActionsKeyboardNavigation.js";
7
+ import { UiTabsBem } from "../bem.js";
8
+ import { getTypedUiTabsContextStore } from "../context.js";
9
+ /**
10
+ * @internal
11
+ */
12
+ export function DefaultUiTabsAllTabs(_props) {
13
+ const store = getTypedUiTabsContextStore();
14
+ const { tabs, onTabSelect, AllTabsButton, selectedTabId, isOverflowing, useActionListener } = store.useContextStoreValues([
15
+ "tabs",
16
+ "onTabSelect",
17
+ "selectedTabId",
18
+ "AllTabsButton",
19
+ "isOverflowing",
20
+ "useActionListener",
21
+ ]);
22
+ const [isOpen, setIsOpen] = useState(false);
23
+ useActionListener(({ action }) => {
24
+ if (action.closeOnSelect === "all") {
25
+ setIsOpen(false);
26
+ }
27
+ });
28
+ const handleDropdownSelect = useCallback((item) => () => {
29
+ onTabSelect(item);
30
+ setIsOpen(false);
31
+ }, [onTabSelect]);
32
+ const { onKeyboardNavigation, focusedItem, focusedAction, setFocusedIndex, setFocusedAction } = useListWithActionsKeyboardNavigation({
33
+ items: tabs,
34
+ getItemAdditionalActions: (item) => ((item.actions ?? []).length ? ["selectTabActions"] : []),
35
+ actionHandlers: {
36
+ selectItem: handleDropdownSelect,
37
+ selectTabActions: () => undefined,
38
+ },
39
+ isSimple: true,
40
+ });
41
+ const listWithActionsFocusStoreValue = useListWithActionsFocusStoreValue((item) => item.id);
42
+ const { containerRef } = useFocusWithinContainer(listWithActionsFocusStoreValue.makeId({ item: focusedItem, action: focusedAction }) ?? "");
43
+ if (!isOverflowing) {
44
+ return null;
45
+ }
46
+ return (_jsx("div", { className: UiTabsBem.e("dropdown-wrapper"), children: _jsx("div", { className: UiTabsBem.e("dropdown"), children: _jsx(Dropdown, { renderButton: ({ toggleDropdown, isOpen, buttonRef, ariaAttributes }) => (_jsx(AllTabsButton, { onClick: toggleDropdown, isOpen: isOpen, ref: buttonRef, ariaAttributes: ariaAttributes })), renderBody: ({ ariaAttributes }) => (_jsx(ListWithActionsFocusStore, { value: listWithActionsFocusStoreValue, children: _jsx("div", { className: UiTabsBem.e("tab-list"), role: "grid", ref: containerRef, onKeyDown: onKeyboardNavigation, tabIndex: -1, id: listWithActionsFocusStoreValue.containerId, ...ariaAttributes, "aria-label": "TODO", "aria-rowcount": tabs.length, children: tabs.map((item, index) => (_jsx(TabListItem, { item: item, index: index, focusedAction: item === focusedItem ? focusedAction : undefined, onApply: handleDropdownSelect(item) }, item.id))) }) })), autofocusOnOpen: true, shouldTrapFocus: true, alignPoints: [{ align: "br tr" }, { align: "tr br" }], closeOnEscape: true, accessibilityConfig: {
47
+ triggerRole: "button",
48
+ popupRole: "listbox",
49
+ }, onToggle: (desiredState) => {
50
+ setIsOpen((wasOpen) => desiredState ?? !wasOpen);
51
+ }, isOpen: isOpen, onOpenStateChanged: () => {
52
+ setFocusedIndex(tabs.findIndex((t) => t.id === selectedTabId) ?? 0);
53
+ setFocusedAction(SELECT_ITEM_ACTION);
54
+ } }) }) }));
55
+ }
56
+ function TabListItem({ item, index, focusedAction, onApply, }) {
57
+ const store = getTypedUiTabsContextStore();
58
+ const { TabValue, TabActions, selectedTabId } = store.useContextStoreValues([
59
+ "TabValue",
60
+ "TabActions",
61
+ "selectedTabId",
62
+ ]);
63
+ const isSelected = item.id === selectedTabId;
64
+ const isFocused = !!focusedAction;
65
+ const makeId = ListWithActionsFocusStore.useContextStoreOptional((ctx) => ctx.makeId);
66
+ return (_jsxs("div", { className: UiTabsBem.e("tab-list-item", {
67
+ focused: isFocused,
68
+ "select-item": focusedAction === SELECT_ITEM_ACTION,
69
+ }), role: "row", "aria-rowindex": index + 1, "aria-labelledby": makeId?.({ item, action: SELECT_ITEM_ACTION }), tabIndex: -1, children: [_jsx("div", { className: UiTabsBem.e("tab-list-item-value"), onClick: onApply, role: "gridcell", children: _jsx("div", { role: "button", tabIndex: isSelected ? 0 : -1, id: makeId?.({ item, action: SELECT_ITEM_ACTION }), children: _jsx(TabValue, { tab: item, isSelected: isSelected, location: "allList" }) }) }), (item.actions ?? []).length ? (_jsx("div", { className: UiTabsBem.e("tab-list-item-actions", { focused: isFocused }), role: "gridcell", children: _jsx(TabActions, { tab: item, location: "allList", tabIndex: -1, id: makeId?.({ item, action: "selectTabActions" }) }) })) : null] }));
70
+ }
71
+ //# sourceMappingURL=DefaultUiTabsAllTabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsAllTabs.js","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabs.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { EmptyObject } from "@gooddata/util";
2
+ import { IUiTabComponentProps } from "../types.js";
3
+ /**
4
+ * @internal
5
+ */
6
+ export declare function DefaultUiTabsAllTabsButton<TTabProps extends Record<any, any> = EmptyObject, TTabActionProps extends Record<any, any> = EmptyObject>({ isOpen, onClick, ref }: IUiTabComponentProps<"AllTabsButton", TTabProps, TTabActionProps>): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=DefaultUiTabsAllTabsButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsAllTabsButton.d.ts","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabsButton.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,wBAAgB,0BAA0B,CACtC,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EAChD,eAAe,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EACxD,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,oBAAoB,CAAC,eAAe,EAAE,SAAS,EAAE,eAAe,CAAC,2CAiB5F"}
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useIntl } from "react-intl";
3
+ import { UiButton } from "../../UiButton/UiButton.js";
4
+ import { messages } from "../messages.js";
5
+ /**
6
+ * @internal
7
+ */
8
+ export function DefaultUiTabsAllTabsButton({ isOpen, onClick, ref }) {
9
+ const intl = useIntl();
10
+ return (_jsx(UiButton, { label: intl.formatMessage(messages["all"]), iconAfter: isOpen ? "chevronUp" : "chevronDown", size: "small", variant: "tertiary", accessibilityConfig: {
11
+ ariaLabel: intl.formatMessage(messages["showAllTabs"]),
12
+ ariaExpanded: isOpen,
13
+ }, onClick: onClick, ref: ref }));
14
+ }
15
+ //# sourceMappingURL=DefaultUiTabsAllTabsButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsAllTabsButton.js","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsAllTabsButton.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAIrC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAGxC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAqE;IACzF,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,OAAO,CACH,KAAC,QAAQ,IACL,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAC1C,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAC/C,IAAI,EAAE,OAAO,EACb,OAAO,EAAC,UAAU,EAClB,mBAAmB,EAAE;YACjB,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACtD,YAAY,EAAE,MAAM;SACvB,EACD,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAmC,GAC1C,CACL,CAAC;AACN,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { EmptyObject } from "@gooddata/util";
2
+ import { IUiTabComponentProps } from "../types.js";
3
+ /**
4
+ * @internal
5
+ */
6
+ export declare function DefaultUiTabsContainer<TTabProps extends Record<any, any> = EmptyObject, TTabActionProps extends Record<any, any> = EmptyObject>(_props: IUiTabComponentProps<"Container", TTabProps, TTabActionProps>): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=DefaultUiTabsContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsContainer.d.ts","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsContainer.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAU7C,OAAO,EAAU,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,wBAAgB,sBAAsB,CAClC,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EAChD,eAAe,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EACxD,MAAM,EAAE,oBAAoB,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,CAAC,2CAmFtE"}
@@ -0,0 +1,45 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2025 GoodData Corporation
3
+ import { useCallback } from "react";
4
+ import { useCombineRefs } from "@gooddata/sdk-ui";
5
+ import { ListWithActionsFocusStore, useFocusWithinContainer, useListWithActionsFocusStoreValue, } from "../../hooks/useListWithActionsFocus.js";
6
+ import { useListWithActionsKeyboardNavigation } from "../../hooks/useListWithActionsKeyboardNavigation.js";
7
+ import { UiTabsBem } from "../bem.js";
8
+ import { getTypedUiTabsContextStore } from "../context.js";
9
+ /**
10
+ * @internal
11
+ */
12
+ export function DefaultUiTabsContainer(_props) {
13
+ const store = getTypedUiTabsContextStore();
14
+ const { Tab, accessibilityConfig, size, tabs, selectedTabId, onTabSelect, containerRef: resizeContainerRef, AllTabs, } = store.useContextStoreValues([
15
+ "Tab",
16
+ "accessibilityConfig",
17
+ "size",
18
+ "tabs",
19
+ "selectedTabId",
20
+ "onTabSelect",
21
+ "containerRef",
22
+ "AllTabs",
23
+ ]);
24
+ const handleSelectTab = useCallback((tab) => () => {
25
+ onTabSelect(tab);
26
+ }, [onTabSelect]);
27
+ const { onKeyboardNavigation, focusedItem, focusedAction } = useListWithActionsKeyboardNavigation({
28
+ items: tabs,
29
+ getItemAdditionalActions: (item) => ((item.actions ?? []).length ? ["selectTabActions"] : []),
30
+ actionHandlers: {
31
+ selectItem: handleSelectTab,
32
+ selectTabActions: () => undefined,
33
+ },
34
+ isSimple: true,
35
+ focusedIndex: tabs.findIndex((t) => t.id === selectedTabId) ?? 0,
36
+ });
37
+ const listWithActionsFocusStoreValue = useListWithActionsFocusStoreValue((item) => item.id);
38
+ const { containerRef: focusContainerRef } = useFocusWithinContainer(listWithActionsFocusStoreValue.makeId({ item: focusedItem, action: focusedAction }) ?? "");
39
+ return (_jsxs("div", { className: UiTabsBem.b({ size, overflow: true }), children: [_jsx("div", { className: UiTabsBem.e("container"), ref: useCombineRefs(resizeContainerRef, focusContainerRef), onKeyDown: onKeyboardNavigation, id: listWithActionsFocusStoreValue.containerId, tabIndex: -1, "aria-label": accessibilityConfig?.ariaLabel, "aria-labelledby": accessibilityConfig?.ariaLabelledBy, "aria-describedby": accessibilityConfig?.ariaDescribedBy, "aria-expanded": accessibilityConfig?.ariaExpanded, role: accessibilityConfig?.role, children: _jsx(ListWithActionsFocusStore, { value: listWithActionsFocusStoreValue, children: tabs.map((tab) => {
40
+ const isSelected = selectedTabId === tab.id;
41
+ const onSelect = () => onTabSelect(tab);
42
+ return (_jsx(Tab, { tab: tab, isSelected: isSelected, focusedAction: isSelected ? focusedAction : undefined, onSelect: onSelect }, tab.id));
43
+ }) }) }), _jsx(AllTabs, {})] }));
44
+ }
45
+ //# sourceMappingURL=DefaultUiTabsContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsContainer.js","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsContainer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { EmptyObject } from "@gooddata/util";
2
+ import { IUiTabComponentProps } from "../types.js";
3
+ /**
4
+ * @internal
5
+ */
6
+ export declare function DefaultUiTabsTab<TTabProps extends Record<any, any> = EmptyObject, TTabActionProps extends Record<any, any> = EmptyObject>({ tab, isSelected, onSelect, focusedAction }: IUiTabComponentProps<"Tab", TTabProps, TTabActionProps>): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=DefaultUiTabsTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultUiTabsTab.d.ts","sourceRoot":"","sources":["../../../../src/@ui/UiTabs/defaultComponents/DefaultUiTabsTab.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAO7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,wBAAgB,gBAAgB,CAC5B,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EAChD,eAAe,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,WAAW,EACxD,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,2CAkDtG"}