@workday/canvas-kit-react 6.0.0-alpha.0-next.31 → 6.0.0-alpha.0-next.33
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/common/index.ts +1 -0
- package/common/lib/EllipsisText.tsx +11 -0
- package/common/lib/utils/components.ts +50 -23
- package/common/lib/utils/index.ts +1 -0
- package/common/lib/utils/mergeProps.ts +4 -0
- package/common/lib/utils/useConstant.ts +18 -0
- package/common/lib/utils/useResizeObserver.ts +29 -0
- package/common/lib/utils/useUniqueId.ts +4 -3
- package/dist/commonjs/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/dist/commonjs/button/lib/parts/ButtonLabel.d.ts.map +1 -1
- package/dist/commonjs/common/index.d.ts +1 -0
- package/dist/commonjs/common/index.d.ts.map +1 -1
- package/dist/commonjs/common/index.js +1 -0
- package/dist/commonjs/common/lib/EllipsisText.d.ts +5 -0
- package/dist/commonjs/common/lib/EllipsisText.d.ts.map +1 -0
- package/dist/commonjs/common/lib/EllipsisText.js +13 -0
- package/dist/commonjs/common/lib/utils/components.d.ts +19 -9
- package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/components.js +12 -2
- package/dist/commonjs/common/lib/utils/index.d.ts +1 -0
- package/dist/commonjs/common/lib/utils/index.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/index.js +1 -0
- package/dist/commonjs/common/lib/utils/mergeProps.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/mergeProps.js +5 -0
- package/dist/commonjs/common/lib/utils/useConstant.d.ts +9 -0
- package/dist/commonjs/common/lib/utils/useConstant.d.ts.map +1 -0
- package/dist/commonjs/common/lib/utils/useConstant.js +18 -0
- package/dist/commonjs/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/dist/commonjs/common/lib/utils/useResizeObserver.d.ts.map +1 -0
- package/dist/commonjs/common/lib/utils/useResizeObserver.js +42 -0
- package/dist/commonjs/common/lib/utils/useUniqueId.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/useUniqueId.js +3 -10
- package/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts.map +1 -1
- package/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts.map +1 -1
- package/dist/commonjs/modal/lib/ModalOverlay.d.ts +4 -2
- package/dist/commonjs/modal/lib/ModalOverlay.d.ts.map +1 -1
- package/dist/commonjs/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/dist/commonjs/modal/lib/hooks/useModalCard.d.ts.map +1 -1
- package/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
- package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/dist/commonjs/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/dist/commonjs/pagination/lib/Pagination/common/List.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/types.d.ts +39 -0
- package/dist/commonjs/pagination/lib/Pagination/types.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
- package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/PopupCard.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/PopupCard.js +2 -3
- package/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts.map +1 -1
- package/dist/commonjs/tabs/index.d.ts +5 -0
- package/dist/commonjs/tabs/index.d.ts.map +1 -1
- package/dist/commonjs/tabs/index.js +11 -0
- package/dist/commonjs/tabs/lib/Tabs.d.ts +35 -7
- package/dist/commonjs/tabs/lib/Tabs.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/Tabs.js +28 -7
- package/dist/commonjs/tabs/lib/TabsItem.d.ts +107 -0
- package/dist/commonjs/tabs/lib/TabsItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsItem.js +140 -0
- package/dist/commonjs/tabs/lib/TabsList.d.ts +43 -0
- package/dist/commonjs/tabs/lib/TabsList.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsList.js +53 -0
- package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/{TabList.js → TabsMenuPopper.js} +7 -19
- package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsOverflowButton.js +57 -0
- package/{ts3.5/dist/commonjs/tabs/lib/TabPanel.d.ts → dist/commonjs/tabs/lib/TabsPanel.d.ts} +39 -29
- package/dist/commonjs/tabs/lib/TabsPanel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsPanel.js +64 -0
- package/dist/{es6/tabs/lib/TabList.d.ts → commonjs/tabs/lib/TabsPanels.d.ts} +5 -5
- package/dist/commonjs/tabs/lib/TabsPanels.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsPanels.js +21 -0
- package/dist/commonjs/tabs/lib/cursor/index.d.ts +1 -1
- package/dist/commonjs/tabs/lib/cursor/index.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/cursor/index.js +1 -1
- package/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/cursor/useCursorModel.js +50 -49
- package/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/cursor/{hooks.js → useRovingFocus.js} +26 -50
- package/dist/commonjs/tabs/lib/list/index.d.ts +2 -1
- package/dist/commonjs/tabs/lib/list/index.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/list/index.js +2 -1
- package/dist/commonjs/tabs/lib/list/renderItem.d.ts +4 -0
- package/dist/commonjs/tabs/lib/list/renderItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/list/renderItem.js +18 -0
- package/dist/commonjs/tabs/lib/list/useListModel.d.ts +25 -13
- package/dist/commonjs/tabs/lib/list/useListModel.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/list/useListModel.js +20 -7
- package/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/list/useListRegisterItem.js +46 -0
- package/dist/commonjs/tabs/lib/menu/Menu.d.ts +80 -0
- package/dist/commonjs/tabs/lib/menu/Menu.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/Menu.js +94 -0
- package/dist/commonjs/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/dist/commonjs/tabs/lib/menu/MenuCard.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuCard.js +82 -0
- package/dist/commonjs/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/dist/commonjs/tabs/lib/menu/MenuItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuItem.js +145 -0
- package/dist/commonjs/tabs/lib/menu/MenuList.d.ts +23 -0
- package/dist/commonjs/tabs/lib/menu/MenuList.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuList.js +52 -0
- package/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuPopper.js +45 -0
- package/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuTarget.js +60 -0
- package/dist/commonjs/tabs/lib/menu/index.d.ts +8 -0
- package/dist/commonjs/tabs/lib/menu/index.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/index.js +18 -0
- package/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/useMenuModel.js +33 -0
- package/dist/commonjs/tabs/lib/overflow/index.d.ts +5 -0
- package/dist/commonjs/tabs/lib/overflow/index.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/index.js +9 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.js +22 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.js +32 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowModel.js +117 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.js +35 -0
- package/dist/commonjs/tabs/lib/selection/index.d.ts +4 -0
- package/dist/commonjs/tabs/lib/selection/index.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/selection/index.js +8 -0
- package/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/{hooks.js → selection/useResetCursorOnBlur.js} +8 -9
- package/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionItem.js +16 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionModel.js +80 -0
- package/dist/commonjs/tabs/lib/useTabsModel.d.ts +39 -38
- package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/useTabsModel.js +50 -37
- package/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts +10 -0
- package/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts.map +1 -1
- package/dist/commonjs/tooltip/lib/OverflowTooltip.js +8 -6
- package/dist/commonjs/tooltip/lib/useTooltip.d.ts +1 -1
- package/dist/es6/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/dist/es6/button/lib/parts/ButtonLabel.d.ts.map +1 -1
- package/dist/es6/common/index.d.ts +1 -0
- package/dist/es6/common/index.d.ts.map +1 -1
- package/dist/es6/common/index.js +1 -0
- package/dist/es6/common/lib/EllipsisText.d.ts +5 -0
- package/dist/es6/common/lib/EllipsisText.d.ts.map +1 -0
- package/dist/es6/common/lib/EllipsisText.js +8 -0
- package/dist/es6/common/lib/utils/components.d.ts +19 -9
- package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/components.js +12 -2
- package/dist/es6/common/lib/utils/index.d.ts +1 -0
- package/dist/es6/common/lib/utils/index.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/index.js +1 -0
- package/dist/es6/common/lib/utils/mergeProps.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/mergeProps.js +5 -0
- package/dist/es6/common/lib/utils/useConstant.d.ts +9 -0
- package/dist/es6/common/lib/utils/useConstant.d.ts.map +1 -0
- package/dist/es6/common/lib/utils/useConstant.js +15 -0
- package/dist/es6/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/dist/es6/common/lib/utils/useResizeObserver.d.ts.map +1 -0
- package/dist/es6/common/lib/utils/useResizeObserver.js +37 -0
- package/dist/es6/common/lib/utils/useUniqueId.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/useUniqueId.js +3 -3
- package/dist/es6/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/dist/es6/dialog/lib/hooks/useDialogCard.d.ts.map +1 -1
- package/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts.map +1 -1
- package/dist/es6/modal/lib/ModalOverlay.d.ts +4 -2
- package/dist/es6/modal/lib/ModalOverlay.d.ts.map +1 -1
- package/dist/es6/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/dist/es6/modal/lib/hooks/useModalCard.d.ts.map +1 -1
- package/dist/es6/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/dist/es6/modal/lib/hooks/useModalHeading.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
- package/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/dist/es6/pagination/lib/Pagination/PageList.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/dist/es6/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/dist/es6/pagination/lib/Pagination/common/List.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/types.d.ts +39 -0
- package/dist/es6/pagination/lib/Pagination/types.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
- package/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts.map +1 -1
- package/dist/es6/popup/lib/PopupCard.d.ts.map +1 -1
- package/dist/es6/popup/lib/PopupCard.js +3 -4
- package/dist/es6/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/dist/es6/popup/lib/hooks/usePopupCard.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/dist/es6/popup/lib/hooks/usePopupHeading.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/dist/es6/popup/lib/hooks/usePopupPopper.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/dist/es6/popup/lib/hooks/usePopupTarget.d.ts.map +1 -1
- package/dist/es6/tabs/index.d.ts +5 -0
- package/dist/es6/tabs/index.d.ts.map +1 -1
- package/dist/es6/tabs/index.js +5 -0
- package/dist/es6/tabs/lib/Tabs.d.ts +35 -7
- package/dist/es6/tabs/lib/Tabs.d.ts.map +1 -1
- package/dist/es6/tabs/lib/Tabs.js +28 -7
- package/dist/es6/tabs/lib/TabsItem.d.ts +107 -0
- package/dist/es6/tabs/lib/TabsItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsItem.js +131 -0
- package/dist/es6/tabs/lib/TabsList.d.ts +43 -0
- package/dist/es6/tabs/lib/TabsList.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsList.js +44 -0
- package/dist/es6/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/dist/es6/tabs/lib/TabsMenuPopper.d.ts.map +1 -0
- package/dist/es6/tabs/lib/{TabList.js → TabsMenuPopper.js} +8 -20
- package/dist/es6/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/dist/es6/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsOverflowButton.js +48 -0
- package/dist/{commonjs/tabs/lib/TabPanel.d.ts → es6/tabs/lib/TabsPanel.d.ts} +15 -5
- package/dist/es6/tabs/lib/TabsPanel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsPanel.js +59 -0
- package/{ts3.5/dist/commonjs/tabs/lib/TabList.d.ts → dist/es6/tabs/lib/TabsPanels.d.ts} +15 -15
- package/dist/es6/tabs/lib/TabsPanels.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsPanels.js +12 -0
- package/dist/es6/tabs/lib/cursor/index.d.ts +1 -1
- package/dist/es6/tabs/lib/cursor/index.d.ts.map +1 -1
- package/dist/es6/tabs/lib/cursor/index.js +1 -1
- package/dist/es6/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/dist/es6/tabs/lib/cursor/useCursorModel.d.ts.map +1 -1
- package/dist/es6/tabs/lib/cursor/useCursorModel.js +51 -50
- package/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts.map +1 -0
- package/dist/es6/tabs/lib/cursor/useRovingFocus.js +84 -0
- package/dist/es6/tabs/lib/list/index.d.ts +2 -1
- package/dist/es6/tabs/lib/list/index.d.ts.map +1 -1
- package/dist/es6/tabs/lib/list/index.js +2 -1
- package/dist/es6/tabs/lib/list/renderItem.d.ts +4 -0
- package/dist/es6/tabs/lib/list/renderItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/list/renderItem.js +12 -0
- package/dist/es6/tabs/lib/list/useListModel.d.ts +25 -13
- package/dist/es6/tabs/lib/list/useListModel.d.ts.map +1 -1
- package/dist/es6/tabs/lib/list/useListModel.js +21 -8
- package/dist/es6/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/dist/es6/tabs/lib/list/useListRegisterItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/list/useListRegisterItem.js +41 -0
- package/dist/es6/tabs/lib/menu/Menu.d.ts +80 -0
- package/dist/es6/tabs/lib/menu/Menu.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/Menu.js +89 -0
- package/dist/es6/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/dist/es6/tabs/lib/menu/MenuCard.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuCard.js +73 -0
- package/dist/es6/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/dist/es6/tabs/lib/menu/MenuItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuItem.js +136 -0
- package/dist/es6/tabs/lib/menu/MenuList.d.ts +23 -0
- package/dist/es6/tabs/lib/menu/MenuList.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuList.js +43 -0
- package/dist/es6/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/dist/es6/tabs/lib/menu/MenuPopper.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuPopper.js +36 -0
- package/dist/es6/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/dist/es6/tabs/lib/menu/MenuTarget.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuTarget.js +51 -0
- package/dist/es6/tabs/lib/menu/index.d.ts +8 -0
- package/dist/es6/tabs/lib/menu/index.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/index.js +7 -0
- package/dist/es6/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/dist/es6/tabs/lib/menu/useMenuModel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/useMenuModel.js +31 -0
- package/dist/es6/tabs/lib/overflow/index.d.ts +5 -0
- package/dist/es6/tabs/lib/overflow/index.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/index.js +4 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.js +13 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.js +30 -0
- package/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowModel.js +111 -0
- package/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowTarget.js +30 -0
- package/dist/es6/tabs/lib/selection/index.d.ts +4 -0
- package/dist/es6/tabs/lib/selection/index.d.ts.map +1 -0
- package/dist/es6/tabs/lib/selection/index.js +3 -0
- package/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts.map +1 -0
- package/dist/es6/tabs/lib/{hooks.js → selection/useResetCursorOnBlur.js} +8 -9
- package/dist/es6/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/dist/es6/tabs/lib/selection/useSelectionItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/selection/useSelectionItem.js +14 -0
- package/dist/es6/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/dist/es6/tabs/lib/selection/useSelectionModel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/selection/useSelectionModel.js +75 -0
- package/dist/es6/tabs/lib/useTabsModel.d.ts +39 -38
- package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -1
- package/dist/es6/tabs/lib/useTabsModel.js +50 -37
- package/dist/es6/tooltip/lib/OverflowTooltip.d.ts +10 -0
- package/dist/es6/tooltip/lib/OverflowTooltip.d.ts.map +1 -1
- package/dist/es6/tooltip/lib/OverflowTooltip.js +5 -3
- package/dist/es6/tooltip/lib/useTooltip.d.ts +1 -1
- package/package.json +7 -5
- package/pagination/lib/Pagination/GoTo/Label.tsx +3 -0
- package/pagination/lib/Pagination/types.ts +44 -5
- package/pagination/lib/Pagination/usePaginationModel.ts +19 -0
- package/popup/lib/PopupCard.tsx +3 -2
- package/tabs/index.ts +6 -0
- package/tabs/lib/Tabs.tsx +34 -9
- package/tabs/lib/TabsItem.tsx +250 -0
- package/tabs/lib/TabsList.tsx +67 -0
- package/tabs/lib/TabsMenuPopper.tsx +27 -0
- package/tabs/lib/TabsOverflowButton.tsx +58 -0
- package/tabs/lib/{TabPanel.tsx → TabsPanel.tsx} +33 -31
- package/tabs/lib/TabsPanels.tsx +28 -0
- package/tabs/lib/cursor/index.ts +1 -1
- package/tabs/lib/cursor/useCursorModel.tsx +78 -65
- package/tabs/lib/cursor/useRovingFocus.tsx +94 -0
- package/tabs/lib/list/index.ts +2 -1
- package/tabs/lib/list/renderItem.tsx +19 -0
- package/tabs/lib/list/useListModel.tsx +48 -23
- package/tabs/lib/list/useListRegisterItem.tsx +53 -0
- package/tabs/lib/menu/Menu.tsx +95 -0
- package/tabs/lib/menu/MenuCard.tsx +96 -0
- package/tabs/lib/menu/MenuItem.tsx +195 -0
- package/tabs/lib/menu/MenuList.tsx +59 -0
- package/tabs/lib/menu/MenuPopper.tsx +31 -0
- package/tabs/lib/menu/MenuTarget.tsx +52 -0
- package/tabs/lib/menu/index.ts +8 -0
- package/tabs/lib/menu/useMenuModel.tsx +67 -0
- package/tabs/lib/overflow/index.ts +4 -0
- package/tabs/lib/overflow/spec/tsconfig.json +3 -0
- package/tabs/lib/overflow/spec/useOverflowModel.spec.tsx +46 -0
- package/tabs/lib/overflow/useOverflowMeasureContainer.ts +20 -0
- package/tabs/lib/overflow/useOverflowMeasureItem.tsx +40 -0
- package/tabs/lib/overflow/useOverflowModel.tsx +185 -0
- package/tabs/lib/overflow/useOverflowTarget.tsx +42 -0
- package/tabs/lib/selection/index.ts +3 -0
- package/tabs/lib/selection/useResetCursorOnBlur.tsx +29 -0
- package/tabs/lib/selection/useSelectionItem.tsx +26 -0
- package/tabs/lib/selection/useSelectionModel.tsx +133 -0
- package/tabs/lib/useTabsModel.tsx +93 -78
- package/tooltip/lib/OverflowTooltip.tsx +5 -3
- package/ts3.5/dist/commonjs/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/ts3.5/dist/commonjs/common/index.d.ts +1 -0
- package/ts3.5/dist/commonjs/common/lib/EllipsisText.d.ts +5 -0
- package/ts3.5/dist/commonjs/common/lib/utils/components.d.ts +19 -9
- package/ts3.5/dist/commonjs/common/lib/utils/index.d.ts +1 -0
- package/ts3.5/dist/commonjs/common/lib/utils/useConstant.d.ts +9 -0
- package/ts3.5/dist/commonjs/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/ts3.5/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/ts3.5/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/ts3.5/dist/commonjs/modal/lib/ModalOverlay.d.ts +4 -2
- package/ts3.5/dist/commonjs/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/ts3.5/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/types.d.ts +39 -0
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/ts3.5/dist/commonjs/tabs/index.d.ts +5 -0
- package/ts3.5/dist/commonjs/tabs/lib/Tabs.d.ts +35 -7
- package/ts3.5/dist/commonjs/tabs/lib/TabsItem.d.ts +107 -0
- package/ts3.5/dist/commonjs/tabs/lib/TabsList.d.ts +43 -0
- package/ts3.5/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/ts3.5/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/{dist/es6/tabs/lib/TabPanel.d.ts → ts3.5/dist/commonjs/tabs/lib/TabsPanel.d.ts} +39 -29
- package/ts3.5/dist/{es6/tabs/lib/TabList.d.ts → commonjs/tabs/lib/TabsPanels.d.ts} +5 -5
- package/ts3.5/dist/commonjs/tabs/lib/cursor/index.d.ts +1 -1
- package/ts3.5/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/ts3.5/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/ts3.5/dist/commonjs/tabs/lib/list/index.d.ts +2 -1
- package/ts3.5/dist/commonjs/tabs/lib/list/renderItem.d.ts +4 -0
- package/ts3.5/dist/commonjs/tabs/lib/list/useListModel.d.ts +25 -13
- package/ts3.5/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/Menu.d.ts +80 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuList.d.ts +23 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/index.d.ts +8 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/index.d.ts +5 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/index.d.ts +4 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/ts3.5/dist/commonjs/tabs/lib/useTabsModel.d.ts +39 -38
- package/ts3.5/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts +10 -0
- package/ts3.5/dist/commonjs/tooltip/lib/useTooltip.d.ts +1 -1
- package/ts3.5/dist/es6/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/ts3.5/dist/es6/common/index.d.ts +1 -0
- package/ts3.5/dist/es6/common/lib/EllipsisText.d.ts +5 -0
- package/ts3.5/dist/es6/common/lib/utils/components.d.ts +19 -9
- package/ts3.5/dist/es6/common/lib/utils/index.d.ts +1 -0
- package/ts3.5/dist/es6/common/lib/utils/useConstant.d.ts +9 -0
- package/ts3.5/dist/es6/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/ts3.5/dist/es6/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/ts3.5/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/ts3.5/dist/es6/modal/lib/ModalOverlay.d.ts +4 -2
- package/ts3.5/dist/es6/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/ts3.5/dist/es6/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/ts3.5/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
- package/ts3.5/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/ts3.5/dist/es6/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/ts3.5/dist/es6/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/ts3.5/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/ts3.5/dist/es6/pagination/lib/Pagination/types.d.ts +39 -0
- package/ts3.5/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/ts3.5/dist/es6/tabs/index.d.ts +5 -0
- package/ts3.5/dist/es6/tabs/lib/Tabs.d.ts +35 -7
- package/ts3.5/dist/es6/tabs/lib/TabsItem.d.ts +107 -0
- package/ts3.5/dist/es6/tabs/lib/TabsList.d.ts +43 -0
- package/ts3.5/dist/es6/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/ts3.5/dist/es6/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/ts3.5/dist/es6/tabs/lib/{TabPanel.d.ts → TabsPanel.d.ts} +15 -5
- package/{dist/commonjs/tabs/lib/TabList.d.ts → ts3.5/dist/es6/tabs/lib/TabsPanels.d.ts} +15 -15
- package/ts3.5/dist/es6/tabs/lib/cursor/index.d.ts +1 -1
- package/ts3.5/dist/es6/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/ts3.5/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/ts3.5/dist/es6/tabs/lib/list/index.d.ts +2 -1
- package/ts3.5/dist/es6/tabs/lib/list/renderItem.d.ts +4 -0
- package/ts3.5/dist/es6/tabs/lib/list/useListModel.d.ts +25 -13
- package/ts3.5/dist/es6/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/ts3.5/dist/es6/tabs/lib/menu/Menu.d.ts +80 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuList.d.ts +23 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/ts3.5/dist/es6/tabs/lib/menu/index.d.ts +8 -0
- package/ts3.5/dist/es6/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/index.d.ts +5 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/ts3.5/dist/es6/tabs/lib/selection/index.d.ts +4 -0
- package/ts3.5/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/ts3.5/dist/es6/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/ts3.5/dist/es6/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/ts3.5/dist/es6/tabs/lib/useTabsModel.d.ts +39 -38
- package/ts3.5/dist/es6/tooltip/lib/OverflowTooltip.d.ts +10 -0
- package/ts3.5/dist/es6/tooltip/lib/useTooltip.d.ts +1 -1
- package/dist/commonjs/tabs/lib/Tab.d.ts +0 -49
- package/dist/commonjs/tabs/lib/Tab.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/Tab.js +0 -101
- package/dist/commonjs/tabs/lib/TabList.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/TabPanel.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/TabPanel.js +0 -56
- package/dist/commonjs/tabs/lib/cursor/hooks.d.ts +0 -39
- package/dist/commonjs/tabs/lib/cursor/hooks.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/hooks.d.ts +0 -10
- package/dist/commonjs/tabs/lib/hooks.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/list/hooks.d.ts +0 -11
- package/dist/commonjs/tabs/lib/list/hooks.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/list/hooks.js +0 -39
- package/dist/es6/tabs/lib/Tab.d.ts +0 -49
- package/dist/es6/tabs/lib/Tab.d.ts.map +0 -1
- package/dist/es6/tabs/lib/Tab.js +0 -92
- package/dist/es6/tabs/lib/TabList.d.ts.map +0 -1
- package/dist/es6/tabs/lib/TabPanel.d.ts.map +0 -1
- package/dist/es6/tabs/lib/TabPanel.js +0 -51
- package/dist/es6/tabs/lib/cursor/hooks.d.ts +0 -39
- package/dist/es6/tabs/lib/cursor/hooks.d.ts.map +0 -1
- package/dist/es6/tabs/lib/cursor/hooks.js +0 -108
- package/dist/es6/tabs/lib/hooks.d.ts +0 -10
- package/dist/es6/tabs/lib/hooks.d.ts.map +0 -1
- package/dist/es6/tabs/lib/list/hooks.d.ts +0 -11
- package/dist/es6/tabs/lib/list/hooks.d.ts.map +0 -1
- package/dist/es6/tabs/lib/list/hooks.js +0 -34
- package/tabs/lib/Tab.tsx +0 -176
- package/tabs/lib/TabList.tsx +0 -59
- package/tabs/lib/cursor/hooks.tsx +0 -122
- package/tabs/lib/hooks.tsx +0 -31
- package/tabs/lib/list/hooks.tsx +0 -45
- package/ts3.5/dist/commonjs/tabs/lib/Tab.d.ts +0 -49
- package/ts3.5/dist/commonjs/tabs/lib/cursor/hooks.d.ts +0 -39
- package/ts3.5/dist/commonjs/tabs/lib/hooks.d.ts +0 -10
- package/ts3.5/dist/commonjs/tabs/lib/list/hooks.d.ts +0 -11
- package/ts3.5/dist/es6/tabs/lib/Tab.d.ts +0 -49
- package/ts3.5/dist/es6/tabs/lib/cursor/hooks.d.ts +0 -39
- package/ts3.5/dist/es6/tabs/lib/hooks.d.ts +0 -10
- package/ts3.5/dist/es6/tabs/lib/list/hooks.d.ts +0 -11
package/common/index.ts
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import styled, {CSSObject} from '@emotion/styled';
|
|
2
|
+
import {ElementComponent} from '..';
|
|
3
|
+
|
|
4
|
+
export const ellipsisStyles: CSSObject = {
|
|
5
|
+
whiteSpace: 'nowrap',
|
|
6
|
+
textOverflow: 'ellipsis',
|
|
7
|
+
overflow: 'hidden',
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
// Recast as an `ElementComponent` due to better type support for `as` and `ref`
|
|
11
|
+
export const EllipsisText = (styled('span')(ellipsisStyles) as any) as ElementComponent<'span', {}>;
|
|
@@ -132,6 +132,7 @@ export type ElementComponent<T extends React.ElementType, P> = {
|
|
|
132
132
|
): JSX.Element;
|
|
133
133
|
(props: PropsWithAs<P, T>): JSX.Element;
|
|
134
134
|
displayName?: string;
|
|
135
|
+
as<E extends React.ElementType>(as: E): ElementComponent<E, P>;
|
|
135
136
|
};
|
|
136
137
|
|
|
137
138
|
export type Component<P> = {
|
|
@@ -233,6 +234,11 @@ export const createComponent = <
|
|
|
233
234
|
});
|
|
234
235
|
ReturnedComponent.displayName = displayName;
|
|
235
236
|
|
|
237
|
+
// The `any`s are here because `ElementComponent` takes care of the `as` type and the
|
|
238
|
+
// `ReturnComponent` type is overridden
|
|
239
|
+
(ReturnedComponent as any).as = (as: any) =>
|
|
240
|
+
createComponent(as)({displayName, Component, subComponents});
|
|
241
|
+
|
|
236
242
|
// Cast as `any`. We have already specified the return type. Be careful making changes to this
|
|
237
243
|
// file due to this `any` `ReturnedComponent` is a `React.ForwardRefExoticComponent`, but we want
|
|
238
244
|
// it to be either an `Component` or `ElementComponent`
|
|
@@ -278,7 +284,7 @@ export const createHook = <M extends Model<any, any>, PO extends {}, PI extends
|
|
|
278
284
|
): BehaviorHook<M, PO> => {
|
|
279
285
|
return (model, elemProps, ref) => {
|
|
280
286
|
const props = mergeProps(fn(model, ref, elemProps || ({} as any)), elemProps || ({} as any));
|
|
281
|
-
if (!props.hasOwnProperty('ref')) {
|
|
287
|
+
if (!props.hasOwnProperty('ref') && ref) {
|
|
282
288
|
// This is the weird "incoming ref isn't in props, but outgoing ref is in props" thing
|
|
283
289
|
props.ref = ref;
|
|
284
290
|
}
|
|
@@ -286,11 +292,32 @@ export const createHook = <M extends Model<any, any>, PO extends {}, PI extends
|
|
|
286
292
|
};
|
|
287
293
|
};
|
|
288
294
|
|
|
289
|
-
export
|
|
290
|
-
model: M,
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
295
|
+
export const subModelHook = <M extends Model<any, any>, SM extends Model<any, any>, O extends {}>(
|
|
296
|
+
fn: (model: M) => SM,
|
|
297
|
+
hook: BehaviorHook<SM, O>
|
|
298
|
+
): BehaviorHook<M, O> => {
|
|
299
|
+
return (model: M, props: any, ref: React.Ref<any>) => {
|
|
300
|
+
return hook(fn(model), props, ref);
|
|
301
|
+
};
|
|
302
|
+
};
|
|
303
|
+
|
|
304
|
+
// Typescript function parameters are contravariant while return types are covariant. This is a
|
|
305
|
+
// problem when someone hands us a model that correctly extends `Model<any, any>`, but adds extra
|
|
306
|
+
// properties to the model. So `M extends Model<any, any>`. But the `BehaviorHook` is the return
|
|
307
|
+
// type which will reverse the direction which is no longer true: `Model<any, any> extends M`. In
|
|
308
|
+
// order to avoid this issue, we use the `bivarianceHack` found in ReactJS type definitions. This
|
|
309
|
+
// hack forces Typescript to treat `M` as a bivariant allowing extension to go either direction.
|
|
310
|
+
// Normally this would be less type safe, but we're using a generic `M` as a placeholder so there
|
|
311
|
+
// isn't a real issue. Not 100% this is a bug, but the "hack" is a bit messy.
|
|
312
|
+
// https://www.stephanboyer.com/post/132/what-are-covariance-and-contravariance
|
|
313
|
+
// https://stackoverflow.com/questions/52667959/what-is-the-purpose-of-bivariancehack-in-typescript-types/52668133
|
|
314
|
+
export type BehaviorHook<M extends Model<any, any>, O extends {}> = {
|
|
315
|
+
bivarianceHack<P extends {}, R>(
|
|
316
|
+
model: M,
|
|
317
|
+
elemProps?: P,
|
|
318
|
+
ref?: React.Ref<R>
|
|
319
|
+
): O & P & (R extends HTMLOrSVGElement ? {ref: React.Ref<R>} : {});
|
|
320
|
+
}['bivarianceHack'];
|
|
294
321
|
|
|
295
322
|
function setRef<T>(ref: React.Ref<T> | undefined, value: T): void {
|
|
296
323
|
if (ref) {
|
|
@@ -327,7 +354,7 @@ function setRef<T>(ref: React.Ref<T> | undefined, value: T): void {
|
|
|
327
354
|
* return <div ref={elementRef}/>
|
|
328
355
|
* })
|
|
329
356
|
*/
|
|
330
|
-
export function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>):
|
|
357
|
+
export function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>): React.RefCallback<T> {
|
|
331
358
|
return (value: T) => {
|
|
332
359
|
setRef(ref1, value);
|
|
333
360
|
setRef(ref2, value);
|
|
@@ -410,9 +437,9 @@ export function useModelContext<T>(context: React.Context<T>, model?: T): T {
|
|
|
410
437
|
* return <div id="foo" {...props}>{children}</div>
|
|
411
438
|
* })
|
|
412
439
|
*/
|
|
413
|
-
export function composeHooks<M extends Model<any, any>, O1 extends {},
|
|
414
|
-
hook1:
|
|
415
|
-
hook2:
|
|
440
|
+
export function composeHooks<M extends Model<any, any>, O1 extends {}, O2 extends {}>(
|
|
441
|
+
hook1: BehaviorHook<M, O1>,
|
|
442
|
+
hook2: BehaviorHook<M, O2>
|
|
416
443
|
): BehaviorHook<M, O1 & O2>;
|
|
417
444
|
|
|
418
445
|
export function composeHooks<
|
|
@@ -423,9 +450,9 @@ export function composeHooks<
|
|
|
423
450
|
O2 extends {},
|
|
424
451
|
O3 extends {}
|
|
425
452
|
>(
|
|
426
|
-
hook1:
|
|
427
|
-
hook2:
|
|
428
|
-
hook3:
|
|
453
|
+
hook1: BehaviorHook<M, O1>,
|
|
454
|
+
hook2: BehaviorHook<M, O2>,
|
|
455
|
+
hook3: BehaviorHook<M, O3>
|
|
429
456
|
): BehaviorHook<M, O1 & O2 & O3>;
|
|
430
457
|
export function composeHooks<
|
|
431
458
|
M extends Model<any, any>,
|
|
@@ -436,10 +463,10 @@ export function composeHooks<
|
|
|
436
463
|
O3 extends {},
|
|
437
464
|
O4 extends {}
|
|
438
465
|
>(
|
|
439
|
-
hook1:
|
|
440
|
-
hook2:
|
|
441
|
-
hook3:
|
|
442
|
-
hook4:
|
|
466
|
+
hook1: BehaviorHook<M, O1>,
|
|
467
|
+
hook2: BehaviorHook<M, O2>,
|
|
468
|
+
hook3: BehaviorHook<M, O3>,
|
|
469
|
+
hook4: BehaviorHook<M, O4>
|
|
443
470
|
): BehaviorHook<M, O1 & O2 & O3 & O4>;
|
|
444
471
|
export function composeHooks<
|
|
445
472
|
M extends Model<any, any>,
|
|
@@ -451,11 +478,11 @@ export function composeHooks<
|
|
|
451
478
|
O4 extends {},
|
|
452
479
|
O5 extends {}
|
|
453
480
|
>(
|
|
454
|
-
hook1:
|
|
455
|
-
hook2:
|
|
456
|
-
hook3:
|
|
457
|
-
hook4:
|
|
458
|
-
hook5:
|
|
481
|
+
hook1: BehaviorHook<M, O1>,
|
|
482
|
+
hook2: BehaviorHook<M, O2>,
|
|
483
|
+
hook3: BehaviorHook<M, O3>,
|
|
484
|
+
hook4: BehaviorHook<M, O4>,
|
|
485
|
+
hook5: BehaviorHook<M, O5>
|
|
459
486
|
): BehaviorHook<M, O1 & O2 & O3 & O4 & O5>;
|
|
460
487
|
export function composeHooks<M extends Model<any, any>, R, P extends {}, O extends {}>(
|
|
461
488
|
...hooks: ((model: M, props: P, ref: React.Ref<R>) => O)[]
|
|
@@ -465,7 +492,7 @@ export function composeHooks<M extends Model<any, any>, R, P extends {}, O exten
|
|
|
465
492
|
return hook(model, props, props.ref || ref);
|
|
466
493
|
}, props);
|
|
467
494
|
|
|
468
|
-
if (!returnProps.hasOwnProperty('ref')) {
|
|
495
|
+
if (!returnProps.hasOwnProperty('ref') && ref) {
|
|
469
496
|
// This is the weird "incoming ref isn't in props, but outgoing ref is in props" thing
|
|
470
497
|
returnProps.ref = ref;
|
|
471
498
|
}
|
|
@@ -39,6 +39,10 @@ export function mergeProps<T extends object, S extends object>(
|
|
|
39
39
|
typeof targetProps[key] === 'function'
|
|
40
40
|
) {
|
|
41
41
|
// we don't support removing callbacks via `undefined`, so do nothing here
|
|
42
|
+
} else if (key === 'ref' && sourceProps.hasOwnProperty('ref')) {
|
|
43
|
+
// refs should never be overridden. This doesn't happen normally, but happens with hook
|
|
44
|
+
// composition
|
|
45
|
+
(returnProps as any).ref = (returnProps as any).ref || (sourceProps as any).ref;
|
|
42
46
|
} else {
|
|
43
47
|
// @ts-ignore TS has more object constraint complaints that aren't useful here
|
|
44
48
|
returnProps[key] = sourceProps[key];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {useRef} from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Get a constant value in React, only running the callback function once. `React.useMemo` does not
|
|
5
|
+
* guarantee that a function will only be run once.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const value = useConstant(generateUniqueId)
|
|
9
|
+
*/
|
|
10
|
+
export function useConstant<T>(fn: () => T): T {
|
|
11
|
+
const ref = useRef<T>();
|
|
12
|
+
|
|
13
|
+
if (!ref.current) {
|
|
14
|
+
ref.current = fn();
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
return ref.current;
|
|
18
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import useResizeObserverOriginal from 'use-resize-observer';
|
|
4
|
+
import ResizeObserver from 'resize-observer-polyfill';
|
|
5
|
+
|
|
6
|
+
if (typeof window !== 'undefined' && !(window as any).ResizeObserver) {
|
|
7
|
+
(window as any).ResizeObserver = ResizeObserver;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// `useResizeObserver` contains this fix in 8.0.0:
|
|
11
|
+
// https://github.com/ZeeCoder/use-resize-observer/commit/bd0f3c8597bac0d853b88cf585256aac1bd4f554
|
|
12
|
+
// v8.0.0 requires TS4.2. So we'll manually patch until we're ready for TS4.2+
|
|
13
|
+
export const useResizeObserver: typeof useResizeObserverOriginal = (params = {}) => {
|
|
14
|
+
const widthRef = React.useRef<number | undefined>();
|
|
15
|
+
const heightRef = React.useRef<number | undefined>();
|
|
16
|
+
const onResize = params.onResize
|
|
17
|
+
? (data: {width: number | undefined; height: number | undefined}) => {
|
|
18
|
+
if (widthRef.current !== data.width || heightRef.current !== data.height) {
|
|
19
|
+
widthRef.current = data.width;
|
|
20
|
+
heightRef.current = data.height;
|
|
21
|
+
params.onResize!(data);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
: undefined;
|
|
25
|
+
return useResizeObserverOriginal({...params, onResize});
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
// When the dependency is moved up to v8.0.0, remove the above function and export below instead
|
|
29
|
+
// export {useResizeObserver};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import uuid from 'uuid/v4';
|
|
3
2
|
|
|
4
|
-
|
|
3
|
+
import {useConstant} from './useConstant';
|
|
4
|
+
|
|
5
|
+
export const generateUniqueId = () => uuid().replace(/^[0-9\-]*/gi, '');
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Generate a unique ID if one is not provided. The generated ID will be stable across renders
|
|
@@ -9,7 +10,7 @@ export const generateUniqueId = () => uuid().replace(/^[0-9]*/gi, '');
|
|
|
9
10
|
*/
|
|
10
11
|
export const useUniqueId = (id?: string) => {
|
|
11
12
|
// https://codesandbox.io/s/react-functional-component-ids-p2ndq
|
|
12
|
-
const
|
|
13
|
+
const generatedId = useConstant(generateUniqueId);
|
|
13
14
|
return id || generatedId;
|
|
14
15
|
};
|
|
15
16
|
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/// <reference types="@emotion/core" />
|
|
2
|
-
export declare const ButtonLabel: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "css" | "style" | "
|
|
2
|
+
export declare const ButtonLabel: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "css" | "style" | "slot" | "title" | "dir" | "children" | "hidden" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, import("../../../common").EmotionCanvasTheme>;
|
|
3
3
|
//# sourceMappingURL=ButtonLabel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonLabel.d.ts","sourceRoot":"","sources":["../../../../../button/lib/parts/ButtonLabel.tsx"],"names":[],"mappings":";AAEA,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"ButtonLabel.d.ts","sourceRoot":"","sources":["../../../../../button/lib/parts/ButtonLabel.tsx"],"names":[],"mappings":";AAEA,eAAO,MAAM,WAAW,oyJAKtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EllipsisText.d.ts","sourceRoot":"","sources":["../../../../common/lib/EllipsisText.tsx"],"names":[],"mappings":"AAAA,OAAe,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAC,gBAAgB,EAAC,MAAM,IAAI,CAAC;AAEpC,eAAO,MAAM,cAAc,EAAE,SAI5B,CAAC;AAGF,eAAO,MAAM,YAAY,8BAA0E,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var styled_1 = __importDefault(require("@emotion/styled"));
|
|
7
|
+
exports.ellipsisStyles = {
|
|
8
|
+
whiteSpace: 'nowrap',
|
|
9
|
+
textOverflow: 'ellipsis',
|
|
10
|
+
overflow: 'hidden',
|
|
11
|
+
};
|
|
12
|
+
// Recast as an `ElementComponent` due to better type support for `as` and `ref`
|
|
13
|
+
exports.EllipsisText = styled_1.default('span')(exports.ellipsisStyles);
|
|
@@ -79,6 +79,7 @@ export declare type ElementComponent<T extends React.ElementType, P> = {
|
|
|
79
79
|
}): JSX.Element;
|
|
80
80
|
(props: PropsWithAs<P, T>): JSX.Element;
|
|
81
81
|
displayName?: string;
|
|
82
|
+
as<E extends React.ElementType>(as: E): ElementComponent<E, P>;
|
|
82
83
|
};
|
|
83
84
|
export declare type Component<P> = {
|
|
84
85
|
__type: 'Component';
|
|
@@ -107,7 +108,7 @@ interface RefForwardingComponent<T, P = {}> {
|
|
|
107
108
|
* return type is `Component<element, Props>` which looks like `Component<'div', Props>` which is a
|
|
108
109
|
* clean interface that tells you the default element that is used.
|
|
109
110
|
*/
|
|
110
|
-
export declare const createComponent: <E extends "symbol" | "object" | "s" | "big" | "link" | "small" | "sub" | "sup" | "circle" | "stop" | "path" | "style" | "map" | "filter" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "button" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "data" | "datalist" | "dd" | "del" | "details" | "dfn" | "dialog" | "div" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "form" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "input" | "ins" | "kbd" | "keygen" | "label" | "legend" | "li" | "main" | "mark" | "menu" | "menuitem" | "meta" | "meter" | "nav" | "noindex" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "param" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "samp" | "script" | "section" | "select" | "source" | "span" | "strong" | "summary" | "table" | "template" | "tbody" | "td" | "textarea" | "tfoot" | "th" | "thead" | "time" | "title" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr" | "webview" | "svg" | "animate" | "animateMotion" | "animateTransform" | "clipPath" | "defs" | "desc" | "ellipse" | "feBlend" | "feColorMatrix" | "feComponentTransfer" | "feComposite" | "feConvolveMatrix" | "feDiffuseLighting" | "feDisplacementMap" | "feDistantLight" | "feDropShadow" | "feFlood" | "feFuncA" | "feFuncB" | "feFuncG" | "feFuncR" | "feGaussianBlur" | "feImage" | "feMerge" | "feMergeNode" | "feMorphology" | "feOffset" | "fePointLight" | "feSpecularLighting" | "feSpotLight" | "feTile" | "feTurbulence" | "foreignObject" | "g" | "image" | "line" | "linearGradient" | "marker" | "mask" | "metadata" | "mpath" | "pattern" | "polygon" | "polyline" | "radialGradient" | "rect" | "switch" | "text" | "textPath" | "tspan" | "use" | "view" | ElementComponent<any, any> | React.ComponentClass<{}, any> | React.FunctionComponent<{}> | undefined = undefined>(as?: E | undefined) => <P, SubComponents = {}>({ displayName, Component, subComponents, }: {
|
|
111
|
+
export declare const createComponent: <E extends "symbol" | "object" | "s" | "big" | "link" | "small" | "sub" | "sup" | "circle" | "stop" | "path" | "style" | "map" | "filter" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "button" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "data" | "datalist" | "dd" | "del" | "details" | "dfn" | "dialog" | "div" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "form" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "input" | "ins" | "kbd" | "keygen" | "label" | "legend" | "li" | "main" | "mark" | "menu" | "menuitem" | "meta" | "meter" | "nav" | "noindex" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "param" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "samp" | "slot" | "script" | "section" | "select" | "source" | "span" | "strong" | "summary" | "table" | "template" | "tbody" | "td" | "textarea" | "tfoot" | "th" | "thead" | "time" | "title" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr" | "webview" | "svg" | "animate" | "animateMotion" | "animateTransform" | "clipPath" | "defs" | "desc" | "ellipse" | "feBlend" | "feColorMatrix" | "feComponentTransfer" | "feComposite" | "feConvolveMatrix" | "feDiffuseLighting" | "feDisplacementMap" | "feDistantLight" | "feDropShadow" | "feFlood" | "feFuncA" | "feFuncB" | "feFuncG" | "feFuncR" | "feGaussianBlur" | "feImage" | "feMerge" | "feMergeNode" | "feMorphology" | "feOffset" | "fePointLight" | "feSpecularLighting" | "feSpotLight" | "feTile" | "feTurbulence" | "foreignObject" | "g" | "image" | "line" | "linearGradient" | "marker" | "mask" | "metadata" | "mpath" | "pattern" | "polygon" | "polyline" | "radialGradient" | "rect" | "switch" | "text" | "textPath" | "tspan" | "use" | "view" | ElementComponent<any, any> | React.ComponentClass<{}, any> | React.FunctionComponent<{}> | undefined = undefined>(as?: E | undefined) => <P, SubComponents = {}>({ displayName, Component, subComponents, }: {
|
|
111
112
|
/** This is what the component will look like in the React dev tools. Encouraged to more easily
|
|
112
113
|
* understand the component tree */
|
|
113
114
|
displayName?: string | undefined;
|
|
@@ -169,10 +170,19 @@ export declare const createComponent: <E extends "symbol" | "object" | "s" | "bi
|
|
|
169
170
|
*
|
|
170
171
|
* @param fn Function that takes a model and optional ref and returns props
|
|
171
172
|
*/
|
|
172
|
-
export declare const createHook: <M extends Model<any, any>, PO extends {}, PI extends {}>(fn: (model: M, ref?: ((instance: any) => void) | React.RefObject<any> | null | undefined, elemProps?: PI | undefined) => PO) =>
|
|
173
|
-
export declare type BehaviorHook<M extends Model<any, any>, O extends {}> = <P extends {}, R>(model: M, elemProps?: P, ref?: React.Ref<R>) => O & P & (R extends HTMLOrSVGElement ? {
|
|
173
|
+
export declare const createHook: <M extends Model<any, any>, PO extends {}, PI extends {}>(fn: (model: M, ref?: ((instance: any) => void) | React.RefObject<any> | null | undefined, elemProps?: PI | undefined) => PO) => <P extends {}, R>(model: M, elemProps?: P | undefined, ref?: ((instance: R | null) => void) | React.RefObject<R> | null | undefined) => PO & P & (R extends HTMLOrSVGElement ? {
|
|
174
174
|
ref: React.Ref<R>;
|
|
175
175
|
} : {});
|
|
176
|
+
export declare const subModelHook: <M extends Model<any, any>, SM extends Model<any, any>, O extends {}>(fn: (model: M) => SM, hook: <P extends {}, R>(model: SM, elemProps?: P | undefined, ref?: ((instance: R | null) => void) | React.RefObject<R> | null | undefined) => O & P & (R extends HTMLOrSVGElement ? {
|
|
177
|
+
ref: React.Ref<R>;
|
|
178
|
+
} : {})) => <P_1 extends {}, R_1>(model: M, elemProps?: P_1 | undefined, ref?: ((instance: R_1 | null) => void) | React.RefObject<R_1> | null | undefined) => O & P_1 & (R_1 extends HTMLOrSVGElement ? {
|
|
179
|
+
ref: React.Ref<R_1>;
|
|
180
|
+
} : {});
|
|
181
|
+
export declare type BehaviorHook<M extends Model<any, any>, O extends {}> = {
|
|
182
|
+
bivarianceHack<P extends {}, R>(model: M, elemProps?: P, ref?: React.Ref<R>): O & P & (R extends HTMLOrSVGElement ? {
|
|
183
|
+
ref: React.Ref<R>;
|
|
184
|
+
} : {});
|
|
185
|
+
}['bivarianceHack'];
|
|
176
186
|
/**
|
|
177
187
|
* This function will create a new forked ref out of two input Refs. This is useful for components
|
|
178
188
|
* that use `React.forwardRef`, but also need internal access to a Ref.
|
|
@@ -197,7 +207,7 @@ export declare type BehaviorHook<M extends Model<any, any>, O extends {}> = <P e
|
|
|
197
207
|
* return <div ref={elementRef}/>
|
|
198
208
|
* })
|
|
199
209
|
*/
|
|
200
|
-
export declare function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>):
|
|
210
|
+
export declare function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>): React.RefCallback<T>;
|
|
201
211
|
/**
|
|
202
212
|
* This functions handles the common use case where a component needs a local ref and needs to
|
|
203
213
|
* forward a ref to an element.
|
|
@@ -214,7 +224,7 @@ export declare function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>):
|
|
|
214
224
|
*/
|
|
215
225
|
export declare function useLocalRef<T>(ref?: React.Ref<T>): {
|
|
216
226
|
localRef: React.RefObject<T>;
|
|
217
|
-
elementRef: (instance: T) => void;
|
|
227
|
+
elementRef: (instance: T | null) => void;
|
|
218
228
|
};
|
|
219
229
|
/**
|
|
220
230
|
* Returns a model, or calls the model hook with config. Clever way around the conditional React
|
|
@@ -260,9 +270,9 @@ export declare function useModelContext<T>(context: React.Context<T>, model?: T)
|
|
|
260
270
|
* return <div id="foo" {...props}>{children}</div>
|
|
261
271
|
* })
|
|
262
272
|
*/
|
|
263
|
-
export declare function composeHooks<M extends Model<any, any>, O1 extends {},
|
|
264
|
-
export declare function composeHooks<M extends Model<any, any>, R, P extends {}, O1 extends {}, O2 extends {}, O3 extends {}>(hook1:
|
|
265
|
-
export declare function composeHooks<M extends Model<any, any>, R, P extends {}, O1 extends {}, O2 extends {}, O3 extends {}, O4 extends {}>(hook1:
|
|
266
|
-
export declare function composeHooks<M extends Model<any, any>, R, P extends {}, O1 extends {}, O2 extends {}, O3 extends {}, O4 extends {}, O5 extends {}>(hook1:
|
|
273
|
+
export declare function composeHooks<M extends Model<any, any>, O1 extends {}, O2 extends {}>(hook1: BehaviorHook<M, O1>, hook2: BehaviorHook<M, O2>): BehaviorHook<M, O1 & O2>;
|
|
274
|
+
export declare function composeHooks<M extends Model<any, any>, R, P extends {}, O1 extends {}, O2 extends {}, O3 extends {}>(hook1: BehaviorHook<M, O1>, hook2: BehaviorHook<M, O2>, hook3: BehaviorHook<M, O3>): BehaviorHook<M, O1 & O2 & O3>;
|
|
275
|
+
export declare function composeHooks<M extends Model<any, any>, R, P extends {}, O1 extends {}, O2 extends {}, O3 extends {}, O4 extends {}>(hook1: BehaviorHook<M, O1>, hook2: BehaviorHook<M, O2>, hook3: BehaviorHook<M, O3>, hook4: BehaviorHook<M, O4>): BehaviorHook<M, O1 & O2 & O3 & O4>;
|
|
276
|
+
export declare function composeHooks<M extends Model<any, any>, R, P extends {}, O1 extends {}, O2 extends {}, O3 extends {}, O4 extends {}, O5 extends {}>(hook1: BehaviorHook<M, O1>, hook2: BehaviorHook<M, O2>, hook3: BehaviorHook<M, O3>, hook4: BehaviorHook<M, O4>, hook5: BehaviorHook<M, O5>): BehaviorHook<M, O1 & O2 & O3 & O4 & O5>;
|
|
267
277
|
export {};
|
|
268
278
|
//# sourceMappingURL=components.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/components.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAC;AAE/B;;;GAGG;AACH,oBAAY,UAAU,GAAG;IACvB,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,aAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GACpC,KAAK,GACL,KAAK,CAAC,GAAG,CACP,CAAC,SAAS,MAAM,iBAAiB,GAC7B,iBAAiB,CAAC,CAAC,CAAC,GACpB,CAAC,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GACxC,CAAC,SAAS,MAAM,iBAAiB,GAC/B,iBAAiB,CAAC,CAAC,CAAC,GACpB,CAAC,GACH,CAAC,CACN,CAAC;AAEN;;;;GAIG;AACH,oBAAY,WAAW,CAAC,CAAC,EAAE,WAAW,SAAS,KAAK,CAAC,WAAW,IAAI,CAAC,GACnE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG;IAClE;;;;;OAKG;IACH,GAAG,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;CAC/B,CAAC;AAEJ;;;;;;;GAOG;AACH,aAAK,qBAAqB,CACxB,CAAC,SAAS,KAAK,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,IACzC,CAAC,SAAS,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,oBAAY,YAAY,CACtB,UAAU,EACV,QAAQ,SACJ,MAAM,GAAG,CAAC,iBAAiB,GAC3B,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,GAC1B,SAAS,CAAC,GAAG,CAAC,GACd,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GACxB,SAAS,GACT,KAAK,GAAG,SAAS,IACnB,UAAU,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACrD,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GACxB,CAAC,GACD,QAAQ,SAAS,SAAS,GAC1B,CAAC,SAAS,MAAM,GAAG,CAAC,iBAAiB,GACnC,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GACnD,CAAC,GAAG,yBAAyB,CAAC,CAAC,CAAC,GAClC,QAAQ,SAAS,MAAM,GAAG,CAAC,iBAAiB,GAC5C,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,GAC1D,CAAC,GAAG,yBAAyB,CAAC,QAAQ,CAAC,GACzC,yBAAyB,CAAC,UAAU,CAAC,CAAC;AAK1C,aAAK,yBAAyB,CAAC,UAAU,IAAI,UAAU,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC9F,CAAC,SAAS,MAAM,GAAG,CAAC,iBAAiB,GACnC,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GACnD,CAAC,GACH,UAAU,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GACrC,CAAC,GACD,UAAU,SAAS,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAC/C,CAAC,GACD,EAAE,CAAC;AAEP;;;GAGG;AACH,oBAAY,gBAAgB,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI;IAC7D,MAAM,EAAE,kBAAkB,CAAC;IAC3B,CAAC,WAAW,SAAS,KAAK,CAAC,WAAW,EACpC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG;QACnC;;;;WAIG;QACH,EAAE,EAAE,WAAW,CAAC;KACjB,GACA,GAAG,CAAC,OAAO,CAAC;IACf,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAChE,CAAC;AAEF,oBAAY,SAAS,CAAC,CAAC,IAAI;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,UAAU,sBAAsB,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;IACxC,CACE,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG;QAAC,EAAE,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;KAAC;IAClE;;;OAGG;IACH,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;IAClB;;;;OAIG;IACH,OAAO,EAAE,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,GACvC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;CAC9B;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe;IAa1B;uCACmC;;IAEnC;;;;;;;;;;;;;;;;;OAiBG;;IAEH;;OAEG;;wHA0CJ,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,UAAU;;OAWtB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;OAOxB,CAAC;AAYF,oBAAY,YAAY,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI;IAClE,cAAc,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,EAC5B,KAAK,EAAE,CAAC,EACR,SAAS,CAAC,EAAE,CAAC,EACb,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GACjB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,gBAAgB,GAAG;QAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;KAAC,GAAG,EAAE,CAAC,CAAC;CACpE,CAAC,gBAAgB,CAAC,CAAC;AAapB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAK5F;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;;;EAKhD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,CAAC,EAClC,KAAK,EAAE,CAAC,GAAG,SAAS,EACpB,MAAM,EAAE,CAAC,EACT,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,KAG5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAG1E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAClF,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,GACzB,YAAY,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;AAE5B,wBAAgB,YAAY,CAC1B,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACzB,CAAC,EACD,CAAC,SAAS,EAAE,EACZ,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EAEb,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,GACzB,YAAY,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;AACjC,wBAAgB,YAAY,CAC1B,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACzB,CAAC,EACD,CAAC,SAAS,EAAE,EACZ,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EAEb,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,GACzB,YAAY,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;AACtC,wBAAgB,YAAY,CAC1B,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACzB,CAAC,EACD,CAAC,SAAS,EAAE,EACZ,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EACb,EAAE,SAAS,EAAE,EAEb,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,GACzB,YAAY,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC"}
|
|
@@ -46,6 +46,11 @@ exports.createComponent = function (as) { return function (_a) {
|
|
|
46
46
|
ReturnedComponent[key] = subComponents[key];
|
|
47
47
|
});
|
|
48
48
|
ReturnedComponent.displayName = displayName;
|
|
49
|
+
// The `any`s are here because `ElementComponent` takes care of the `as` type and the
|
|
50
|
+
// `ReturnComponent` type is overridden
|
|
51
|
+
ReturnedComponent.as = function (as) {
|
|
52
|
+
return exports.createComponent(as)({ displayName: displayName, Component: Component, subComponents: subComponents });
|
|
53
|
+
};
|
|
49
54
|
// Cast as `any`. We have already specified the return type. Be careful making changes to this
|
|
50
55
|
// file due to this `any` `ReturnedComponent` is a `React.ForwardRefExoticComponent`, but we want
|
|
51
56
|
// it to be either an `Component` or `ElementComponent`
|
|
@@ -88,13 +93,18 @@ exports.createComponent = function (as) { return function (_a) {
|
|
|
88
93
|
exports.createHook = function (fn) {
|
|
89
94
|
return function (model, elemProps, ref) {
|
|
90
95
|
var props = mergeProps_1.mergeProps(fn(model, ref, elemProps || {}), elemProps || {});
|
|
91
|
-
if (!props.hasOwnProperty('ref')) {
|
|
96
|
+
if (!props.hasOwnProperty('ref') && ref) {
|
|
92
97
|
// This is the weird "incoming ref isn't in props, but outgoing ref is in props" thing
|
|
93
98
|
props.ref = ref;
|
|
94
99
|
}
|
|
95
100
|
return props;
|
|
96
101
|
};
|
|
97
102
|
};
|
|
103
|
+
exports.subModelHook = function (fn, hook) {
|
|
104
|
+
return function (model, props, ref) {
|
|
105
|
+
return hook(fn(model), props, ref);
|
|
106
|
+
};
|
|
107
|
+
};
|
|
98
108
|
function setRef(ref, value) {
|
|
99
109
|
if (ref) {
|
|
100
110
|
if (typeof ref === 'function') {
|
|
@@ -200,7 +210,7 @@ function composeHooks() {
|
|
|
200
210
|
var returnProps = __spreadArrays(hooks).reverse().reduce(function (props, hook) {
|
|
201
211
|
return hook(model, props, props.ref || ref);
|
|
202
212
|
}, props);
|
|
203
|
-
if (!returnProps.hasOwnProperty('ref')) {
|
|
213
|
+
if (!returnProps.hasOwnProperty('ref') && ref) {
|
|
204
214
|
// This is the weird "incoming ref isn't in props, but outgoing ref is in props" thing
|
|
205
215
|
returnProps.ref = ref;
|
|
206
216
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mergeProps.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/mergeProps.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAC3D,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,GACb,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"mergeProps.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/mergeProps.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAC3D,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,GACb,CAAC,GAAG,CAAC,CAwCP"}
|
|
@@ -46,6 +46,11 @@ function mergeProps(targetProps, sourceProps) {
|
|
|
46
46
|
typeof targetProps[key] === 'function') {
|
|
47
47
|
// we don't support removing callbacks via `undefined`, so do nothing here
|
|
48
48
|
}
|
|
49
|
+
else if (key === 'ref' && sourceProps.hasOwnProperty('ref')) {
|
|
50
|
+
// refs should never be overridden. This doesn't happen normally, but happens with hook
|
|
51
|
+
// composition
|
|
52
|
+
returnProps.ref = returnProps.ref || sourceProps.ref;
|
|
53
|
+
}
|
|
49
54
|
else {
|
|
50
55
|
// @ts-ignore TS has more object constraint complaints that aren't useful here
|
|
51
56
|
returnProps[key] = sourceProps[key];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get a constant value in React, only running the callback function once. `React.useMemo` does not
|
|
3
|
+
* guarantee that a function will only be run once.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* const value = useConstant(generateUniqueId)
|
|
7
|
+
*/
|
|
8
|
+
export declare function useConstant<T>(fn: () => T): T;
|
|
9
|
+
//# sourceMappingURL=useConstant.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useConstant.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/useConstant.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAQ7C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var react_1 = require("react");
|
|
4
|
+
/**
|
|
5
|
+
* Get a constant value in React, only running the callback function once. `React.useMemo` does not
|
|
6
|
+
* guarantee that a function will only be run once.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const value = useConstant(generateUniqueId)
|
|
10
|
+
*/
|
|
11
|
+
function useConstant(fn) {
|
|
12
|
+
var ref = react_1.useRef();
|
|
13
|
+
if (!ref.current) {
|
|
14
|
+
ref.current = fn();
|
|
15
|
+
}
|
|
16
|
+
return ref.current;
|
|
17
|
+
}
|
|
18
|
+
exports.useConstant = useConstant;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useResizeObserver.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/useResizeObserver.ts"],"names":[],"mappings":"AAEA,OAAO,yBAAyB,MAAM,qBAAqB,CAAC;AAU5D,eAAO,MAAM,iBAAiB,EAAE,OAAO,yBAatC,CAAC"}
|