@gooddata/sdk-ui-kit 10.27.0-alpha.1 → 10.27.0-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/esm/@ui/@utils/keyboardNavigation.d.ts +23 -12
  2. package/esm/@ui/@utils/keyboardNavigation.d.ts.map +1 -1
  3. package/esm/@ui/@utils/keyboardNavigation.js +58 -16
  4. package/esm/@ui/@utils/keyboardNavigation.js.map +1 -1
  5. package/esm/@ui/UiFocusTrap/UiFocusTrap.d.ts +9 -0
  6. package/esm/@ui/UiFocusTrap/UiFocusTrap.d.ts.map +1 -1
  7. package/esm/@ui/UiFocusTrap/UiFocusTrap.js +74 -71
  8. package/esm/@ui/UiFocusTrap/UiFocusTrap.js.map +1 -1
  9. package/esm/Dialog/ConfirmDialogBase.d.ts.map +1 -1
  10. package/esm/Dialog/ConfirmDialogBase.js +1 -1
  11. package/esm/Dialog/ConfirmDialogBase.js.map +1 -1
  12. package/esm/Dialog/DialogBase.d.ts.map +1 -1
  13. package/esm/Dialog/DialogBase.js +2 -2
  14. package/esm/Dialog/DialogBase.js.map +1 -1
  15. package/esm/Dialog/DialogCloseButton.d.ts +1 -1
  16. package/esm/Dialog/DialogCloseButton.d.ts.map +1 -1
  17. package/esm/Dialog/DialogCloseButton.js +11 -2
  18. package/esm/Dialog/DialogCloseButton.js.map +1 -1
  19. package/esm/Dialog/ExportDialogBase.d.ts.map +1 -1
  20. package/esm/Dialog/ExportDialogBase.js +8 -3
  21. package/esm/Dialog/ExportDialogBase.js.map +1 -1
  22. package/esm/Dialog/ShareDialog/ShareDialogBase/AddGranteeBase.d.ts.map +1 -1
  23. package/esm/Dialog/ShareDialog/ShareDialogBase/AddGranteeBase.js +1 -5
  24. package/esm/Dialog/ShareDialog/ShareDialogBase/AddGranteeBase.js.map +1 -1
  25. package/esm/Dialog/ShareDialog/ShareDialogBase/GranteeItem.js +2 -2
  26. package/esm/Dialog/ShareDialog/ShareDialogBase/GranteeItem.js.map +1 -1
  27. package/esm/Dialog/ShareDialog/ShareDialogBase/ShareGranteeBase.d.ts.map +1 -1
  28. package/esm/Dialog/ShareDialog/ShareDialogBase/ShareGranteeBase.js +1 -5
  29. package/esm/Dialog/ShareDialog/ShareDialogBase/ShareGranteeBase.js.map +1 -1
  30. package/esm/Dialog/typings.d.ts +1 -0
  31. package/esm/Dialog/typings.d.ts.map +1 -1
  32. package/esm/Form/Checkbox.d.ts +1 -0
  33. package/esm/Form/Checkbox.d.ts.map +1 -1
  34. package/esm/Form/Checkbox.js +3 -3
  35. package/esm/Form/Checkbox.js.map +1 -1
  36. package/esm/Header/Header.d.ts.map +1 -1
  37. package/esm/Header/Header.js +1 -1
  38. package/esm/Header/Header.js.map +1 -1
  39. package/esm/Header/HeaderAccount.d.ts.map +1 -1
  40. package/esm/Header/HeaderAccount.js +2 -3
  41. package/esm/Header/HeaderAccount.js.map +1 -1
  42. package/esm/Header/HeaderChatButton.d.ts +2 -0
  43. package/esm/Header/HeaderChatButton.d.ts.map +1 -1
  44. package/esm/Header/HeaderChatButton.js +3 -3
  45. package/esm/Header/HeaderChatButton.js.map +1 -1
  46. package/esm/Header/HeaderHelp.d.ts.map +1 -1
  47. package/esm/Header/HeaderHelp.js +2 -3
  48. package/esm/Header/HeaderHelp.js.map +1 -1
  49. package/esm/Header/HeaderSearchButton.d.ts.map +1 -1
  50. package/esm/Header/HeaderSearchButton.js +2 -3
  51. package/esm/Header/HeaderSearchButton.js.map +1 -1
  52. package/esm/List/ListItem.d.ts +8 -21
  53. package/esm/List/ListItem.d.ts.map +1 -1
  54. package/esm/List/ListItem.js +69 -70
  55. package/esm/List/ListItem.js.map +1 -1
  56. package/esm/List/MenuList.d.ts +3 -0
  57. package/esm/List/MenuList.d.ts.map +1 -1
  58. package/esm/List/MenuList.js +3 -3
  59. package/esm/List/MenuList.js.map +1 -1
  60. package/esm/List/index.d.ts +1 -1
  61. package/esm/List/index.d.ts.map +1 -1
  62. package/esm/List/index.js.map +1 -1
  63. package/esm/RecurrenceForm/DateTime.js +2 -2
  64. package/esm/RecurrenceForm/DateTime.js.map +1 -1
  65. package/esm/RecurrenceForm/Recurrence.js +3 -3
  66. package/esm/RecurrenceForm/Recurrence.js.map +1 -1
  67. package/esm/index.d.ts +3 -0
  68. package/esm/index.d.ts.map +1 -1
  69. package/esm/index.js +2 -0
  70. package/esm/index.js.map +1 -1
  71. package/esm/sdk-ui-kit.d.ts +74 -21
  72. package/esm/typings/accessibility.d.ts +17 -0
  73. package/esm/typings/accessibility.d.ts.map +1 -1
  74. package/esm/typings/accessibility.js +1 -1
  75. package/esm/typings/accessibility.js.map +1 -1
  76. package/esm/utils/domUtilities.d.ts +11 -0
  77. package/esm/utils/domUtilities.d.ts.map +1 -1
  78. package/esm/utils/domUtilities.js +29 -0
  79. package/esm/utils/domUtilities.js.map +1 -1
  80. package/esm/utils/useId.d.ts +6 -0
  81. package/esm/utils/useId.d.ts.map +1 -1
  82. package/esm/utils/useId.js +9 -0
  83. package/esm/utils/useId.js.map +1 -1
  84. package/package.json +10 -9
  85. package/styles/css/dialog.css +3 -2
  86. package/styles/css/dialog.css.map +1 -1
  87. package/styles/css/list.css +7 -0
  88. package/styles/css/list.css.map +1 -1
  89. package/styles/css/main.css +10 -2
  90. package/styles/css/main.css.map +1 -1
  91. package/styles/css/menu.css +7 -0
  92. package/styles/css/menu.css.map +1 -1
  93. package/styles/scss/dialog.scss +3 -2
  94. package/styles/scss/list.scss +7 -0
@@ -1,18 +1,29 @@
1
- import React from "react";
1
+ /// <reference types="react" />
2
2
  /**
3
3
  * @internal
4
4
  */
5
- export declare const makeMenuKeyboardNavigation: ({ onFocusPrevious, onFocusNext, onFocusFirst, onFocusLast, onEnterLevel, onLeaveLevel, onSelect, onClose, onUnhandledKeyDown, shouldPreventDefault, shouldStopPropagation, }: {
6
- onFocusNext?: (event: React.KeyboardEvent) => void;
7
- onFocusPrevious?: (event: React.KeyboardEvent) => void;
8
- onFocusFirst?: (event: React.KeyboardEvent) => void;
9
- onFocusLast?: (event: React.KeyboardEvent) => void;
10
- onEnterLevel?: (event: React.KeyboardEvent) => void;
11
- onLeaveLevel?: (event: React.KeyboardEvent) => void;
12
- onSelect?: (event: React.KeyboardEvent) => void;
13
- onClose?: (event: React.KeyboardEvent) => void;
14
- onUnhandledKeyDown?: (event: React.KeyboardEvent) => void;
5
+ export declare const makeMenuKeyboardNavigation: <T extends KeyboardEvent | import("react").KeyboardEvent<Element> = import("react").KeyboardEvent<Element>>({ onFocusPrevious, onFocusNext, onFocusFirst, onFocusLast, onEnterLevel, onLeaveLevel, onSelect, onClose, onUnhandledKeyDown, shouldPreventDefault, shouldStopPropagation, }: {
6
+ onFocusNext?: (event: T) => void;
7
+ onFocusPrevious?: (event: T) => void;
8
+ onFocusFirst?: (event: T) => void;
9
+ onFocusLast?: (event: T) => void;
10
+ onEnterLevel?: (event: T) => void;
11
+ onLeaveLevel?: (event: T) => void;
12
+ onSelect?: (event: T) => void;
13
+ onClose?: (event: T) => void;
14
+ onUnhandledKeyDown?: (event: T) => void;
15
15
  shouldPreventDefault?: boolean;
16
16
  shouldStopPropagation?: boolean;
17
- }) => (event: React.KeyboardEvent) => void;
17
+ }) => (event: T) => void;
18
+ /**
19
+ * @internal
20
+ */
21
+ export declare const makeDialogKeyboardNavigation: <T extends KeyboardEvent | import("react").KeyboardEvent<Element> = import("react").KeyboardEvent<Element>>({ onFocusPrevious, onFocusNext, onClose, onUnhandledKeyDown, shouldPreventDefault, shouldStopPropagation, }: {
22
+ onFocusNext?: (event: T) => void;
23
+ onFocusPrevious?: (event: T) => void;
24
+ onClose?: (event: T) => void;
25
+ onUnhandledKeyDown?: (event: T) => void;
26
+ shouldPreventDefault?: boolean;
27
+ shouldStopPropagation?: boolean;
28
+ }) => (event: T) => void;
18
29
  //# sourceMappingURL=keyboardNavigation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyboardNavigation.d.ts","sourceRoot":"","sources":["../../../src/@ui/@utils/keyboardNavigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;GAEG;AACH,eAAO,MAAM,0BAA0B;0BAcb,mBAAmB,KAAK,IAAI;8BACxB,mBAAmB,KAAK,IAAI;2BAC/B,mBAAmB,KAAK,IAAI;0BAC7B,mBAAmB,KAAK,IAAI;2BAC3B,mBAAmB,KAAK,IAAI;2BAC5B,mBAAmB,KAAK,IAAI;uBAChC,mBAAmB,KAAK,IAAI;sBAC7B,mBAAmB,KAAK,IAAI;iCACjB,mBAAmB,KAAK,IAAI;2BAElC,OAAO;4BACN,OAAO;cAahB,mBAAmB,SAgCrC,CAAC"}
1
+ {"version":3,"file":"keyboardNavigation.d.ts","sourceRoot":"","sources":["../../../src/@ui/@utils/keyboardNavigation.ts"],"names":[],"mappings":";AAoCA;;GAEG;AACH,eAAO,MAAM,0BAA0B;gCAgBP,IAAI;oCACA,IAAI;iCACP,IAAI;gCACL,IAAI;iCACH,IAAI;iCACJ,IAAI;6BACR,IAAI;4BACL,IAAI;uCACO,IAAI;2BAEhB,OAAO;4BACN,OAAO;wBAmClC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B;gCAWT,IAAI;oCACA,IAAI;4BACZ,IAAI;uCACO,IAAI;2BAEhB,OAAO;4BACN,OAAO;wBA4BlC,CAAC"}
@@ -1,42 +1,84 @@
1
1
  // (C) 2025 GoodData Corporation
2
+ const handleAction = (event, action, { shouldPreventDefault = true, shouldStopPropagation = true } = {}) => {
3
+ if (!action) {
4
+ return;
5
+ }
6
+ if (shouldPreventDefault) {
7
+ event.preventDefault();
8
+ }
9
+ if (shouldStopPropagation) {
10
+ event.stopPropagation();
11
+ }
12
+ action(event);
13
+ };
14
+ const handleActionEvent = (event, shouldPreventDefault, shouldStopPropagation) => {
15
+ return (action) => {
16
+ handleAction(event, action, { shouldPreventDefault, shouldStopPropagation });
17
+ };
18
+ };
2
19
  /**
3
20
  * @internal
4
21
  */
5
22
  export const makeMenuKeyboardNavigation = ({ onFocusPrevious, onFocusNext, onFocusFirst, onFocusLast, onEnterLevel, onLeaveLevel, onSelect, onClose, onUnhandledKeyDown, shouldPreventDefault = true, shouldStopPropagation = true, }) => {
6
- function handleAction(event, action) {
7
- if (!action) {
8
- return;
9
- }
10
- shouldPreventDefault && event.preventDefault();
11
- shouldStopPropagation && event.stopPropagation();
12
- action(event);
13
- }
14
23
  return (event) => {
24
+ const handleAction = handleActionEvent(event, shouldPreventDefault, shouldStopPropagation);
15
25
  switch (event.code) {
16
26
  case "ArrowDown":
17
- handleAction(event, onFocusNext);
27
+ handleAction(onFocusNext);
18
28
  break;
19
29
  case "ArrowUp":
20
- handleAction(event, onFocusPrevious);
30
+ handleAction(onFocusPrevious);
21
31
  break;
22
32
  case "ArrowLeft":
23
- handleAction(event, onLeaveLevel);
33
+ handleAction(onLeaveLevel);
24
34
  break;
25
35
  case "ArrowRight":
26
- handleAction(event, onEnterLevel);
36
+ handleAction(onEnterLevel);
27
37
  break;
28
38
  case "Home":
29
- handleAction(event, onFocusFirst);
39
+ handleAction(onFocusFirst);
30
40
  break;
31
41
  case "End":
32
- handleAction(event, onFocusLast);
42
+ handleAction(onFocusLast);
33
43
  break;
34
44
  case "Enter":
35
45
  case "Space":
36
- handleAction(event, onSelect);
46
+ handleAction(onSelect);
47
+ break;
48
+ case "Escape":
49
+ handleAction(onClose);
50
+ break;
51
+ default:
52
+ onUnhandledKeyDown?.(event);
53
+ break;
54
+ }
55
+ };
56
+ };
57
+ /**
58
+ * @internal
59
+ */
60
+ export const makeDialogKeyboardNavigation = ({ onFocusPrevious, onFocusNext, onClose, onUnhandledKeyDown, shouldPreventDefault = true, shouldStopPropagation = true, }) => {
61
+ return (event) => {
62
+ switch (event.code) {
63
+ case "Tab":
64
+ if (event.shiftKey) {
65
+ handleAction(event, onFocusPrevious, {
66
+ shouldPreventDefault,
67
+ shouldStopPropagation,
68
+ });
69
+ }
70
+ else {
71
+ handleAction(event, onFocusNext, {
72
+ shouldPreventDefault,
73
+ shouldStopPropagation,
74
+ });
75
+ }
37
76
  break;
38
77
  case "Escape":
39
- handleAction(event, onClose);
78
+ handleAction(event, onClose, {
79
+ shouldPreventDefault,
80
+ shouldStopPropagation,
81
+ });
40
82
  break;
41
83
  default:
42
84
  onUnhandledKeyDown?.(event);
@@ -1 +1 @@
1
- {"version":3,"file":"keyboardNavigation.js","sourceRoot":"","sources":["../../../src/@ui/@utils/keyboardNavigation.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAIhC;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EACvC,eAAe,EACf,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,kBAAkB,EAElB,oBAAoB,GAAG,IAAI,EAC3B,qBAAqB,GAAG,IAAI,GAc/B,EAAE,EAAE;IACD,SAAS,YAAY,CAAC,KAA0B,EAAE,MAAyC;QACvF,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QAED,oBAAoB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QAC/C,qBAAqB,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAEjD,MAAM,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,KAA0B,EAAE,EAAE;QAClC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,WAAW;gBACZ,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBACjC,MAAM;YACV,KAAK,SAAS;gBACV,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;gBACrC,MAAM;YACV,KAAK,WAAW;gBACZ,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;gBAClC,MAAM;YACV,KAAK,YAAY;gBACb,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;gBAClC,MAAM;YACV,KAAK,MAAM;gBACP,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;gBAClC,MAAM;YACV,KAAK,KAAK;gBACN,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBACjC,MAAM;YACV,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACR,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAC9B,MAAM;YACV,KAAK,QAAQ;gBACT,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC7B,MAAM;YACV;gBACI,kBAAkB,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC5B,MAAM;QACd,CAAC;IACL,CAAC,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"keyboardNavigation.js","sourceRoot":"","sources":["../../../src/@ui/@utils/keyboardNavigation.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,20 @@ export interface UiFocusTrapProps {
12
12
  * If a ref is provided, the focus will be returned to the element referenced by the ref.
13
13
  */
14
14
  returnFocusTo?: React.RefObject<HTMLElement> | string;
15
+ /**
16
+ * If true, the focus will be returned to the element referenced by the returnFocusTo prop when the trap is unmounted.
17
+ */
18
+ returnFocusOnUnmount?: boolean;
15
19
  /**
16
20
  * Specify the element that should receive focus when the trap is activated.
17
21
  * If not provided, the first focusable element will be focused.
18
22
  */
19
23
  initialFocus?: React.RefObject<HTMLElement> | string;
24
+ /**
25
+ * Specify a custom keyboard navigation handler.
26
+ * If not provided, the default keyboard navigation handler will be used.
27
+ */
28
+ customKeyboardNavigationHandler?: (event: KeyboardEvent) => void;
20
29
  }
21
30
  /**
22
31
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"UiFocusTrap.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiFocusTrap/UiFocusTrap.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACtD;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;CACxD;AAwDD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAwGlD,CAAC"}
1
+ {"version":3,"file":"UiFocusTrap.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiFocusTrap/UiFocusTrap.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAM9D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAEtD;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACrD;;;OAGG;IACH,+BAA+B,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CACpE;AA8FD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAgFlD,CAAC"}
@@ -1,33 +1,12 @@
1
1
  // (C) 2025 GoodData Corporation
2
- import React, { useEffect, useRef } from "react";
3
- const focusableElementsSelector = [
4
- // Interactive form elements
5
- 'button:not(:disabled):not([aria-disabled="true"])',
6
- 'input:not(:disabled):not([aria-disabled="true"])',
7
- 'select:not(:disabled):not([aria-disabled="true"])',
8
- 'textarea:not(:disabled):not([aria-disabled="true"])',
9
- // Links and areas
10
- "a[href]",
11
- "area[href]",
12
- // Custom elements with tabindex
13
- '[tabindex]:not([tabindex="-1"]):not(:disabled):not([aria-disabled="true"])',
14
- // Media with controls
15
- "audio[controls]",
16
- "video[controls]",
17
- // Editable content
18
- '[contenteditable]:not([contenteditable="false"])',
19
- ].join(",");
20
- const getFocusableElements = (element) => {
21
- const focusableElements = element?.querySelectorAll(focusableElementsSelector);
22
- const firstElement = focusableElements?.[0];
23
- const lastElement = focusableElements?.[focusableElements.length - 1];
24
- return { focusableElements, firstElement, lastElement };
25
- };
2
+ import React, { useEffect, useRef, useCallback } from "react";
3
+ import { makeDialogKeyboardNavigation } from "../@utils/keyboardNavigation.js";
4
+ import { getFocusableElements } from "../../utils/domUtilities.js";
26
5
  /**
27
6
  * Attempts to find a truly focusable element by trying subsequent elements in the focusable elements collection
28
7
  * This is useful when some elements are focusable but not reachable (e.g., out of viewport or disabled)
29
8
  */
30
- const focusAndEnsureReachableElement = (initialElement, focusableElements, shiftKey) => {
9
+ const focusAndEnsureReachableElement = (initialElement, focusableElements, direction) => {
31
10
  let nextElement = initialElement;
32
11
  let attempts = 0;
33
12
  const maxAttempts = focusableElements.length;
@@ -35,66 +14,88 @@ const focusAndEnsureReachableElement = (initialElement, focusableElements, shift
35
14
  while (nextElement !== document.activeElement && attempts < maxAttempts) {
36
15
  attempts++;
37
16
  const currentIndex = Array.from(focusableElements).indexOf(nextElement);
38
- const nextIndex = shiftKey
17
+ const nextIndex = direction === "backward"
39
18
  ? (currentIndex - 1 + focusableElements.length) % focusableElements.length
40
19
  : (currentIndex + 1) % focusableElements.length;
41
20
  nextElement = focusableElements[nextIndex];
42
21
  nextElement?.focus();
43
22
  }
44
23
  };
24
+ const useDialogKeyboardNavigation = (trapRef, returnFocus, onDeactivate) => {
25
+ const handleFocusNavigation = useCallback((focusableElements, direction) => {
26
+ const elements = Array.from(focusableElements);
27
+ const currentIndex = elements.indexOf(document.activeElement);
28
+ const firstElement = elements[0];
29
+ const lastElement = elements[elements.length - 1];
30
+ let nextElement;
31
+ if (direction === "backward") {
32
+ // Shift + Tab - moving backwards
33
+ nextElement = currentIndex <= 0 ? lastElement : elements[currentIndex - 1];
34
+ }
35
+ else {
36
+ // Tab - moving forwards
37
+ nextElement =
38
+ currentIndex === elements.length - 1 ? firstElement : elements[currentIndex + 1];
39
+ }
40
+ if (nextElement) {
41
+ focusAndEnsureReachableElement(nextElement, focusableElements, direction);
42
+ }
43
+ }, []);
44
+ const keyboardNavigationHandler = useCallback((event) => {
45
+ if (!trapRef.current?.contains(event.target)) {
46
+ return;
47
+ }
48
+ return makeDialogKeyboardNavigation({
49
+ onFocusNext: () => {
50
+ const { focusableElements } = getFocusableElements(trapRef.current);
51
+ if (!focusableElements?.length) {
52
+ return;
53
+ }
54
+ handleFocusNavigation(focusableElements, "forward");
55
+ },
56
+ onFocusPrevious: () => {
57
+ const { focusableElements } = getFocusableElements(trapRef.current);
58
+ if (!focusableElements?.length) {
59
+ return;
60
+ }
61
+ handleFocusNavigation(focusableElements, "backward");
62
+ },
63
+ onClose: () => {
64
+ onDeactivate?.();
65
+ returnFocus();
66
+ },
67
+ })(event);
68
+ }, [handleFocusNavigation, onDeactivate, returnFocus, trapRef]);
69
+ return {
70
+ keyboardNavigationHandler,
71
+ };
72
+ };
45
73
  /**
46
74
  * @internal
47
75
  */
48
- export const UiFocusTrap = ({ children, onDeactivate, returnFocusTo, autofocusOnOpen = false, initialFocus, }) => {
76
+ export const UiFocusTrap = ({ children, onDeactivate, returnFocusTo: returnFocusToProp, autofocusOnOpen = false, returnFocusOnUnmount = false, initialFocus, customKeyboardNavigationHandler, }) => {
49
77
  const trapRef = useRef(null);
50
- const defaultReturnFocusToRef = useRef(null);
51
- const returnFocus = React.useCallback(() => {
78
+ const defaultReturnFocusToRef = useRef(document.activeElement);
79
+ const returnFocusTo = returnFocusToProp ?? defaultReturnFocusToRef;
80
+ const returnFocus = useCallback(() => {
52
81
  if (typeof returnFocusTo === "string") {
53
82
  const element = document.getElementById(returnFocusTo);
54
- if (element) {
55
- element.focus();
56
- }
83
+ element?.focus();
57
84
  }
58
85
  else if (returnFocusTo?.current) {
59
86
  returnFocusTo.current.focus();
60
87
  }
61
- else if (defaultReturnFocusToRef.current) {
62
- defaultReturnFocusToRef.current.focus();
63
- }
64
88
  }, [returnFocusTo]);
89
+ const { keyboardNavigationHandler } = useDialogKeyboardNavigation(trapRef, returnFocus, onDeactivate);
90
+ const keyboardHandler = customKeyboardNavigationHandler ?? keyboardNavigationHandler;
65
91
  useEffect(() => {
66
- const getNextElement = (focusableElements, firstElement, lastElement, shiftKey) => {
67
- const elements = Array.from(focusableElements);
68
- const currentIndex = elements.indexOf(document.activeElement);
69
- if (shiftKey) {
70
- // Shift + Tab - moving backwards
71
- return currentIndex <= 0 ? lastElement : elements[currentIndex - 1];
72
- }
73
- else {
74
- // Tab - moving forwards
75
- return currentIndex === elements.length - 1 ? firstElement : elements[currentIndex + 1];
76
- }
77
- };
78
- const handleKeyDown = (event) => {
79
- // get fresh focusable elements set as they could change in meantime
80
- const { firstElement, lastElement, focusableElements } = getFocusableElements(trapRef.current);
81
- if (event.key === "Tab" && trapRef.current?.contains(event.target)) {
82
- const nextElement = getNextElement(focusableElements, firstElement, lastElement, event.shiftKey);
83
- if (nextElement) {
84
- event.preventDefault();
85
- event.stopPropagation();
86
- focusAndEnsureReachableElement(nextElement, focusableElements, event.shiftKey);
87
- }
88
- }
89
- else if (event.key === "Escape") {
90
- if (onDeactivate) {
91
- onDeactivate();
92
- }
92
+ return () => {
93
+ if (returnFocusOnUnmount) {
93
94
  returnFocus();
94
95
  }
95
96
  };
96
- document.addEventListener("keydown", handleKeyDown);
97
- defaultReturnFocusToRef.current = document.activeElement;
97
+ }, [returnFocusOnUnmount, returnFocus]);
98
+ useEffect(() => {
98
99
  const focusTrapTimeout = setTimeout(() => {
99
100
  if (!autofocusOnOpen) {
100
101
  return;
@@ -106,10 +107,8 @@ export const UiFocusTrap = ({ children, onDeactivate, returnFocusTo, autofocusOn
106
107
  if (initialFocus) {
107
108
  if (typeof initialFocus === "string") {
108
109
  const element = document.getElementById(initialFocus);
109
- if (element) {
110
- element.focus();
111
- return;
112
- }
110
+ element?.focus();
111
+ return;
113
112
  }
114
113
  else if (initialFocus.current) {
115
114
  initialFocus.current.focus();
@@ -121,11 +120,15 @@ export const UiFocusTrap = ({ children, onDeactivate, returnFocusTo, autofocusOn
121
120
  firstElement?.focus();
122
121
  }, 100);
123
122
  return () => {
124
- document.removeEventListener("keydown", handleKeyDown);
125
123
  clearTimeout(focusTrapTimeout);
126
- returnFocus();
127
124
  };
128
- }, [onDeactivate, returnFocusTo, autofocusOnOpen, initialFocus, returnFocus]);
125
+ }, [autofocusOnOpen, initialFocus, returnFocus, keyboardHandler, returnFocusOnUnmount]);
126
+ useEffect(() => {
127
+ document.addEventListener("keydown", keyboardHandler);
128
+ return () => {
129
+ document.removeEventListener("keydown", keyboardHandler);
130
+ };
131
+ }, [keyboardHandler]);
129
132
  return (React.createElement("div", { className: "gd-focus-trap", ref: trapRef }, children));
130
133
  };
131
134
  //# sourceMappingURL=UiFocusTrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UiFocusTrap.js","sourceRoot":"","sources":["../../../src/@ui/UiFocusTrap/UiFocusTrap.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UiFocusTrap.js","sourceRoot":"","sources":["../../../src/@ui/UiFocusTrap/UiFocusTrap.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialogBase.d.ts","sourceRoot":"","sources":["../../src/Dialog/ConfirmDialogBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAMvD;;GAEG;AACH,eAAO,MAAM,iBAAiB,qDA4G5B,CAAC"}
1
+ {"version":3,"file":"ConfirmDialogBase.d.ts","sourceRoot":"","sources":["../../src/Dialog/ConfirmDialogBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAMvD;;GAEG;AACH,eAAO,MAAM,iBAAiB,qDA6G5B,CAAC"}
@@ -31,7 +31,7 @@ export const ConfirmDialogBase = React.memo(function ConfirmDialogBase({ display
31
31
  isModal: true,
32
32
  };
33
33
  }, [dialogBaseProps.accessibilityConfig, headline, titleElementIdWhenNotSet]);
34
- return (React.createElement(DialogBase, { ...dialogBaseProps, className: dialogClasses, displayCloseButton: displayCloseButton, accessibilityConfig: accessibilityConfig, initialFocus: initialFocus, returnFocusTo: returnFocusTo },
34
+ return (React.createElement(DialogBase, { ...dialogBaseProps, className: dialogClasses, displayCloseButton: displayCloseButton, accessibilityConfig: accessibilityConfig, initialFocus: initialFocus, returnFocusTo: returnFocusTo, returnFocusAfterClose: true },
35
35
  React.createElement("div", { className: "gd-dialog-header-wrapper" },
36
36
  headerLeftButtonRenderer?.(),
37
37
  React.createElement("div", { className: headerClassNames },
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialogBase.js","sourceRoot":"","sources":["../../src/Dialog/ConfirmDialogBase.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfirmDialogBase.js","sourceRoot":"","sources":["../../src/Dialog/ConfirmDialogBase.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogBase.d.ts","sourceRoot":"","sources":["../../src/Dialog/DialogBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAgBhD;;GAEG;AACH,eAAO,MAAM,UAAU,8CA6DrB,CAAC"}
1
+ {"version":3,"file":"DialogBase.d.ts","sourceRoot":"","sources":["../../src/Dialog/DialogBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAgBhD;;GAEG;AACH,eAAO,MAAM,UAAU,8CA+DrB,CAAC"}
@@ -15,7 +15,7 @@ const checkKeyHandler = (event, key, handler) => {
15
15
  /**
16
16
  * @internal
17
17
  */
18
- export const DialogBase = React.memo(function DialogBase({ submitOnEnterKey, onCancel, onSubmit, displayCloseButton, onClose, accessibilityConfig, className, autofocusOnOpen = true, children, CloseButton = DialogCloseButton, initialFocus, returnFocusTo, shouldCloseOnEscape = false, }) {
18
+ export const DialogBase = React.memo(function DialogBase({ submitOnEnterKey, onCancel, onSubmit, displayCloseButton, onClose, accessibilityConfig, className, autofocusOnOpen = true, children, CloseButton = DialogCloseButton, initialFocus, returnFocusTo, shouldCloseOnEscape = false, returnFocusAfterClose = false, }) {
19
19
  const handleKeyDown = React.useCallback((event) => {
20
20
  // don't call onSubmit when pressing enter key on input fields
21
21
  const isEnterKeyDownOnInputField = event.key === "Enter" && isElementTextInput(event.target);
@@ -29,7 +29,7 @@ export const DialogBase = React.memo(function DialogBase({ submitOnEnterKey, onC
29
29
  checkKeyHandler(event, "Escape", shouldCloseOnEscape ? onClose : onCancel);
30
30
  }, [onCancel, onSubmit, onClose, submitOnEnterKey, shouldCloseOnEscape]);
31
31
  const dialogClasses = cx("overlay", "gd-dialog", className);
32
- return (React.createElement(UiFocusTrap, { initialFocus: initialFocus, returnFocusTo: returnFocusTo, autofocusOnOpen: autofocusOnOpen },
32
+ return (React.createElement(UiFocusTrap, { initialFocus: initialFocus, returnFocusTo: returnFocusTo, autofocusOnOpen: autofocusOnOpen, returnFocusOnUnmount: returnFocusAfterClose },
33
33
  React.createElement("div", { onKeyDown: handleKeyDown, role: "dialog", "aria-modal": accessibilityConfig?.isModal, "aria-labelledby": accessibilityConfig?.titleElementId, "aria-describedby": accessibilityConfig?.descriptionElementId },
34
34
  React.createElement("div", { className: dialogClasses },
35
35
  displayCloseButton ? (React.createElement(CloseButton, { onClose: onClose ?? onCancel, accessibilityConfig: accessibilityConfig })) : null,
@@ -1 +1 @@
1
- {"version":3,"file":"DialogBase.js","sourceRoot":"","sources":["../../src/Dialog/DialogBase.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAErF,MAAM,eAAe,GAAG,CAAC,KAA0B,EAAE,GAAW,EAAE,OAAoB,EAAQ,EAAE;IAC5F,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO;IACX,CAAC;IAED,KAAK,CAAC,cAAc,EAAE,CAAC;IACvB,KAAK,CAAC,eAAe,EAAE,CAAC;IAExB,OAAO,EAAE,CAAC;AACd,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAmB,SAAS,UAAU,CAAC,EACvE,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,mBAAmB,EACnB,SAAS,EACT,eAAe,GAAG,IAAI,EACtB,QAAQ,EACR,WAAW,GAAG,iBAAiB,EAC/B,YAAY,EACZ,aAAa,EACb,mBAAmB,GAAG,KAAK,GAC9B;IACG,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACnC,CAAC,KAAK,EAAE,EAAE;QACN,8DAA8D;QAC9D,MAAM,0BAA0B,GAAG,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7F,IAAI,gBAAgB,KAAK,KAAK,IAAI,0BAA0B,EAAE,CAAC;YAC3D,OAAO;QACX,CAAC;QAED,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9F,OAAO;QACX,CAAC;QAED,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC1C,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/E,CAAC,EACD,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CACvE,CAAC;IAEF,MAAM,aAAa,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAE5D,OAAO,CACH,oBAAC,WAAW,IACR,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe;QAEhC,6BACI,SAAS,EAAE,aAAa,EACxB,IAAI,EAAE,QAAQ,gBACF,mBAAmB,EAAE,OAAO,qBACvB,mBAAmB,EAAE,cAAc,sBAClC,mBAAmB,EAAE,oBAAoB;YAE3D,6BAAK,SAAS,EAAE,aAAa;gBACxB,kBAAkB,CAAC,CAAC,CAAC,CAClB,oBAAC,WAAW,IACR,OAAO,EAAE,OAAO,IAAI,QAAQ,EAC5B,mBAAmB,EAAE,mBAAmB,GAC1C,CACL,CAAC,CAAC,CAAC,IAAI;gBAEP,QAAQ,CACP,CACJ,CACI,CACjB,CAAC;AACN,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"DialogBase.js","sourceRoot":"","sources":["../../src/Dialog/DialogBase.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAErF,MAAM,eAAe,GAAG,CAAC,KAA0B,EAAE,GAAW,EAAE,OAAoB,EAAQ,EAAE;IAC5F,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO;IACX,CAAC;IAED,KAAK,CAAC,cAAc,EAAE,CAAC;IACvB,KAAK,CAAC,eAAe,EAAE,CAAC;IAExB,OAAO,EAAE,CAAC;AACd,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAmB,SAAS,UAAU,CAAC,EACvE,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,mBAAmB,EACnB,SAAS,EACT,eAAe,GAAG,IAAI,EACtB,QAAQ,EACR,WAAW,GAAG,iBAAiB,EAC/B,YAAY,EACZ,aAAa,EACb,mBAAmB,GAAG,KAAK,EAC3B,qBAAqB,GAAG,KAAK,GAChC;IACG,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACnC,CAAC,KAAK,EAAE,EAAE;QACN,8DAA8D;QAC9D,MAAM,0BAA0B,GAAG,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7F,IAAI,gBAAgB,KAAK,KAAK,IAAI,0BAA0B,EAAE,CAAC;YAC3D,OAAO;QACX,CAAC;QAED,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9F,OAAO;QACX,CAAC;QAED,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC1C,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/E,CAAC,EACD,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CACvE,CAAC;IAEF,MAAM,aAAa,GAAG,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAE5D,OAAO,CACH,oBAAC,WAAW,IACR,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,oBAAoB,EAAE,qBAAqB;QAE3C,6BACI,SAAS,EAAE,aAAa,EACxB,IAAI,EAAE,QAAQ,gBACF,mBAAmB,EAAE,OAAO,qBACvB,mBAAmB,EAAE,cAAc,sBAClC,mBAAmB,EAAE,oBAAoB;YAE3D,6BAAK,SAAS,EAAE,aAAa;gBACxB,kBAAkB,CAAC,CAAC,CAAC,CAClB,oBAAC,WAAW,IACR,OAAO,EAAE,OAAO,IAAI,QAAQ,EAC5B,mBAAmB,EAAE,mBAAmB,GAC1C,CACL,CAAC,CAAC,CAAC,IAAI;gBAEP,QAAQ,CACP,CACJ,CACI,CACjB,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import React from "react";
2
2
  import { IDialogCloseButtonProps } from "./typings.js";
3
- export declare const DialogCloseButton: React.NamedExoticComponent<IDialogCloseButtonProps>;
3
+ export declare const DialogCloseButton: React.FC<IDialogCloseButtonProps>;
4
4
  //# sourceMappingURL=DialogCloseButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DialogCloseButton.d.ts","sourceRoot":"","sources":["../../src/Dialog/DialogCloseButton.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,eAAO,MAAM,iBAAiB,qDAc5B,CAAC"}
1
+ {"version":3,"file":"DialogCloseButton.d.ts","sourceRoot":"","sources":["../../src/Dialog/DialogCloseButton.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AA0BvD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAI/D,CAAC"}
@@ -1,8 +1,17 @@
1
1
  // (C) 2022-2025 GoodData Corporation
2
2
  import React from "react";
3
3
  import { Button } from "../Button/index.js";
4
- export const DialogCloseButton = React.memo(function DialogCloseButton({ accessibilityConfig, onClose, }) {
4
+ import { useIntl } from "react-intl";
5
+ import { IntlWrapper } from "@gooddata/sdk-ui";
6
+ const DialogCloseButtonCore = React.memo(function DialogCloseButton({ accessibilityConfig, onClose, }) {
7
+ const intl = useIntl();
8
+ const closeButtonAccessibilityConfig = {
9
+ ariaLabel: intl.formatMessage({ id: "dialogs.closeLabel" }),
10
+ ...accessibilityConfig?.closeButton,
11
+ };
5
12
  return (React.createElement("div", { className: "gd-dialog-close" },
6
- React.createElement(Button, { className: "gd-button-link gd-button-icon-only gd-icon-cross s-dialog-close-button", value: "", onClick: onClose, accessibilityConfig: accessibilityConfig?.closeButton })));
13
+ React.createElement(Button, { className: "gd-button-link gd-button-icon-only gd-icon-cross s-dialog-close-button", value: "", onClick: onClose, accessibilityConfig: closeButtonAccessibilityConfig })));
7
14
  });
15
+ export const DialogCloseButton = (props) => (React.createElement(IntlWrapper, null,
16
+ React.createElement(DialogCloseButtonCore, { ...props })));
8
17
  //# sourceMappingURL=DialogCloseButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DialogCloseButton.js","sourceRoot":"","sources":["../../src/Dialog/DialogCloseButton.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAA0B,SAAS,iBAAiB,CAAC,EAC5F,mBAAmB,EACnB,OAAO,GACV;IACG,OAAO,CACH,6BAAK,SAAS,EAAC,iBAAiB;QAC5B,oBAAC,MAAM,IACH,SAAS,EAAC,wEAAwE,EAClF,KAAK,EAAC,EAAE,EACR,OAAO,EAAE,OAAO,EAChB,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,GACvD,CACA,CACT,CAAC;AACN,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"DialogCloseButton.js","sourceRoot":"","sources":["../../src/Dialog/DialogCloseButton.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,MAAM,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAA0B,SAAS,iBAAiB,CAAC,EACzF,mBAAmB,EACnB,OAAO,GACV;IACG,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,8BAA8B,GAAG;QACnC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,CAAC;QAC3D,GAAG,mBAAmB,EAAE,WAAW;KACtC,CAAC;IAEF,OAAO,CACH,6BAAK,SAAS,EAAC,iBAAiB;QAC5B,oBAAC,MAAM,IACH,SAAS,EAAC,wEAAwE,EAClF,KAAK,EAAC,EAAE,EACR,OAAO,EAAE,OAAO,EAChB,mBAAmB,EAAE,8BAA8B,GACrD,CACA,CACT,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAsC,CAAC,KAAK,EAAE,EAAE,CAAC,CAC3E,oBAAC,WAAW;IACR,oBAAC,qBAAqB,OAAK,KAAK,GAAI,CAC1B,CACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExportDialogBase.d.ts","sourceRoot":"","sources":["../../src/Dialog/ExportDialogBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAKtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,oDAiE3B,CAAC"}
1
+ {"version":3,"file":"ExportDialogBase.d.ts","sourceRoot":"","sources":["../../src/Dialog/ExportDialogBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAMtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,oDAuE3B,CAAC"}
@@ -5,20 +5,25 @@ import noop from "lodash/noop.js";
5
5
  import { Checkbox } from "../Form/index.js";
6
6
  import { ConfirmDialogBase } from "./ConfirmDialogBase.js";
7
7
  import { usePropState } from "@gooddata/sdk-ui";
8
+ import { useIdPrefixed } from "../utils/useId.js";
8
9
  /**
9
10
  * @internal
10
11
  */
11
12
  export const ExportDialogBase = React.memo(function ExportDialogBase({ className, displayCloseButton = true, isPositive = true, isSubmitDisabled = false, headline = "Export to XLSX", cancelButtonText = "Cancel", submitButtonText = "Export", onCancel = noop, onSubmit = noop, filterContextText = "Include applied filters", filterContextTitle = "INSIGHT CONTEXT", filterContextVisible = true, mergeHeadersDisabled = false, mergeHeadersText = "Keep attribute cells merged", mergeHeadersTitle = "CELLS", includeFilterContext = true, mergeHeaders = true, }) {
12
13
  const [isFilterContextIncluded, setIsFilterContextIncluded] = usePropState(includeFilterContext);
13
14
  const [shouldMergeHeaders, setShouldMergeHeaders] = usePropState(mergeHeaders);
15
+ const mergeHeadersId = useIdPrefixed("mergeHeaders");
14
16
  const handleSubmit = React.useCallback(() => {
15
17
  onSubmit({
16
18
  includeFilterContext: isFilterContextIncluded,
17
19
  mergeHeaders: shouldMergeHeaders,
18
20
  });
19
21
  }, [isFilterContextIncluded, onSubmit, shouldMergeHeaders]);
20
- return (React.createElement(ConfirmDialogBase, { className: cx("gd-export-dialog", className), displayCloseButton: displayCloseButton, isPositive: isPositive, isSubmitDisabled: isSubmitDisabled, headline: headline, cancelButtonText: cancelButtonText, submitButtonText: submitButtonText, onCancel: onCancel, onSubmit: handleSubmit },
21
- React.createElement(Checkbox, { disabled: mergeHeadersDisabled, name: "gs.dialog.export.checkbox.mergeHeaders", text: mergeHeadersText, title: mergeHeadersTitle, value: shouldMergeHeaders, onChange: setShouldMergeHeaders }),
22
- filterContextVisible ? (React.createElement(Checkbox, { name: "gs.dialog.export.checkbox.includeFilterContext", text: filterContextText, title: filterContextTitle, value: isFilterContextIncluded, onChange: setIsFilterContextIncluded })) : null));
22
+ return (React.createElement(ConfirmDialogBase, { className: cx("gd-export-dialog", className), displayCloseButton: displayCloseButton, isPositive: isPositive, isSubmitDisabled: isSubmitDisabled, headline: headline, cancelButtonText: cancelButtonText, submitButtonText: submitButtonText, onCancel: onCancel, onSubmit: handleSubmit, initialFocus: mergeHeadersId },
23
+ React.createElement("h4", null, mergeHeadersTitle),
24
+ React.createElement(Checkbox, { id: mergeHeadersId, disabled: mergeHeadersDisabled, name: "gs.dialog.export.checkbox.mergeHeaders", text: mergeHeadersText, value: shouldMergeHeaders, onChange: setShouldMergeHeaders }),
25
+ filterContextVisible ? (React.createElement(React.Fragment, null,
26
+ React.createElement("h4", null, filterContextTitle),
27
+ React.createElement(Checkbox, { name: "gs.dialog.export.checkbox.includeFilterContext", text: filterContextText, value: isFilterContextIncluded, onChange: setIsFilterContextIncluded }))) : null));
23
28
  });
24
29
  //# sourceMappingURL=ExportDialogBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExportDialogBase.js","sourceRoot":"","sources":["../../src/Dialog/ExportDialogBase.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAyB,SAAS,gBAAgB,CAAC,EACzF,SAAS,EACT,kBAAkB,GAAG,IAAI,EACzB,UAAU,GAAG,IAAI,EACjB,gBAAgB,GAAG,KAAK,EAExB,QAAQ,GAAG,gBAAgB,EAC3B,gBAAgB,GAAG,QAAQ,EAC3B,gBAAgB,GAAG,QAAQ,EAE3B,QAAQ,GAAG,IAAI,EACf,QAAQ,GAAG,IAAI,EAEf,iBAAiB,GAAG,yBAAyB,EAC7C,kBAAkB,GAAG,iBAAiB,EACtC,oBAAoB,GAAG,IAAI,EAE3B,oBAAoB,GAAG,KAAK,EAC5B,gBAAgB,GAAG,6BAA6B,EAChD,iBAAiB,GAAG,OAAO,EAE3B,oBAAoB,GAAG,IAAI,EAC3B,YAAY,GAAG,IAAI,GACtB;IACG,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,YAAY,CAAC,oBAAoB,CAAC,CAAC;IACjG,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAE/E,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACxC,QAAQ,CAAC;YACL,oBAAoB,EAAE,uBAAuB;YAC7C,YAAY,EAAE,kBAAkB;SACnC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,uBAAuB,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAE5D,OAAO,CACH,oBAAC,iBAAiB,IACd,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,SAAS,CAAC,EAC5C,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY;QAEtB,oBAAC,QAAQ,IACL,QAAQ,EAAE,oBAAoB,EAC9B,IAAI,EAAC,wCAAwC,EAC7C,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,qBAAqB,GACjC;QACD,oBAAoB,CAAC,CAAC,CAAC,CACpB,oBAAC,QAAQ,IACL,IAAI,EAAC,gDAAgD,EACrD,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,0BAA0B,GACtC,CACL,CAAC,CAAC,CAAC,IAAI,CACQ,CACvB,CAAC;AACN,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ExportDialogBase.js","sourceRoot":"","sources":["../../src/Dialog/ExportDialogBase.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAyB,SAAS,gBAAgB,CAAC,EACzF,SAAS,EACT,kBAAkB,GAAG,IAAI,EACzB,UAAU,GAAG,IAAI,EACjB,gBAAgB,GAAG,KAAK,EAExB,QAAQ,GAAG,gBAAgB,EAC3B,gBAAgB,GAAG,QAAQ,EAC3B,gBAAgB,GAAG,QAAQ,EAE3B,QAAQ,GAAG,IAAI,EACf,QAAQ,GAAG,IAAI,EAEf,iBAAiB,GAAG,yBAAyB,EAC7C,kBAAkB,GAAG,iBAAiB,EACtC,oBAAoB,GAAG,IAAI,EAE3B,oBAAoB,GAAG,KAAK,EAC5B,gBAAgB,GAAG,6BAA6B,EAChD,iBAAiB,GAAG,OAAO,EAE3B,oBAAoB,GAAG,IAAI,EAC3B,YAAY,GAAG,IAAI,GACtB;IACG,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,YAAY,CAAC,oBAAoB,CAAC,CAAC;IACjG,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAE/E,MAAM,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC;IAErD,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACxC,QAAQ,CAAC;YACL,oBAAoB,EAAE,uBAAuB;YAC7C,YAAY,EAAE,kBAAkB;SACnC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,uBAAuB,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAE5D,OAAO,CACH,oBAAC,iBAAiB,IACd,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,SAAS,CAAC,EAC5C,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,cAAc;QAE5B,gCAAK,iBAAiB,CAAM;QAC5B,oBAAC,QAAQ,IACL,EAAE,EAAE,cAAc,EAClB,QAAQ,EAAE,oBAAoB,EAC9B,IAAI,EAAC,wCAAwC,EAC7C,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,qBAAqB,GACjC;QACD,oBAAoB,CAAC,CAAC,CAAC,CACpB;YACI,gCAAK,kBAAkB,CAAM;YAC7B,oBAAC,QAAQ,IACL,IAAI,EAAC,gDAAgD,EACrD,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,0BAA0B,GACtC,CACH,CACN,CAAC,CAAC,CAAC,IAAI,CACQ,CACvB,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AddGranteeBase.d.ts","sourceRoot":"","sources":["../../../../src/Dialog/ShareDialog/ShareDialogBase/AddGranteeBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAQ3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgEzD,CAAC"}
1
+ {"version":3,"file":"AddGranteeBase.d.ts","sourceRoot":"","sources":["../../../../src/Dialog/ShareDialog/ShareDialogBase/AddGranteeBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAQ3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA2DzD,CAAC"}
@@ -15,11 +15,7 @@ export const AddGranteeBase = (props) => {
15
15
  const backButtonRenderer = useCallback(() => {
16
16
  return React.createElement(BackButton, { onClick: onBackClick, className: "s-share-dialog-navigate-back" });
17
17
  }, [onBackClick]);
18
- return (React.createElement(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-users s-gd-share-add-grantees", displayCloseButton: true, isPositive: true, isSubmitDisabled: !isDirty, headline: intl.formatMessage({ id: "shareDialog.share.grantee.add.info" }), cancelButtonText: intl.formatMessage({ id: "cancel" }), submitButtonText: intl.formatMessage({ id: "shareDialog.share.grantee.share" }), submitOnEnterKey: false, shouldCloseOnEscape: true, returnFocusTo: previouslyFocusedRef, onCancel: onBackClick, onSubmit: onSubmit, onClose: onCancel, headerLeftButtonRenderer: backButtonRenderer, accessibilityConfig: {
19
- closeButton: {
20
- ariaLabel: intl.formatMessage({ id: "dialogs.closeLabel" }),
21
- },
22
- } },
18
+ return (React.createElement(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-users s-gd-share-add-grantees", displayCloseButton: true, isPositive: true, isSubmitDisabled: !isDirty, headline: intl.formatMessage({ id: "shareDialog.share.grantee.add.info" }), cancelButtonText: intl.formatMessage({ id: "cancel" }), submitButtonText: intl.formatMessage({ id: "shareDialog.share.grantee.share" }), submitOnEnterKey: false, shouldCloseOnEscape: true, returnFocusTo: previouslyFocusedRef, onCancel: onBackClick, onSubmit: onSubmit, onClose: onCancel, headerLeftButtonRenderer: backButtonRenderer },
23
19
  React.createElement(AddGranteeContent, { currentUserPermissions: currentUserPermissions, isSharedObjectLocked: isSharedObjectLocked, currentUser: currentUser, addedGrantees: addedGrantees, appliedGrantees: appliedGrantees, areGranularPermissionsSupported: areGranularPermissionsSupported, sharedObjectRef: sharedObjectRef, onAddUserOrGroups: onAddUserOrGroups, onDelete: onDelete, onGranularGranteeChange: onGranularGranteeChange }),
24
20
  React.createElement(ContentDivider, null)));
25
21
  };