@gooddata/sdk-ui-kit 10.37.0 → 10.38.0-alpha.2
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.
- package/esm/@ui/UiListbox/UiListbox.d.ts.map +1 -1
- package/esm/@ui/UiListbox/UiListbox.js +3 -1
- package/esm/@ui/UiListbox/UiListbox.js.map +1 -1
- package/esm/@ui/UiMenu/hooks.d.ts.map +1 -1
- package/esm/@ui/UiMenu/hooks.js +3 -1
- package/esm/@ui/UiMenu/hooks.js.map +1 -1
- package/esm/@ui/UiTreeview/UITreeviewItem.d.ts +2 -1
- package/esm/@ui/UiTreeview/UITreeviewItem.d.ts.map +1 -1
- package/esm/@ui/UiTreeview/UITreeviewItem.js +14 -10
- package/esm/@ui/UiTreeview/UITreeviewItem.js.map +1 -1
- package/esm/@ui/UiTreeview/UiTreeViewEvents.d.ts +24 -0
- package/esm/@ui/UiTreeview/UiTreeViewEvents.d.ts.map +1 -0
- package/esm/@ui/UiTreeview/UiTreeViewEvents.js +37 -0
- package/esm/@ui/UiTreeview/UiTreeViewEvents.js.map +1 -0
- package/esm/@ui/UiTreeview/UiTreeview.d.ts.map +1 -1
- package/esm/@ui/UiTreeview/UiTreeview.js +22 -13
- package/esm/@ui/UiTreeview/UiTreeview.js.map +1 -1
- package/esm/@ui/UiTreeview/eventEmitter.d.ts +33 -0
- package/esm/@ui/UiTreeview/eventEmitter.d.ts.map +1 -0
- package/esm/@ui/UiTreeview/eventEmitter.js +44 -0
- package/esm/@ui/UiTreeview/eventEmitter.js.map +1 -0
- package/esm/@ui/UiTreeview/types.d.ts +11 -7
- package/esm/@ui/UiTreeview/types.d.ts.map +1 -1
- package/esm/@ui/UiTreeview/utils.d.ts.map +1 -1
- package/esm/@ui/UiTreeview/utils.js +5 -1
- package/esm/@ui/UiTreeview/utils.js.map +1 -1
- package/esm/Bubble/index.d.ts +1 -1
- package/esm/Bubble/index.d.ts.map +1 -1
- package/esm/Bubble/index.js +0 -2
- package/esm/Bubble/index.js.map +1 -1
- package/esm/Button/Button.d.ts.map +1 -1
- package/esm/Button/Button.js +2 -2
- package/esm/Button/Button.js.map +1 -1
- package/esm/Button/index.d.ts +1 -1
- package/esm/Button/index.d.ts.map +1 -1
- package/esm/Button/index.js +0 -2
- package/esm/Button/index.js.map +1 -1
- package/esm/Button/typings.d.ts +1 -0
- package/esm/Button/typings.d.ts.map +1 -1
- package/esm/ColorPicker/index.d.ts +1 -1
- package/esm/ColorPicker/index.d.ts.map +1 -1
- package/esm/ColorPicker/index.js +1 -2
- package/esm/ColorPicker/index.js.map +1 -1
- package/esm/DateDatasets/index.d.ts +1 -1
- package/esm/DateDatasets/index.d.ts.map +1 -1
- package/esm/DateDatasets/index.js +1 -2
- package/esm/DateDatasets/index.js.map +1 -1
- package/esm/Datepicker/Datepicker.js +1 -1
- package/esm/Datepicker/Datepicker.js.map +1 -1
- package/esm/Dialog/DialogList/DialogListItemBasic.d.ts.map +1 -1
- package/esm/Dialog/DialogList/DialogListItemBasic.js +6 -2
- package/esm/Dialog/DialogList/DialogListItemBasic.js.map +1 -1
- package/esm/Dialog/StylingEditorDialog/StylingEditorDialog.js +2 -2
- package/esm/Dialog/StylingEditorDialog/StylingEditorDialog.js.map +1 -1
- package/esm/Dialog/index.d.ts +1 -1
- package/esm/Dialog/index.d.ts.map +1 -1
- package/esm/Dialog/index.js +0 -2
- package/esm/Dialog/index.js.map +1 -1
- package/esm/Dropdown/Dropdown.d.ts.map +1 -1
- package/esm/Dropdown/Dropdown.js +12 -2
- package/esm/Dropdown/Dropdown.js.map +1 -1
- package/esm/Dropdown/DropdownButton.d.ts +3 -1
- package/esm/Dropdown/DropdownButton.d.ts.map +1 -1
- package/esm/Dropdown/DropdownButton.js +6 -5
- package/esm/Dropdown/DropdownButton.js.map +1 -1
- package/esm/EditableLabel/index.d.ts +1 -1
- package/esm/EditableLabel/index.d.ts.map +1 -1
- package/esm/EditableLabel/index.js +1 -2
- package/esm/EditableLabel/index.js.map +1 -1
- package/esm/FilterLabel/index.d.ts +1 -1
- package/esm/FilterLabel/index.d.ts.map +1 -1
- package/esm/FilterLabel/index.js +1 -2
- package/esm/FilterLabel/index.js.map +1 -1
- package/esm/FlexDimensions/index.d.ts +1 -1
- package/esm/FlexDimensions/index.d.ts.map +1 -1
- package/esm/FlexDimensions/index.js +1 -2
- package/esm/FlexDimensions/index.js.map +1 -1
- package/esm/Form/index.d.ts +1 -1
- package/esm/Form/index.d.ts.map +1 -1
- package/esm/Form/index.js +1 -2
- package/esm/Form/index.js.map +1 -1
- package/esm/Header/index.d.ts +1 -1
- package/esm/Header/index.d.ts.map +1 -1
- package/esm/Header/index.js +1 -2
- package/esm/Header/index.js.map +1 -1
- package/esm/Icon/icons/Reset.d.ts.map +1 -1
- package/esm/Icon/icons/Reset.js +3 -3
- package/esm/Icon/icons/Reset.js.map +1 -1
- package/esm/List/guid.d.ts.map +1 -1
- package/esm/List/guid.js +3 -1
- package/esm/List/guid.js.map +1 -1
- package/esm/Messages/index.d.ts +1 -1
- package/esm/Messages/index.d.ts.map +1 -1
- package/esm/Messages/index.js +1 -2
- package/esm/Messages/index.js.map +1 -1
- package/esm/Overlay/index.d.ts +1 -1
- package/esm/Overlay/index.d.ts.map +1 -1
- package/esm/Overlay/index.js +0 -2
- package/esm/Overlay/index.js.map +1 -1
- package/esm/RecurrenceForm/RepeatTypeSelect.d.ts.map +1 -1
- package/esm/RecurrenceForm/RepeatTypeSelect.js +3 -1
- package/esm/RecurrenceForm/RepeatTypeSelect.js.map +1 -1
- package/esm/ScrollGradient/index.d.ts +1 -1
- package/esm/ScrollGradient/index.d.ts.map +1 -1
- package/esm/ScrollGradient/index.js +0 -2
- package/esm/ScrollGradient/index.js.map +1 -1
- package/esm/SettingItem/index.d.ts +1 -1
- package/esm/SettingItem/index.d.ts.map +1 -1
- package/esm/SettingItem/index.js +0 -2
- package/esm/SettingItem/index.js.map +1 -1
- package/esm/Spinner/index.d.ts +1 -1
- package/esm/Spinner/index.d.ts.map +1 -1
- package/esm/Spinner/index.js +1 -2
- package/esm/Spinner/index.js.map +1 -1
- package/esm/TextAreaWithSubmit/index.d.ts +1 -1
- package/esm/TextAreaWithSubmit/index.d.ts.map +1 -1
- package/esm/TextAreaWithSubmit/index.js +1 -2
- package/esm/TextAreaWithSubmit/index.js.map +1 -1
- package/esm/Timepicker/index.d.ts +1 -1
- package/esm/Timepicker/index.d.ts.map +1 -1
- package/esm/Timepicker/index.js +1 -2
- package/esm/Timepicker/index.js.map +1 -1
- package/esm/index.d.ts +6 -5
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -4
- package/esm/index.js.map +1 -1
- package/esm/responsive/index.d.ts +1 -1
- package/esm/responsive/index.d.ts.map +1 -1
- package/esm/responsive/index.js +0 -2
- package/esm/responsive/index.js.map +1 -1
- package/esm/sdk-ui-kit.d.ts +45 -10
- package/package.json +13 -13
- package/src/@ui/UiListbox/UiListbox.scss +2 -0
- package/src/@ui/UiTreeview/UiTreeview.scss +1 -1
- package/styles/css/main.css +3 -1
- package/styles/css/main.css.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UiListbox.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiListbox/UiListbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAgE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG1G;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,mBAAmB,EAAE,cAAc,EAAE,EAC3D,KAAK,EAEL,UAAU,EACV,cAAc,EACd,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,kBAAyC,EAEzC,cAAc,EAEd,wBAAmE,EACnE,mBAAyD,EAEzD,kCAAkC,EAClC,mCAAmC,EACnC,mBAA0B,EAC1B,mBAA2B,EAC3B,SAAiB,EAEjB,cAAc,GACjB,EAAE,cAAc,CAAC,mBAAmB,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,SAAS,
|
1
|
+
{"version":3,"file":"UiListbox.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiListbox/UiListbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAgE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG1G;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,mBAAmB,EAAE,cAAc,EAAE,EAC3D,KAAK,EAEL,UAAU,EACV,cAAc,EACd,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,kBAAyC,EAEzC,cAAc,EAEd,wBAAmE,EACnE,mBAAyD,EAEzD,kCAAkC,EAClC,mCAAmC,EACnC,mBAA0B,EAC1B,mBAA2B,EAC3B,SAAiB,EAEjB,cAAc,GACjB,EAAE,cAAc,CAAC,mBAAmB,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,SAAS,CA0LvE"}
|
@@ -49,7 +49,9 @@ export function UiListbox({ items, dataTestId, itemDataTestId, width, maxWidth,
|
|
49
49
|
return;
|
50
50
|
}
|
51
51
|
onSelect?.(item, mods ?? {});
|
52
|
-
|
52
|
+
if (shouldCloseOnSelect) {
|
53
|
+
onClose?.();
|
54
|
+
}
|
53
55
|
}, [onClose, onSelect, shouldCloseOnSelect]);
|
54
56
|
const contextRef = useAutoupdateRef({
|
55
57
|
itemRefs,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UiListbox.js","sourceRoot":"","sources":["../../../src/@ui/UiListbox/UiListbox.tsx"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"UiListbox.js","sourceRoot":"","sources":["../../../src/@ui/UiListbox/UiListbox.tsx"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiMenu/hooks.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,cAAc,EAEd,WAAW,EACX,eAAe,EAElB,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,MAAM,OAAO,CAAC;AAiB1B;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,eAAe,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,EAChF,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACxB,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9C,iBAAiB,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAChD,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiMenu/hooks.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,cAAc,EAEd,WAAW,EACX,eAAe,EAElB,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,MAAM,OAAO,CAAC;AAiB1B;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,eAAe,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,EAChF,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EACxB,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,EAC9C,iBAAiB,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,GAChD,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CA+KtB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,eAAe,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EAC5F,gBAAgB,EAChB,kCAAkC,EAClC,mCAAmC,EACnC,kBAAkB,GACrB,EAAE;IACC,gBAAgB,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,kBAAkB,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAC5D,kCAAkC,CAAC,EAAE,OAAO,CAAC;IAC7C,mCAAmC,CAAC,EAAE,OAAO,CAAC;CACjD,iDA+FA;AAED,wBAAgB,6BAA6B,CAAC,CAAC,SAAS,eAAe,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EACzG,gBAAgB,EAChB,kCAAkC,EAClC,mCAAmC,EACnC,kBAAkB,GACrB,EAAE;IACC,gBAAgB,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,kBAAkB,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAC5D,kCAAkC,CAAC,EAAE,OAAO,CAAC;IAC7C,mCAAmC,CAAC,EAAE,OAAO,CAAC;CACjD,iDAkCA"}
|
package/esm/@ui/UiMenu/hooks.js
CHANGED
@@ -63,7 +63,9 @@ export function useUiMenuContextValue(props, menuComponentRef, itemsContainerRef
|
|
63
63
|
// If there is no submenu, select the item
|
64
64
|
if (!item.subItems) {
|
65
65
|
onSelect?.(item);
|
66
|
-
|
66
|
+
if (shouldCloseOnSelect) {
|
67
|
+
onClose?.();
|
68
|
+
}
|
67
69
|
return;
|
68
70
|
}
|
69
71
|
// Otherwise focus the first focusable child
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/@ui/UiMenu/hooks.tsx"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/@ui/UiMenu/hooks.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAUrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACH,0BAA0B,EAC1B,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,eAAe,EACf,gBAAgB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,4BAA4B,EAC5B,mCAAmC,GACtC,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EACH,wBAAwB,EACxB,+BAA+B,GAClC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACjC,KAAwB,EACxB,gBAA8C,EAC9C,iBAA+C;IAE/C,MAAM,EACF,KAAK,EAEL,cAAc,EAEd,QAAQ,EACR,aAAa,EACb,OAAO,EAEP,eAAe,EAAE,wBAAwB,GAAG,4BAA4B,EACxE,sBAAsB,EAAE,+BAA+B,GAAG,mCAAmC,EAC7F,UAAU,EAAE,mBAAmB,GAAG,uBAAuB,EACzD,SAAS,EAAE,kBAAkB,GAAG,sBAAsB,EACtD,UAAU,EAAE,mBAAmB,GAAG,mBAAmB,EACrD,WAAW,EAAE,oBAAoB,GAAG,wBAAwB,EAC5D,kBAAkB,EAAE,2BAA2B,GAAG,+BAA+B,EACjF,OAAO,EAAE,gBAAgB,GAAG,oBAAoB,EAEhD,mBAAmB,GAAG,IAAI,EAC1B,mBAAmB,GAAG,IAAI,EAE1B,cAAc,EAEd,WAAW,GACd,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAEpF,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CACrC,CAAC,IAAqB,EAAE,EAAE;QACtB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;YACpE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,mBAAmB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACnD,CAAC,EACD,CAAC,mBAAmB,CAAC,CACxB,CAAC;IAEF,MAAM,CAAC,SAAS,EAAE,qBAAqB,CAAC,GAAG,KAAK,CAAC,QAAQ,CACrD,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAC1D,CAAC;IAEF,MAAM,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,GAAG,KAAK,CAAC,QAAQ,CAC1E,SAAS,CACZ,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAClC,CAAC,GAAG,IAAI,EAAE,EAAE;QACR,qBAAqB,CAAC,GAAG,IAAI,CAAC,CAAC;QAC/B,4FAA4F;QAC5F,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC,EACD,CAAC,gBAAgB,CAAC,CACrB,CAAC;IAEF,MAAM,WAAW,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7F,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACpC,IAAI,wBAAwB,EAAE,CAAC;YAC3B,OAAO,wBAAwB,CAAC;QACpC,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,wBAAwB,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/D,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEnD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,YAAY,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACnD,aAAa,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACJ,aAAa,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAClC,CAAC;IACL,CAAC,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;IAEzC,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,IAA8B,EAAE,EAAE;QAC/B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3B,OAAO;QACX,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,2BAA2B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,OAAO;QACX,CAAC;QAED,0CAA0C;QAC1C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;YACjB,IAAI,mBAAmB,EAAE,CAAC;gBACtB,OAAO,EAAE,EAAE,CAAC;YAChB,CAAC;YACD,OAAO;QACX,CAAC;QAED,4CAA4C;QAC5C,MAAM,WAAW,GAAG,gBAAgB,CAAC,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAC1F,eAAe,CAClB,CAAC,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO;QACX,CAAC;QAED,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC7B,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC,EACD,CAAC,eAAe,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,CAAC,CACnG,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAChC,CAAC,IAAI,EAAE,EAAE;QACL,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;YACnE,CAAC,CAAC,QAAQ,cAAc,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE;YACxC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjB,CAAC,EACD,CAAC,cAAc,CAAC,EAAE,CAAC,CACtB,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAClC,CAAC,OAAO,EAAE,EAAE;QACR,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO;QACX,CAAC;QAED,IACI,WAAW,KAAK,UAAU;YAC1B,iBAAiB,CAAC,OAAO;YACzB,iBAAiB,CAAC,OAAO,CAAC,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,YAAY,EACjF,CAAC;YACC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrE,CAAC;IACL,CAAC,EACD,CAAC,WAAW,EAAE,iBAAiB,CAAC,CACnC,CAAC;IAEF,OAAO;QACH,WAAW;QACX,cAAc;QACd,YAAY;QACZ,WAAW;QACX,2BAA2B;QAC3B,wBAAwB;QACxB,OAAO;QACP,KAAK;QACL,QAAQ,EAAE,gBAAgB;QAC1B,cAAc;QACd,eAAe;QACf,UAAU;QACV,YAAY;QACZ,gBAAgB;QAChB,iBAAiB;QAEjB,sBAAsB,EAAE,+BAA+B;QACvD,eAAe,EAAE,wBAAwB;QAEzC,UAAU,EAAE,mBAAmB;QAC/B,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE,mBAAmB;QAC/B,kBAAkB,EAAE,2BAA2B;QAC/C,WAAW,EAAE,oBAAoB;QACjC,OAAO,EAAE,gBAAgB;QACzB,aAAa,EAAE,IAAI;QACnB,WAAW;KACd,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAgE,EAC5F,gBAAgB,EAChB,kCAAkC,EAClC,mCAAmC,EACnC,kBAAkB,GAMrB;IACG,MAAM,cAAc,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAE1D,OAAO,0BAA0B,CAC7B;QACI,eAAe,EAAE,GAAG,EAAE;YAClB,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAExE,YAAY,CACR,CAAC,MAAM,EAAE,EAAE,CACP,0BAA0B,CAAC;gBACvB,SAAS,EAAE,UAAU;gBACrB,MAAM,EAAE,MAAM;gBACd,KAAK;gBACL,eAAe;aAClB,CAAC,EAAE,EAAE,IAAI,MAAM,CACvB,CAAC;QACN,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YACd,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAExE,YAAY,CACR,CAAC,MAAM,EAAE,EAAE,CACP,0BAA0B,CAAC;gBACvB,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,MAAM;gBACd,KAAK;gBACL,eAAe;aAClB,CAAC,EAAE,EAAE,IAAI,MAAM,CACvB,CAAC;QACN,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAExE,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;gBACpB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACvB,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;gBAC7D,CAAC;gBAED,OAAO,gBAAgB,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YAC5F,CAAC,CAAC,CAAC;QACP,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YACd,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAExE,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;gBACpB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACvB,OAAO,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;gBAC5E,CAAC;gBAED,OAAO,CAAC,GAAG,gBAAgB,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;qBAC7D,OAAO,EAAE;qBACT,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACnC,CAAC,CAAC,CAAC;QACP,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE;YACX,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YACzD,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAEzD,IACI,CAAC,WAAW,EAAE,IAAI,KAAK,aAAa,IAAI,WAAW,EAAE,IAAI,KAAK,SAAS,CAAC;gBACxE,CAAC,WAAW,EAAE,IAAI,KAAK,aAAa,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;gBAC9D,CAAC,WAAW,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAC7D,CAAC;gBACC,OAAO;YACX,CAAC;YAED,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAEvD,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;gBACpB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACvB,OAAO,MAAM,CAAC;gBAClB,CAAC;gBAED,OAAO,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,MAAM,CAAC;YACjE,CAAC,CAAC,CAAC;QACP,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACV,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACvC,CAAC;QACD,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;YAC1B,kBAAkB,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;KACJ,EACD;QACI,oBAAoB,EAAE,kCAAkC;QACxD,qBAAqB,EAAE,mCAAmC;KAC7D,CACJ,CAAC;AACN,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAgE,EACzG,gBAAgB,EAChB,kCAAkC,EAClC,mCAAmC,EACnC,kBAAkB,GAMrB;IACG,MAAM,cAAc,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAE1D,OAAO,0BAA0B,CAC7B;QACI,YAAY,EAAE,GAAG,EAAE;YACf,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAElE,IAAI,cAAc,EAAE,CAAC;gBACjB,OAAO;YACX,CAAC;YAED,MAAM,EAAE,2BAA2B,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC;YAE/D,2BAA2B,CAAC,SAAS,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACV,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAElE,IAAI,cAAc,EAAE,CAAC;gBACjB,OAAO;YACX,CAAC;YAED,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACvC,CAAC;QACD,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;YAC1B,kBAAkB,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;KACJ,EACD;QACI,oBAAoB,EAAE,kCAAkC;QACxD,qBAAqB,EAAE,mCAAmC;KAC7D,CACJ,CAAC;AACN,CAAC"}
|
@@ -12,7 +12,8 @@ interface UITreeviewItemProps<Levels extends [], Level> {
|
|
12
12
|
selectedItemId?: string;
|
13
13
|
itemDataTestId?: string;
|
14
14
|
isCompact?: boolean;
|
15
|
-
|
15
|
+
onSelect: (event: React.MouseEvent | React.KeyboardEvent, path: number[], item: UiStaticTreeView<Level | LevelTypesUnion<Levels>>) => void;
|
16
|
+
onHover: (path: number[]) => void;
|
16
17
|
ItemComponent: React.ComponentType<IUiTreeviewItemProps<Level | LevelTypesUnion<Levels>>>;
|
17
18
|
}
|
18
19
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UITreeviewItem.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UITreeviewItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC;;GAEG;AACH,UAAU,mBAAmB,CAAC,MAAM,SAAS,EAAE,EAAE,KAAK;IAClD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,gBAAgB,CAAC,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,QAAQ,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,
|
1
|
+
{"version":3,"file":"UITreeviewItem.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UITreeviewItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC;;GAEG;AACH,UAAU,mBAAmB,CAAC,MAAM,SAAS,EAAE,EAAE,KAAK;IAClD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,gBAAgB,CAAC,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,QAAQ,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,CACN,KAAK,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,EAC7C,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,gBAAgB,CAAC,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,KACtD,IAAI,CAAC;IACV,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAClC,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;CAC7F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,qBAiGjG"}
|
@@ -5,34 +5,38 @@ import { e } from "./treeviewBem.js";
|
|
5
5
|
* @internal
|
6
6
|
*/
|
7
7
|
export function UITreeviewItem(props) {
|
8
|
-
const { getState, focusedItem, selectedItemId, itemDataTestId,
|
8
|
+
const { getState, focusedItem, selectedItemId, itemDataTestId, onSelect, onHover, ItemComponent, isCompact, } = props;
|
9
9
|
const [state, setState] = getState(props.path);
|
10
10
|
const { item, children } = props.item;
|
11
|
+
const childCount = children?.length ?? 0;
|
11
12
|
const level = props.path.length;
|
12
13
|
const isFocused = item === focusedItem.item;
|
13
14
|
const isSelected = item.id === selectedItemId;
|
14
15
|
const isExpanded = state.expanded;
|
15
|
-
const
|
16
|
+
const handleToggle = useCallback((event, expanded) => {
|
16
17
|
setState({
|
17
18
|
...state,
|
18
19
|
expanded,
|
19
20
|
});
|
20
|
-
|
21
|
-
|
21
|
+
event.stopPropagation();
|
22
|
+
event.preventDefault();
|
22
23
|
}, [setState, state]);
|
23
|
-
const
|
24
|
-
|
25
|
-
}, [props.item, props.path,
|
24
|
+
const handleSelect = useCallback((event) => {
|
25
|
+
onSelect(event, props.path, props.item);
|
26
|
+
}, [props.item, props.path, onSelect]);
|
27
|
+
const handleHover = useCallback(() => {
|
28
|
+
onHover(props.path);
|
29
|
+
}, [props.path, onHover]);
|
26
30
|
return (React.createElement("div", { className: e("treeitem") },
|
27
|
-
React.createElement("div", { className: e("treeitem__container"), "data-testid": itemDataTestId, role: "treeitem", "aria-level": level, "aria-expanded": isExpanded
|
28
|
-
React.createElement(ItemComponent, { item: item, type:
|
31
|
+
React.createElement("div", { className: e("treeitem__container"), "data-testid": itemDataTestId, role: "treeitem", "aria-level": level, "aria-expanded": isExpanded, "aria-selected": isFocused, "aria-disabled": item.isDisabled },
|
32
|
+
React.createElement(ItemComponent, { item: item, type: childCount ? "group" : "leaf", childCount: childCount, isCompact: isCompact, isFocused: isFocused, isSelected: isSelected, isExpanded: isExpanded, level: level, onSelect: handleSelect, onToggle: handleToggle, onHover: handleHover, defaultStyle: defineVariables(level), defaultClassName: e("item", {
|
29
33
|
isFocused,
|
30
34
|
isSelected,
|
31
35
|
isCompact,
|
32
36
|
isExpanded,
|
33
37
|
isDisabled: !!item.isDisabled,
|
34
38
|
}) })),
|
35
|
-
children?.length && isExpanded ? (React.createElement("div", { role: "group", className: e("treeitem__children") }, children.map((child, i) => (React.createElement(UITreeviewItem, { ItemComponent: ItemComponent,
|
39
|
+
children?.length && isExpanded ? (React.createElement("div", { role: "group", className: e("treeitem__children") }, children.map((child, i) => (React.createElement(UITreeviewItem, { ItemComponent: ItemComponent, onSelect: onSelect, onHover: onHover, getState: getState, focusedItem: focusedItem, selectedItemId: selectedItemId, itemDataTestId: itemDataTestId, isCompact: isCompact, item: child, key: i, path: [...props.path, i] }))))) : null));
|
36
40
|
}
|
37
41
|
function defineVariables(level) {
|
38
42
|
return { "--ui-treeview-item-level": level };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UITreeviewItem.js","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UITreeviewItem.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;
|
1
|
+
{"version":3,"file":"UITreeviewItem.js","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UITreeviewItem.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import React from "react";
|
2
|
+
/**
|
3
|
+
* @internal
|
4
|
+
*/
|
5
|
+
export type UiTreeViewEvents = {
|
6
|
+
keydown: React.KeyboardEvent;
|
7
|
+
};
|
8
|
+
/**
|
9
|
+
* @internal
|
10
|
+
*/
|
11
|
+
export type UiTreeViewEventType = keyof UiTreeViewEvents;
|
12
|
+
/**
|
13
|
+
* @internal
|
14
|
+
*/
|
15
|
+
export declare function UiTreeViewEventsProvider({ children }: React.PropsWithChildren): React.JSX.Element;
|
16
|
+
/**
|
17
|
+
* @internal
|
18
|
+
*/
|
19
|
+
export declare function useUiTreeViewEventPublisher<T extends UiTreeViewEventType>(eventType: T): (event: UiTreeViewEvents[T]) => void;
|
20
|
+
/**
|
21
|
+
* @internal
|
22
|
+
*/
|
23
|
+
export declare function useUiTreeViewEventSubscriber<T extends UiTreeViewEventType>(eventType: T, handler: (event: UiTreeViewEvents[T]) => void): void;
|
24
|
+
//# sourceMappingURL=UiTreeViewEvents.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"UiTreeViewEvents.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UiTreeViewEvents.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAG3F;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,gBAAgB,CAAC;AAIzD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB,qBAK7E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,mBAAmB,EAAE,SAAS,EAAE,CAAC,WAGvE,gBAAgB,CAAC,CAAC,CAAC,UAKlC;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,CAAC,SAAS,mBAAmB,EACtE,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI,QAahD"}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
// (C) 2025 GoodData Corporation
|
2
|
+
import React, { createContext, useCallback, useContext, useEffect, useState } from "react";
|
3
|
+
import { EventEmitter } from "./eventEmitter.js";
|
4
|
+
const EventsContext = createContext(null);
|
5
|
+
/**
|
6
|
+
* @internal
|
7
|
+
*/
|
8
|
+
export function UiTreeViewEventsProvider({ children }) {
|
9
|
+
// Only create the emitter once
|
10
|
+
const [emitter] = useState(() => new EventEmitter());
|
11
|
+
return React.createElement(EventsContext.Provider, { value: emitter }, children);
|
12
|
+
}
|
13
|
+
/**
|
14
|
+
* @internal
|
15
|
+
*/
|
16
|
+
export function useUiTreeViewEventPublisher(eventType) {
|
17
|
+
const emitter = useContext(EventsContext);
|
18
|
+
return useCallback((event) => {
|
19
|
+
emitter?.emit(eventType, event);
|
20
|
+
}, [eventType, emitter]);
|
21
|
+
}
|
22
|
+
/**
|
23
|
+
* @internal
|
24
|
+
*/
|
25
|
+
export function useUiTreeViewEventSubscriber(eventType, handler) {
|
26
|
+
const emitter = useContext(EventsContext);
|
27
|
+
useEffect(() => {
|
28
|
+
if (!emitter) {
|
29
|
+
return undefined;
|
30
|
+
}
|
31
|
+
emitter.on(eventType, handler);
|
32
|
+
return () => {
|
33
|
+
emitter.off(eventType, handler);
|
34
|
+
};
|
35
|
+
}, [emitter, eventType, handler]);
|
36
|
+
}
|
37
|
+
//# sourceMappingURL=UiTreeViewEvents.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"UiTreeViewEvents.js","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UiTreeViewEvents.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAcjD,MAAM,aAAa,GAAG,aAAa,CAAwC,IAAI,CAAC,CAAC;AAEjF;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAE,QAAQ,EAA2B;IAC1E,+BAA+B;IAC/B,MAAM,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;IAErD,OAAO,oBAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,IAAG,QAAQ,CAA0B,CAAC;AACvF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAgC,SAAY;IACnF,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC1C,OAAO,WAAW,CACd,CAAC,KAA0B,EAAE,EAAE;QAC3B,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,CAAC,CACvB,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CACxC,SAAY,EACZ,OAA6C;IAE7C,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/B,OAAO,GAAG,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AACtC,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UiTreeview.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UiTreeview.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAQjF,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EAMzB,MAAM,YAAY,CAAC;
|
1
|
+
{"version":3,"file":"UiTreeview.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UiTreeview.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAQjF,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EAMzB,MAAM,YAAY,CAAC;AAcpB;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,qBAE3E;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,SAAS,OAAO,EAAE,EAAE,KAAK,EAAE,uBAAuB,CAAC,MAAM,CAAC,qBAEjG"}
|
@@ -8,6 +8,7 @@ import { b } from "./treeviewBem.js";
|
|
8
8
|
import { findPath, getItemOnFocusedPath, getRefOnFocusedPath, getParentPathIndex, getNextPathIndex, getPrevPathIndex, itemsState, } from "./utils.js";
|
9
9
|
import { UiTreeviewRoot } from "./UiTreeviewRoot.js";
|
10
10
|
import { UITreeviewItem } from "./UITreeviewItem.js";
|
11
|
+
import { useUiTreeViewEventSubscriber } from "./UiTreeViewEvents.js";
|
11
12
|
/**
|
12
13
|
* An accessible treeview component with static data that can be navigated by keyboard.
|
13
14
|
* This is component for tree where all items are same type.
|
@@ -48,24 +49,27 @@ function UiTreeview({ items, selectionMode = "groups-and-leafs", expandedMode =
|
|
48
49
|
useEffect(() => {
|
49
50
|
focusedItemNode?.item.scrollIntoView({ block: "nearest" });
|
50
51
|
}, [focusedItemNode]);
|
51
|
-
const onSelectHandle = useCallback((
|
52
|
-
|
52
|
+
const onSelectHandle = useCallback((event, path, item) => {
|
53
|
+
const isDisabled = !isDisabledFocusable && item?.item.isDisabled;
|
54
|
+
if (!item || isDisabled) {
|
53
55
|
return;
|
54
56
|
}
|
55
57
|
function doSelect() {
|
56
|
-
if (
|
57
|
-
onSelect?.(item.item
|
58
|
+
if (event.nativeEvent instanceof KeyboardEvent) {
|
59
|
+
onSelect?.(item.item, {
|
58
60
|
type: "keyboard",
|
59
|
-
newTab:
|
60
|
-
});
|
61
|
+
newTab: event.ctrlKey || event.metaKey,
|
62
|
+
}, event);
|
61
63
|
}
|
62
64
|
else {
|
63
|
-
onSelect?.(item.item
|
65
|
+
onSelect?.(item.item, {
|
64
66
|
type: "mouse",
|
65
|
-
newTab:
|
66
|
-
});
|
67
|
+
newTab: event.ctrlKey || event.metaKey || event.nativeEvent.button === 1,
|
68
|
+
}, event);
|
69
|
+
}
|
70
|
+
if (shouldCloseOnSelect) {
|
71
|
+
onClose?.();
|
67
72
|
}
|
68
|
-
shouldCloseOnSelect && onClose?.();
|
69
73
|
}
|
70
74
|
switch (selectionMode) {
|
71
75
|
case "groups-and-leafs":
|
@@ -79,7 +83,7 @@ function UiTreeview({ items, selectionMode = "groups-and-leafs", expandedMode =
|
|
79
83
|
break;
|
80
84
|
case "leafs-only": {
|
81
85
|
// Leaf has no children
|
82
|
-
if (!item.children) {
|
86
|
+
if (!item.children || item.children.length === 0) {
|
83
87
|
doSelect();
|
84
88
|
return;
|
85
89
|
}
|
@@ -92,7 +96,10 @@ function UiTreeview({ items, selectionMode = "groups-and-leafs", expandedMode =
|
|
92
96
|
break;
|
93
97
|
}
|
94
98
|
}
|
95
|
-
}, [getState, onClose, onSelect, selectionMode, shouldCloseOnSelect]);
|
99
|
+
}, [getState, onClose, onSelect, selectionMode, shouldCloseOnSelect, isDisabledFocusable]);
|
100
|
+
const onHoverHandle = useCallback((path) => {
|
101
|
+
setFocusedPath(path);
|
102
|
+
}, []);
|
96
103
|
const contextRef = useAutoupdateRef({
|
97
104
|
itemsRef,
|
98
105
|
items,
|
@@ -179,7 +186,9 @@ function UiTreeview({ items, selectionMode = "groups-and-leafs", expandedMode =
|
|
179
186
|
shouldKeyboardActionPreventDefault,
|
180
187
|
shouldKeyboardActionStopPropagation,
|
181
188
|
]);
|
189
|
+
// Handle outside keyboard events in the same way as internal keyboard events
|
190
|
+
useUiTreeViewEventSubscriber("keydown", handleKeyDown);
|
182
191
|
return (React.createElement("div", { className: b(), style: { width, maxWidth, maxHeight }, "data-testid": dataTestId },
|
183
|
-
React.createElement(UiTreeviewRoot, { handleKeyDown: handleKeyDown, ariaAttributes: ariaAttributes, focusedItem: focusedItem }, items.map((item, index) => (React.createElement(UITreeviewItem, { ItemComponent: ItemComponent,
|
192
|
+
React.createElement(UiTreeviewRoot, { handleKeyDown: handleKeyDown, ariaAttributes: ariaAttributes, focusedItem: focusedItem }, items.map((item, index) => (React.createElement(UITreeviewItem, { ItemComponent: ItemComponent, onSelect: onSelectHandle, onHover: onHoverHandle, getState: getState, focusedItem: focusedItem, selectedItemId: selectedItemId, itemDataTestId: itemDataTestId, isCompact: isCompact, item: item, key: index, path: [index] }))))));
|
184
193
|
}
|
185
194
|
//# sourceMappingURL=UiTreeview.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UiTreeview.js","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UiTreeview.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,8CAA8C,CAAC;AAC9F,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAUrC,OAAO,EACH,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"UiTreeview.js","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/UiTreeview.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,8CAA8C,CAAC;AAC9F,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAUrC,OAAO,EACH,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAErE;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAQ,KAAoC;IACxE,OAAO,oBAAC,UAAU,OAAgB,KAAK,GAAI,CAAC;AAChD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAA2B,KAAsC;IAC9F,OAAO,oBAAC,UAAU,OAAsB,KAAK,GAAI,CAAC;AACtD,CAAC;AAED,SAAS,UAAU,CAAkC,EACjD,KAAK,EACL,aAAa,GAAG,kBAAkB,EAClC,YAAY,GAAG,kBAAkB,EAEjC,UAAU,EACV,cAAc,EACd,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,kBAAkB,GAAG,IAAI,EAEzB,cAAc,EAEd,aAAa,GAAG,8BAA8B,EAE9C,kCAAkC,EAClC,mCAAmC,EACnC,mBAAmB,GAAG,IAAI,EAC1B,mBAAmB,GAAG,KAAK,EAC3B,SAAS,GAAG,KAAK,EAEjB,cAAc,GACc;IAC5B,MAAM,QAAQ,GAAG,MAAM,CAAe,EAAE,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAkC,EAAE,CAAC,EAAE;QACvE,QAAQ,EAAE,YAAY,KAAK,kBAAkB;KAChD,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,WAAW,CAC/B,CAAC,IAA0E,EAAE,EAAE;QAC3E,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,mBAAmB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACxD,CAAC,EACD,CAAC,mBAAmB,CAAC,CACxB,CAAC;IAEF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAW,GAAG,EAAE,CAC1D,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,eAAe,CAAC,CACnD,CAAC;IAEF,MAAM,WAAW,GAAG,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC7D,gCAAgC;IAChC,MAAM,eAAe,GAAG,mBAAmB,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC3E,SAAS,CAAC,GAAG,EAAE;QACX,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,cAAc,GAAG,WAAW,CAC9B,CAAC,KAA6C,EAAE,IAAc,EAAE,IAA8B,EAAE,EAAE;QAC9F,MAAM,UAAU,GAAG,CAAC,mBAAmB,IAAI,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;QACjE,IAAI,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QAED,SAAS,QAAQ;YACb,IAAI,KAAK,CAAC,WAAW,YAAY,aAAa,EAAE,CAAC;gBAC7C,QAAQ,EAAE,CACN,IAAI,CAAC,IAAI,EACT;oBACI,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;iBACzC,EACD,KAAK,CACR,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,QAAQ,EAAE,CACN,IAAI,CAAC,IAAI,EACT;oBACI,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;iBAC3E,EACD,KAAK,CACR,CAAC;YACN,CAAC;YACD,IAAI,mBAAmB,EAAE,CAAC;gBACtB,OAAO,EAAE,EAAE,CAAC;YAChB,CAAC;QACL,CAAC;QAED,QAAQ,aAAa,EAAE,CAAC;YACpB,KAAK,kBAAkB;gBACnB,QAAQ,EAAE,CAAC;gBACX,MAAM;YACV,KAAK,aAAa;gBACd,6CAA6C;gBAC7C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,QAAQ,EAAE,CAAC;gBACf,CAAC;gBACD,MAAM;YACV,KAAK,YAAY,CAAC,CAAC,CAAC;gBAChB,uBAAuB;gBACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/C,QAAQ,EAAE,CAAC;oBACX,OAAO;gBACX,CAAC;gBACD,2CAA2C;gBAC3C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACzC,QAAQ,CAAC;oBACL,GAAG,KAAK;oBACR,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ;iBAC5B,CAAC,CAAC;gBACH,MAAM;YACV,CAAC;QACL,CAAC;IACL,CAAC,EACD,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CACzF,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,IAAc,EAAE,EAAE;QACjD,cAAc,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,gBAAgB,CAAoC;QACnE,QAAQ;QACR,KAAK;QACL,OAAO;QACP,cAAc;QACd,QAAQ,EAAE,cAAc;QACxB,eAAe;QACf,cAAc;KACjB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CACzB,GAAG,EAAE,CACD,0BAA0B,CACtB;QACI,eAAe,EAAE,GAAG,EAAE;YAClB,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACxB,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;QACP,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YACd,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACxB,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;QACP,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,cAAc,CAAC,GAAG,EAAE;gBAChB,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;QACP,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YACd,cAAc,CAAC,GAAG,EAAE;gBAChB,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;QACP,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAChC,OAAO;YACX,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACjB,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACxB,OAAO,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;gBACxE,CAAC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC;oBACL,GAAG,KAAK;oBACR,QAAQ,EAAE,IAAI;iBACjB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnD,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACxB,OAAO,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;gBAC1E,CAAC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC;oBACL,GAAG,KAAK;oBACR,QAAQ,EAAE,KAAK;iBAClB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,IAAI,WAAW,EAAE,CAAC;gBACd,cAAc,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YAChD,CAAC;QACL,CAAC;QACD,OAAO;QACP,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;YAC1B,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC;KACJ,EACD;QACI,oBAAoB,EAAE,kCAAkC;QACxD,qBAAqB,EAAE,mCAAmC;KAC7D,CACJ,EACL;QACI,UAAU;QACV,WAAW;QACX,WAAW;QACX,QAAQ;QACR,eAAe;QACf,KAAK;QACL,OAAO;QACP,cAAc;QACd,kBAAkB;QAClB,kCAAkC;QAClC,mCAAmC;KACtC,CACJ,CAAC;IAEF,6EAA6E;IAC7E,4BAA4B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAEvD,OAAO,CACH,6BAAK,SAAS,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAe,UAAU;QAC/E,oBAAC,cAAc,IACX,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,WAAW,IAEvB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,oBAAC,cAAc,IACX,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,KAAK,EACV,IAAI,EAAE,CAAC,KAAK,CAAC,GACf,CACL,CAAC,CACW,CACf,CACT,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
type EventHandler<T> = (event: T) => void;
|
2
|
+
/**
|
3
|
+
* A simple strongly-typed event emitter.
|
4
|
+
*
|
5
|
+
* @internal
|
6
|
+
*
|
7
|
+
* @example
|
8
|
+
* ```
|
9
|
+
* type MyEvents = {
|
10
|
+
* keydown: React.KeyboardEvent;
|
11
|
+
* };
|
12
|
+
* const emitter = new EventEmitter<MyEvents>();
|
13
|
+
* emitter.on("keydown", (event) => { ... });
|
14
|
+
* emitter.emit("keydown", event);
|
15
|
+
* ```
|
16
|
+
*/
|
17
|
+
export declare class EventEmitter<Events extends Record<string, unknown>> {
|
18
|
+
private listeners;
|
19
|
+
/**
|
20
|
+
* Register an event handler for a specific event.
|
21
|
+
*/
|
22
|
+
on<K extends keyof Events>(event: K, handler: EventHandler<Events[K]>): void;
|
23
|
+
/**
|
24
|
+
* Remove a previously registered event handler.
|
25
|
+
*/
|
26
|
+
off<K extends keyof Events>(event: K, handler: EventHandler<Events[K]>): void;
|
27
|
+
/**
|
28
|
+
* Emit an event, calling all registered handlers with the provided data.
|
29
|
+
*/
|
30
|
+
emit<K extends keyof Events>(event: K, data: Events[K]): void;
|
31
|
+
}
|
32
|
+
export {};
|
33
|
+
//# sourceMappingURL=eventEmitter.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"eventEmitter.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/eventEmitter.ts"],"names":[],"mappings":"AAEA,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAY,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC5D,OAAO,CAAC,SAAS,CAA+E;IAEhG;;OAEG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAO5E;;OAEG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAO7E;;OAEG;IACH,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAGhE"}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
// (C) 2025 GoodData Corporation
|
2
|
+
/**
|
3
|
+
* A simple strongly-typed event emitter.
|
4
|
+
*
|
5
|
+
* @internal
|
6
|
+
*
|
7
|
+
* @example
|
8
|
+
* ```
|
9
|
+
* type MyEvents = {
|
10
|
+
* keydown: React.KeyboardEvent;
|
11
|
+
* };
|
12
|
+
* const emitter = new EventEmitter<MyEvents>();
|
13
|
+
* emitter.on("keydown", (event) => { ... });
|
14
|
+
* emitter.emit("keydown", event);
|
15
|
+
* ```
|
16
|
+
*/
|
17
|
+
export class EventEmitter {
|
18
|
+
listeners = Object.create(null);
|
19
|
+
/**
|
20
|
+
* Register an event handler for a specific event.
|
21
|
+
*/
|
22
|
+
on(event, handler) {
|
23
|
+
if (!this.listeners[event]) {
|
24
|
+
this.listeners[event] = new Set();
|
25
|
+
}
|
26
|
+
this.listeners[event].add(handler);
|
27
|
+
}
|
28
|
+
/**
|
29
|
+
* Remove a previously registered event handler.
|
30
|
+
*/
|
31
|
+
off(event, handler) {
|
32
|
+
this.listeners[event]?.delete(handler);
|
33
|
+
if (this.listeners[event]?.size === 0) {
|
34
|
+
delete this.listeners[event];
|
35
|
+
}
|
36
|
+
}
|
37
|
+
/**
|
38
|
+
* Emit an event, calling all registered handlers with the provided data.
|
39
|
+
*/
|
40
|
+
emit(event, data) {
|
41
|
+
this.listeners[event]?.forEach((handler) => handler(data));
|
42
|
+
}
|
43
|
+
}
|
44
|
+
//# sourceMappingURL=eventEmitter.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"eventEmitter.js","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/eventEmitter.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAIhC;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,YAAY;IACb,SAAS,GAA2D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEhG;;OAEG;IACH,EAAE,CAAyB,KAAQ,EAAE,OAAgC;QACjE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;QACtC,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,GAAG,CAAyB,KAAQ,EAAE,OAAgC;QAClE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,CAAyB,KAAQ,EAAE,IAAe;QAClD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC;CACJ"}
|
@@ -41,6 +41,7 @@ export interface IUiTreeViewItem<T> {
|
|
41
41
|
id: string;
|
42
42
|
stringTitle: string;
|
43
43
|
data: T;
|
44
|
+
url?: string;
|
44
45
|
icon?: IconType;
|
45
46
|
isDisabled?: boolean;
|
46
47
|
tooltip?: string;
|
@@ -56,10 +57,7 @@ export interface IUiStaticTreeViewProps<Level> extends IUiTreeViewProps<unknown[
|
|
56
57
|
/**
|
57
58
|
* @internal
|
58
59
|
*/
|
59
|
-
export type OnStaticSelectFn<Level> = (item: Level
|
60
|
-
type?: "mouse" | "keyboard";
|
61
|
-
newTab?: boolean;
|
62
|
-
}) => void;
|
60
|
+
export type OnStaticSelectFn<Level> = (item: IUiTreeViewItem<Level>, mods: IUiTreeViewSelectionMods, event: React.MouseEvent | React.KeyboardEvent) => void;
|
63
61
|
/**
|
64
62
|
* @internal
|
65
63
|
*/
|
@@ -71,10 +69,14 @@ export interface IUiLeveledTreeViewProps<Levels extends any[]> extends IUiTreeVi
|
|
71
69
|
/**
|
72
70
|
* @internal
|
73
71
|
*/
|
74
|
-
export type OnLeveledSelectFn<Levels extends any[]> = (item: LevelTypesUnion<Levels
|
72
|
+
export type OnLeveledSelectFn<Levels extends any[]> = (item: IUiTreeViewItem<LevelTypesUnion<Levels>>, mods: IUiTreeViewSelectionMods, event: React.MouseEvent | React.KeyboardEvent) => void;
|
73
|
+
/**
|
74
|
+
* @internal
|
75
|
+
*/
|
76
|
+
export interface IUiTreeViewSelectionMods {
|
75
77
|
type?: "mouse" | "keyboard";
|
76
78
|
newTab?: boolean;
|
77
|
-
}
|
79
|
+
}
|
78
80
|
/**
|
79
81
|
* @internal
|
80
82
|
*/
|
@@ -103,7 +105,7 @@ export interface IUiTreeviewContext<Levels extends any[], Level> {
|
|
103
105
|
items: UiLeveledTreeView<LevelTypesUnion<Levels>>[] | UiStaticTreeView<Level>[];
|
104
106
|
itemsRef: React.MutableRefObject<UiRefsTree[]>;
|
105
107
|
onClose: () => void;
|
106
|
-
onSelect: (
|
108
|
+
onSelect: (event: React.MouseEvent | React.KeyboardEvent, path: number[], item?: UiStaticTreeView<Level | LevelTypesUnion<Levels>>) => void;
|
107
109
|
isItemFocusable: (item?: UiStaticTreeView<Level> | UiStaticTreeView<LevelTypesUnion<Levels>>) => boolean;
|
108
110
|
setFocusedPath: React.Dispatch<React.SetStateAction<number[] | undefined>>;
|
109
111
|
selectedItemId: string | undefined;
|
@@ -113,6 +115,7 @@ export interface IUiTreeviewContext<Levels extends any[], Level> {
|
|
113
115
|
*/
|
114
116
|
export interface IUiTreeviewItemProps<T> {
|
115
117
|
type: "leaf" | "group";
|
118
|
+
childCount: number;
|
116
119
|
item: IUiTreeViewItem<T>;
|
117
120
|
defaultClassName: string;
|
118
121
|
defaultStyle: React.CSSProperties;
|
@@ -123,6 +126,7 @@ export interface IUiTreeviewItemProps<T> {
|
|
123
126
|
level: number;
|
124
127
|
onSelect: (e: React.MouseEvent | React.KeyboardEvent) => void;
|
125
128
|
onToggle: (e: React.MouseEvent | React.KeyboardEvent, state: boolean) => void;
|
129
|
+
onHover: (e: React.MouseEvent) => void;
|
126
130
|
}
|
127
131
|
/**
|
128
132
|
* @internal
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,OAAO,EAAE,EAAE,KAAK,SAAS,MAAM,GAAG,CAAC,IAAI,MAAM,SAAS;IAC5F,MAAM,OAAO;IACb,GAAG,MAAM,IAAI;CAChB,GACK;IACI,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;CAChE,GACD,KAAK,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEpF;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC5B,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IACzB,QAAQ,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,OAAO,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,MAAM,SAAS,OAAO,EAAE,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;AACjF;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,KAAK,CAAE,SAAQ,gBAAgB,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC;IACrF,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACnC,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;CACpE;
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/types.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEhF;;IAEI;AACJ,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,UAE9E;AAED;;IAEI;AACJ,wBAAgB,oBAAoB,CAAC,CAAC,EAClC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,WAAW,EAAE,MAAM,EAAE,GACtB,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAajC;AAED;;IAEI;AACJ,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,UAAU,GAAG,SAAS,CAatG;AAED,KAAK,UAAU,GAAG;IACd,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS;IAC3C,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC,CAAC;CACpF,CAAC;AAEF,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,eAAe,GAAG,SAAS,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC,CAAC;AAEvG;;IAEI;AACJ,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,GAAG,YAAY,CAexF;AAiCD;;IAEI;AACJ,wBAAgB,QAAQ,CAAC,CAAC,EACtB,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,GACzD,MAAM,EAAE,GAAG,SAAS,
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTreeview/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEhF;;IAEI;AACJ,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,UAE9E;AAED;;IAEI;AACJ,wBAAgB,oBAAoB,CAAC,CAAC,EAClC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,WAAW,EAAE,MAAM,EAAE,GACtB,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAajC;AAED;;IAEI;AACJ,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,UAAU,GAAG,SAAS,CAatG;AAED,KAAK,UAAU,GAAG;IACd,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS;IAC3C,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC,CAAC;CACpF,CAAC;AAEF,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,eAAe,GAAG,SAAS,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC,CAAC;AAEvG;;IAEI;AACJ,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,GAAG,YAAY,CAexF;AAiCD;;IAEI;AACJ,wBAAgB,QAAQ,CAAC,CAAC,EACtB,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,GACzD,MAAM,EAAE,GAAG,SAAS,CAkBtB;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAC9B,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,QAAQ,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACvC,IAAI,EAAE,MAAM,EAAE,EACd,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,GACzD,MAAM,EAAE,CAwBV;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAC9B,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,QAAQ,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACvC,IAAI,EAAE,MAAM,EAAE,EACd,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,GACzD,MAAM,EAAE,CAwBV;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAChC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC5B,QAAQ,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACvC,IAAI,EAAE,MAAM,EAAE,EACd,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,GACzD,MAAM,EAAE,CA0BV"}
|
@@ -84,7 +84,11 @@ export function findPath(items, id, isFocusableItem) {
|
|
84
84
|
if (items[i].item.id === id && isFocusableItem(items[i])) {
|
85
85
|
return [i];
|
86
86
|
}
|
87
|
-
const
|
87
|
+
const children = items[i].children;
|
88
|
+
if (!children) {
|
89
|
+
return [i];
|
90
|
+
}
|
91
|
+
const childPath = findPath(children, id, isFocusableItem);
|
88
92
|
if (childPath) {
|
89
93
|
return [i, ...childPath];
|
90
94
|
}
|