@workday/canvas-kit-react 9.0.0-alpha.415-next.17 → 9.0.0-alpha.416-next.18

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 (99) hide show
  1. package/collection/lib/useCursorListModel.tsx +0 -15
  2. package/collection/lib/useListItemRovingFocus.tsx +7 -0
  3. package/dist/commonjs/action-bar/lib/ActionBar.d.ts +124 -124
  4. package/dist/commonjs/action-bar/lib/ActionBar.d.ts.map +1 -1
  5. package/dist/commonjs/action-bar/lib/ActionBarItem.d.ts +12 -12
  6. package/dist/commonjs/action-bar/lib/ActionBarList.d.ts +12 -12
  7. package/dist/commonjs/action-bar/lib/ActionBarOverflowButton.d.ts +16 -16
  8. package/dist/commonjs/action-bar/lib/useActionBarModel.d.ts +52 -52
  9. package/dist/commonjs/breadcrumbs/lib/Breadcrumbs.d.ts +136 -136
  10. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsCurrentItem.d.ts +16 -16
  11. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsItem.d.ts +12 -12
  12. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsList.d.ts +8 -8
  13. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsMenu.d.ts +64 -64
  14. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsOverflowButton.d.ts +16 -16
  15. package/dist/commonjs/breadcrumbs/lib/hooks/useBreadcrumbsModel.d.ts +52 -52
  16. package/dist/commonjs/collection/lib/ListBox.d.ts +48 -48
  17. package/dist/commonjs/collection/lib/useCursorListModel.d.ts +44 -56
  18. package/dist/commonjs/collection/lib/useCursorListModel.d.ts.map +1 -1
  19. package/dist/commonjs/collection/lib/useCursorListModel.js +2 -15
  20. package/dist/commonjs/collection/lib/useGridModel.d.ts +44 -44
  21. package/dist/commonjs/collection/lib/useListItemAllowChildStrings.d.ts +4 -4
  22. package/dist/commonjs/collection/lib/useListItemRegister.d.ts +4 -4
  23. package/dist/commonjs/collection/lib/useListItemRovingFocus.d.ts +4 -4
  24. package/dist/commonjs/collection/lib/useListItemRovingFocus.d.ts.map +1 -1
  25. package/dist/commonjs/collection/lib/useListItemRovingFocus.js +6 -0
  26. package/dist/commonjs/collection/lib/useListItemSelect.d.ts +4 -4
  27. package/dist/commonjs/collection/lib/useListModel.d.ts +44 -44
  28. package/dist/commonjs/collection/lib/useListResetCursorOnBlur.d.ts +4 -4
  29. package/dist/commonjs/collection/lib/useOverflowListItemMeasure.d.ts +4 -4
  30. package/dist/commonjs/collection/lib/useOverflowListMeasure.d.ts +4 -4
  31. package/dist/commonjs/collection/lib/useOverflowListModel.d.ts +44 -44
  32. package/dist/commonjs/collection/lib/useOverflowListTarget.d.ts +4 -4
  33. package/dist/commonjs/collection/lib/useSelectionListModel.d.ts +44 -44
  34. package/dist/commonjs/menu/lib/Menu.d.ts +60 -60
  35. package/dist/commonjs/menu/lib/MenuCard.d.ts +8 -8
  36. package/dist/commonjs/menu/lib/MenuContextTarget.d.ts +12 -12
  37. package/dist/commonjs/menu/lib/MenuItem.d.ts +8 -8
  38. package/dist/commonjs/menu/lib/MenuList.d.ts +8 -8
  39. package/dist/commonjs/menu/lib/MenuPopper.d.ts +4 -4
  40. package/dist/commonjs/menu/lib/MenuTarget.d.ts +20 -20
  41. package/dist/commonjs/menu/lib/useMenuModel.d.ts +44 -44
  42. package/dist/commonjs/tabs/lib/Tabs.d.ts +176 -176
  43. package/dist/commonjs/tabs/lib/TabsItem.d.ts +16 -16
  44. package/dist/commonjs/tabs/lib/TabsList.d.ts +16 -16
  45. package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +4 -4
  46. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +16 -16
  47. package/dist/commonjs/tabs/lib/TabsPanel.d.ts +16 -16
  48. package/dist/commonjs/tabs/lib/TabsPanels.d.ts +8 -8
  49. package/dist/commonjs/tabs/lib/useTabsModel.d.ts +116 -116
  50. package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -1
  51. package/dist/es6/action-bar/lib/ActionBar.d.ts +124 -124
  52. package/dist/es6/action-bar/lib/ActionBar.d.ts.map +1 -1
  53. package/dist/es6/action-bar/lib/ActionBarItem.d.ts +12 -12
  54. package/dist/es6/action-bar/lib/ActionBarList.d.ts +12 -12
  55. package/dist/es6/action-bar/lib/ActionBarOverflowButton.d.ts +16 -16
  56. package/dist/es6/action-bar/lib/useActionBarModel.d.ts +52 -52
  57. package/dist/es6/breadcrumbs/lib/Breadcrumbs.d.ts +136 -136
  58. package/dist/es6/breadcrumbs/lib/BreadcrumbsCurrentItem.d.ts +16 -16
  59. package/dist/es6/breadcrumbs/lib/BreadcrumbsItem.d.ts +12 -12
  60. package/dist/es6/breadcrumbs/lib/BreadcrumbsList.d.ts +8 -8
  61. package/dist/es6/breadcrumbs/lib/BreadcrumbsMenu.d.ts +64 -64
  62. package/dist/es6/breadcrumbs/lib/BreadcrumbsOverflowButton.d.ts +16 -16
  63. package/dist/es6/breadcrumbs/lib/hooks/useBreadcrumbsModel.d.ts +52 -52
  64. package/dist/es6/collection/lib/ListBox.d.ts +48 -48
  65. package/dist/es6/collection/lib/useCursorListModel.d.ts +44 -56
  66. package/dist/es6/collection/lib/useCursorListModel.d.ts.map +1 -1
  67. package/dist/es6/collection/lib/useCursorListModel.js +2 -15
  68. package/dist/es6/collection/lib/useGridModel.d.ts +44 -44
  69. package/dist/es6/collection/lib/useListItemAllowChildStrings.d.ts +4 -4
  70. package/dist/es6/collection/lib/useListItemRegister.d.ts +4 -4
  71. package/dist/es6/collection/lib/useListItemRovingFocus.d.ts +4 -4
  72. package/dist/es6/collection/lib/useListItemRovingFocus.d.ts.map +1 -1
  73. package/dist/es6/collection/lib/useListItemRovingFocus.js +6 -0
  74. package/dist/es6/collection/lib/useListItemSelect.d.ts +4 -4
  75. package/dist/es6/collection/lib/useListModel.d.ts +44 -44
  76. package/dist/es6/collection/lib/useListResetCursorOnBlur.d.ts +4 -4
  77. package/dist/es6/collection/lib/useOverflowListItemMeasure.d.ts +4 -4
  78. package/dist/es6/collection/lib/useOverflowListMeasure.d.ts +4 -4
  79. package/dist/es6/collection/lib/useOverflowListModel.d.ts +44 -44
  80. package/dist/es6/collection/lib/useOverflowListTarget.d.ts +4 -4
  81. package/dist/es6/collection/lib/useSelectionListModel.d.ts +44 -44
  82. package/dist/es6/menu/lib/Menu.d.ts +60 -60
  83. package/dist/es6/menu/lib/MenuCard.d.ts +8 -8
  84. package/dist/es6/menu/lib/MenuContextTarget.d.ts +12 -12
  85. package/dist/es6/menu/lib/MenuItem.d.ts +8 -8
  86. package/dist/es6/menu/lib/MenuList.d.ts +8 -8
  87. package/dist/es6/menu/lib/MenuPopper.d.ts +4 -4
  88. package/dist/es6/menu/lib/MenuTarget.d.ts +20 -20
  89. package/dist/es6/menu/lib/useMenuModel.d.ts +44 -44
  90. package/dist/es6/tabs/lib/Tabs.d.ts +176 -176
  91. package/dist/es6/tabs/lib/TabsItem.d.ts +16 -16
  92. package/dist/es6/tabs/lib/TabsList.d.ts +16 -16
  93. package/dist/es6/tabs/lib/TabsMenuPopper.d.ts +4 -4
  94. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts +16 -16
  95. package/dist/es6/tabs/lib/TabsPanel.d.ts +16 -16
  96. package/dist/es6/tabs/lib/TabsPanels.d.ts +8 -8
  97. package/dist/es6/tabs/lib/useTabsModel.d.ts +116 -116
  98. package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -1
  99. package/package.json +3 -3
@@ -322,9 +322,6 @@ export const useCursorListModel = createModelHook({
322
322
  const pageSizeRef = React.useRef(config.pageSize);
323
323
  const columnCount = config.columnCount || 0;
324
324
  const list = useBaseListModel(config);
325
- const initialCurrentRef = React.useRef(
326
- config.initialCursorId || (config.items?.length ? list.state.items![0].id : '')
327
- );
328
325
  const navigation = config.navigation;
329
326
  const cursorIndexRef = React.useRef(-1);
330
327
  const setCursor = (index: number) => {
@@ -358,18 +355,6 @@ export const useCursorListModel = createModelHook({
358
355
 
359
356
  const events = {
360
357
  ...list.events,
361
- /**
362
- * Register an item to the list. Takes in an identifier, a React.Ref and an optional index. This
363
- * should be called on component mount
364
- */
365
- registerItem(data: Parameters<typeof list.events.registerItem>[0]) {
366
- // point the cursor at the first item
367
- if (!initialCurrentRef.current) {
368
- initialCurrentRef.current = list.getId(data.item);
369
- setCursorId(initialCurrentRef.current);
370
- }
371
- list.events.registerItem(data);
372
- },
373
358
  /** Directly sets the cursor to the list item by its identifier. */
374
359
  goTo(data: {id: string}) {
375
360
  const index = state.items.findIndex(item => item.id === data.id);
@@ -47,6 +47,13 @@ export const useListItemRovingFocus = createElemPropsHook(useCursorListModel)(
47
47
  // eslint-disable-next-line react-hooks/exhaustive-deps
48
48
  }, [model.state.cursorId]);
49
49
 
50
+ // Roving focus must always have a focus stop to function correctly
51
+ React.useEffect(() => {
52
+ if (!model.state.cursorId && model.state.items.length) {
53
+ model.events.goTo({id: model.state.items[0].id});
54
+ }
55
+ }, [model.state.cursorId, model.state.items, model.events]);
56
+
50
57
  return {
51
58
  onKeyDown(event: React.KeyboardEvent) {
52
59
  const handled = keyboardEventToCursorEvents(event, model, isRTL);