@gooddata/sdk-ui-kit 10.29.0-alpha.9 → 10.29.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 (65) hide show
  1. package/esm/@ui/UiChip/UiChip.d.ts +2 -1
  2. package/esm/@ui/UiChip/UiChip.d.ts.map +1 -1
  3. package/esm/@ui/UiChip/UiChip.js +8 -7
  4. package/esm/@ui/UiChip/UiChip.js.map +1 -1
  5. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.d.ts +3 -1
  6. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.d.ts.map +1 -1
  7. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.js +25 -9
  8. package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.js.map +1 -1
  9. package/esm/Bubble/BubbleHoverTrigger.d.ts +1 -0
  10. package/esm/Bubble/BubbleHoverTrigger.d.ts.map +1 -1
  11. package/esm/Bubble/BubbleHoverTrigger.js +5 -1
  12. package/esm/Bubble/BubbleHoverTrigger.js.map +1 -1
  13. package/esm/Button/Button.d.ts +1 -18
  14. package/esm/Button/Button.d.ts.map +1 -1
  15. package/esm/Button/Button.js +28 -51
  16. package/esm/Button/Button.js.map +1 -1
  17. package/esm/Button/typings.d.ts +3 -4
  18. package/esm/Button/typings.d.ts.map +1 -1
  19. package/esm/Dropdown/Dropdown.d.ts +12 -3
  20. package/esm/Dropdown/Dropdown.d.ts.map +1 -1
  21. package/esm/Dropdown/Dropdown.js +31 -16
  22. package/esm/Dropdown/Dropdown.js.map +1 -1
  23. package/esm/Dropdown/DropdownButton.js +1 -1
  24. package/esm/Dropdown/DropdownButton.js.map +1 -1
  25. package/esm/Dropdown/DropdownList.d.ts +1 -0
  26. package/esm/Dropdown/DropdownList.d.ts.map +1 -1
  27. package/esm/Dropdown/DropdownList.js +2 -2
  28. package/esm/Dropdown/DropdownList.js.map +1 -1
  29. package/esm/Header/HeaderAccount.js +1 -1
  30. package/esm/Header/HeaderAccount.js.map +1 -1
  31. package/esm/Header/HeaderChatButton.d.ts.map +1 -1
  32. package/esm/Header/HeaderChatButton.js +3 -1
  33. package/esm/Header/HeaderChatButton.js.map +1 -1
  34. package/esm/Header/HeaderHelp.d.ts.map +1 -1
  35. package/esm/Header/HeaderHelp.js +4 -6
  36. package/esm/Header/HeaderHelp.js.map +1 -1
  37. package/esm/Header/HeaderSearchButton.js +1 -1
  38. package/esm/Header/HeaderSearchButton.js.map +1 -1
  39. package/esm/Header/HeaderWorkspacePickerButton.js +1 -1
  40. package/esm/Header/HeaderWorkspacePickerButton.js.map +1 -1
  41. package/esm/List/List.d.ts +1 -0
  42. package/esm/List/List.d.ts.map +1 -1
  43. package/esm/List/List.js +3 -3
  44. package/esm/List/List.js.map +1 -1
  45. package/esm/RecurrenceForm/DateTime.d.ts +1 -0
  46. package/esm/RecurrenceForm/DateTime.d.ts.map +1 -1
  47. package/esm/RecurrenceForm/DateTime.js +2 -2
  48. package/esm/RecurrenceForm/DateTime.js.map +1 -1
  49. package/esm/RecurrenceForm/Recurrence.d.ts.map +1 -1
  50. package/esm/RecurrenceForm/Recurrence.js +2 -2
  51. package/esm/RecurrenceForm/Recurrence.js.map +1 -1
  52. package/esm/RecurrenceForm/RecurrenceForm.d.ts +1 -0
  53. package/esm/RecurrenceForm/RecurrenceForm.d.ts.map +1 -1
  54. package/esm/RecurrenceForm/RecurrenceForm.js +2 -2
  55. package/esm/RecurrenceForm/RecurrenceForm.js.map +1 -1
  56. package/esm/RecurrenceForm/RepeatTypeSelect.d.ts +1 -0
  57. package/esm/RecurrenceForm/RepeatTypeSelect.d.ts.map +1 -1
  58. package/esm/RecurrenceForm/RepeatTypeSelect.js +2 -2
  59. package/esm/RecurrenceForm/RepeatTypeSelect.js.map +1 -1
  60. package/esm/sdk-ui-kit.d.ts +34 -27
  61. package/esm/utils/events.d.ts +9 -0
  62. package/esm/utils/events.d.ts.map +1 -1
  63. package/esm/utils/events.js +11 -0
  64. package/esm/utils/events.js.map +1 -1
  65. package/package.json +8 -8
@@ -338,24 +338,7 @@ export declare class BubbleTrigger<P extends IBubbleTriggerProps> extends React_
338
338
  /**
339
339
  * @internal
340
340
  */
341
- export declare class Button extends React_2.Component<IButtonProps> {
342
- static defaultProps: {
343
- className: string;
344
- disabled: boolean;
345
- onClick: (...args: any[]) => void;
346
- tabIndex: number;
347
- tagName: string;
348
- type: string;
349
- iconLeft: string;
350
- iconRight: string;
351
- };
352
- buttonNode: HTMLElement;
353
- render(): React_2.JSX.Element;
354
- private getEffectiveValue;
355
- private getClassnames;
356
- private _onClick;
357
- private renderIcon;
358
- }
341
+ export declare const Button: React_2.ForwardRefExoticComponent<IButtonProps & React_2.RefAttributes<HTMLElement>>;
359
342
 
360
343
  /**
361
344
  * @internal
@@ -1440,6 +1423,7 @@ export declare interface IBubbleHoverTriggerProps extends IBubbleTriggerProps {
1440
1423
  showDelay?: number;
1441
1424
  hideDelay?: number;
1442
1425
  hoverHideDelay?: number;
1426
+ enabled?: boolean;
1443
1427
  }
1444
1428
 
1445
1429
  /**
@@ -1534,16 +1518,15 @@ export declare interface IButtonProps {
1534
1518
  tagName?: string;
1535
1519
  title?: string;
1536
1520
  type?: HTMLButtonElement["type"];
1537
- value?: ReactNode;
1538
- children?: ReactNode;
1521
+ value?: React_2.ReactNode;
1522
+ children?: React_2.ReactNode;
1539
1523
  iconLeft?: string;
1540
1524
  iconRight?: string;
1541
- onClick?(e: React.MouseEvent): void;
1525
+ onClick?(e: React_2.MouseEvent): void;
1542
1526
  variant?: "primary" | "secondary";
1543
1527
  intent?: "action" | "positive" | "negative";
1544
1528
  size?: "small" | "medium" | "large";
1545
1529
  accessibilityConfig?: IButtonAccessibilityConfig;
1546
- buttonRef?: React.MutableRefObject<HTMLElement>;
1547
1530
  }
1548
1531
 
1549
1532
  /**
@@ -2070,10 +2053,16 @@ export declare interface IDropdownButtonRenderProps {
2070
2053
  openDropdown: () => void;
2071
2054
  closeDropdown: () => void;
2072
2055
  toggleDropdown: (desiredState?: boolean | unknown) => void;
2056
+ /**
2057
+ * Props supporting accessibility that can be just passed through to the rendered element
2058
+ */
2073
2059
  ariaAttributes: {
2074
- role: "button" | string;
2075
- "data-popupId": string;
2060
+ role: React_2.AriaRole;
2076
2061
  } & Pick<React_2.AriaAttributes, "aria-haspopup" | "aria-expanded" | "aria-controls">;
2062
+ /**
2063
+ * Props supporting accessibility that can be passed down to a <Button/>
2064
+ */
2065
+ accessibilityConfig: Pick<IButtonAccessibilityConfig, "role" | "isExpanded" | "popupId">;
2077
2066
  }
2078
2067
 
2079
2068
  /**
@@ -2161,6 +2150,7 @@ export declare interface IDropdownListProps<T> extends IListProps<T> {
2161
2150
  footer?: React_2.ReactNode | ((closeDropdown: () => void) => React_2.ReactNode);
2162
2151
  closeDropdown?: () => void;
2163
2152
  scrollToItem?: T;
2153
+ scrollDirection?: -1 | 1;
2164
2154
  }
2165
2155
 
2166
2156
  /**
@@ -2175,7 +2165,7 @@ export declare interface IDropdownProps {
2175
2165
  * The `desiredState` argument's type includes `unknown` to facilitate ease of use as an event handler (`onClick={onToggle}`)
2176
2166
  * @param desiredState - The desired state. If not provided, the state will be toggled.
2177
2167
  */
2178
- onToggle?: (desiredState?: boolean | unknown) => void;
2168
+ onToggle?: ((desiredState?: boolean) => void) | (() => void);
2179
2169
  openOnInit?: boolean;
2180
2170
  className?: string;
2181
2171
  alignPoints?: IAlignPoint[];
@@ -2194,7 +2184,9 @@ export declare interface IDropdownProps {
2194
2184
  closeOnEscape?: boolean;
2195
2185
  autofocusOnOpen?: boolean;
2196
2186
  initialFocus?: React_2.RefObject<HTMLElement> | string;
2187
+ returnFocusTo?: React_2.RefObject<HTMLElement> | string;
2197
2188
  accessibilityConfig?: {
2189
+ triggerRole?: "button" | "combobox";
2198
2190
  popupRole?: "listbox" | "tree" | "grid" | "dialog";
2199
2191
  };
2200
2192
  }
@@ -3128,6 +3120,7 @@ export declare interface IListProps<T> {
3128
3120
  itemHeightGetter?: (index: number) => number;
3129
3121
  renderItem: (props: IRenderListItemProps<T>) => JSX.Element;
3130
3122
  scrollToItem?: T;
3123
+ scrollDirection?: -1 | 1;
3131
3124
  onScrollStart?: ScrollCallback;
3132
3125
  onScrollEnd?: ScrollCallback;
3133
3126
  }
@@ -3860,6 +3853,7 @@ export declare interface IRecurrenceFormProps {
3860
3853
  isWhiteLabeled?: boolean;
3861
3854
  onRecurrenceDropdownOpen?: () => void;
3862
3855
  closeDropdownsOnParentScroll?: boolean;
3856
+ onKeyDownSubmit?: (e: React_2.KeyboardEvent) => void;
3863
3857
  }
3864
3858
 
3865
3859
  /**
@@ -4135,6 +4129,16 @@ export declare interface ISeparatorLineProps {
4135
4129
  height?: number;
4136
4130
  }
4137
4131
 
4132
+ /**
4133
+ * Checks if the given keyboard event is triggered by an Escape key.
4134
+ *
4135
+ * @param event - The keyboard event to check.
4136
+ * @returns `true` if the event has been triggered by an Escape key, `false` otherwise.
4137
+ *
4138
+ * @internal
4139
+ */
4140
+ export declare const isEscapeKey: (event: KeyboardEvent_2) => boolean;
4141
+
4138
4142
  /**
4139
4143
  * @internal
4140
4144
  */
@@ -5853,7 +5857,7 @@ export declare interface UiButtonProps {
5853
5857
  /**
5854
5858
  * @internal
5855
5859
  */
5856
- export declare const UiChip: ({ label, tag, isDeletable, isActive, isLocked, iconBefore, onClick, onDelete, onDeleteKeyDown, accessibilityConfig, dataTestId, }: UiChipProps) => React_2.JSX.Element;
5860
+ export declare const UiChip: ({ label, tag, isDeletable, isActive, isLocked, iconBefore, onClick, onDelete, onDeleteKeyDown, accessibilityConfig, dataTestId, buttonRef, }: UiChipProps) => React_2.JSX.Element;
5857
5861
 
5858
5862
  /**
5859
5863
  * @internal
@@ -5870,6 +5874,7 @@ export declare interface UiChipProps {
5870
5874
  onDeleteKeyDown?: (event: React_2.KeyboardEvent<HTMLButtonElement>) => void;
5871
5875
  accessibilityConfig?: IUiChipAccessibilityConfig;
5872
5876
  dataTestId?: string;
5877
+ buttonRef?: React_2.MutableRefObject<HTMLButtonElement>;
5873
5878
  }
5874
5879
 
5875
5880
  /**
@@ -6200,17 +6205,19 @@ export declare const useIsZoomed: (baseZoomLevel?: number) => boolean;
6200
6205
  /**
6201
6206
  * @internal
6202
6207
  */
6203
- export declare function useListWithActionsKeyboardNavigation<Item, Action extends string>({ items, actionHandlers, getItemAdditionalActions, }: {
6208
+ export declare function useListWithActionsKeyboardNavigation<Item, Action extends string>({ items, actionHandlers, getItemAdditionalActions, isNestedList, }: {
6204
6209
  items: Item[];
6205
6210
  actionHandlers: {
6206
6211
  [key in Action | typeof SELECT_ITEM_ACTION]: (item: Item) => (() => void) | undefined;
6207
6212
  };
6208
6213
  getItemAdditionalActions: (item: Item) => Action[];
6214
+ isNestedList?: boolean;
6209
6215
  }): {
6210
6216
  onKeyboardNavigation: (event: React_2.KeyboardEvent<Element>) => void;
6211
6217
  onBlur: React_2.FocusEventHandler<Element>;
6212
6218
  focusedAction: "selectItem" | Action;
6213
6219
  focusedItem: Item;
6220
+ setFocusedAction: React_2.Dispatch<React_2.SetStateAction<"selectItem" | Action>>;
6214
6221
  };
6215
6222
 
6216
6223
  /**
@@ -35,4 +35,13 @@ export declare const isEnterKey: (event: KeyboardEvent) => boolean;
35
35
  * @internal
36
36
  */
37
37
  export declare const isArrowKey: (event: KeyboardEvent) => boolean;
38
+ /**
39
+ * Checks if the given keyboard event is triggered by an Escape key.
40
+ *
41
+ * @param event - The keyboard event to check.
42
+ * @returns `true` if the event has been triggered by an Escape key, `false` otherwise.
43
+ *
44
+ * @internal
45
+ */
46
+ export declare const isEscapeKey: (event: KeyboardEvent) => boolean;
38
47
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/utils/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,OAElD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,UAAW,aAAa,KAAG,OAEjD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,UAAW,aAAa,KAAG,OAEjD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,UAAW,aAAa,KAAG,OAEjD,CAAC"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/utils/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,OAElD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,UAAW,aAAa,KAAG,OAEjD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,UAAW,aAAa,KAAG,OAEjD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,UAAW,aAAa,KAAG,OAEjD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,OAElD,CAAC"}
@@ -42,4 +42,15 @@ export const isEnterKey = (event) => {
42
42
  export const isArrowKey = (event) => {
43
43
  return event.key.startsWith("Arrow");
44
44
  };
45
+ /**
46
+ * Checks if the given keyboard event is triggered by an Escape key.
47
+ *
48
+ * @param event - The keyboard event to check.
49
+ * @returns `true` if the event has been triggered by an Escape key, `false` otherwise.
50
+ *
51
+ * @internal
52
+ */
53
+ export const isEscapeKey = (event) => {
54
+ return event.key === "Escape";
55
+ };
45
56
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/utils/events.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAW,EAAE;IACzD,OAAO,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC;AACtD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAW,EAAE;IACxD,OAAO,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAW,EAAE;IACxD,OAAO,KAAK,CAAC,GAAG,KAAK,OAAO,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAW,EAAE;IACxD,OAAO,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/utils/events.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAW,EAAE;IACzD,OAAO,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC;AACtD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAW,EAAE;IACxD,OAAO,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAW,EAAE;IACxD,OAAO,KAAK,CAAC,GAAG,KAAK,OAAO,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAW,EAAE;IACxD,OAAO,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAW,EAAE;IACzD,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC;AAClC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-kit",
3
- "version": "10.29.0-alpha.9",
3
+ "version": "10.29.0",
4
4
  "description": "GoodData SDK - UI Building Components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -75,11 +75,11 @@
75
75
  "@codemirror/autocomplete": "^6.18.6",
76
76
  "@lezer/highlight": "~1.2.1",
77
77
  "@codemirror/commands": "~6.8.1",
78
- "@gooddata/sdk-backend-spi": "10.29.0-alpha.9",
79
- "@gooddata/sdk-model": "10.29.0-alpha.9",
80
- "@gooddata/sdk-ui": "10.29.0-alpha.9",
81
- "@gooddata/sdk-ui-theme-provider": "10.29.0-alpha.9",
82
- "@gooddata/util": "10.29.0-alpha.9"
78
+ "@gooddata/sdk-ui": "10.29.0",
79
+ "@gooddata/util": "10.29.0",
80
+ "@gooddata/sdk-ui-theme-provider": "10.29.0",
81
+ "@gooddata/sdk-model": "10.29.0",
82
+ "@gooddata/sdk-backend-spi": "10.29.0"
83
83
  },
84
84
  "peerDependencies": {
85
85
  "react": "^16.10.0 || ^17.0.0 || ^18.0.0",
@@ -137,8 +137,8 @@
137
137
  "typescript": "5.3.3",
138
138
  "vitest": "3.0.8",
139
139
  "vitest-dom": "0.1.1",
140
- "@gooddata/sdk-backend-mockingbird": "10.29.0-alpha.9",
141
- "@gooddata/reference-workspace": "10.29.0-alpha.9"
140
+ "@gooddata/reference-workspace": "10.29.0",
141
+ "@gooddata/sdk-backend-mockingbird": "10.29.0"
142
142
  },
143
143
  "scripts": {
144
144
  "clean": "rm -rf ci dist esm coverage styles/css *.log tsconfig.tsbuildinfo",