@ohos-ports/sprucelabs-react-heartwood-components 9.1.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +59 -0
- package/lib/__mocks__/stubs/events.js +166 -0
- package/lib/__mocks__/stubs/events.js.map +1 -0
- package/lib/__mocks__/stubs/location.js +34 -0
- package/lib/__mocks__/stubs/location.js.map +1 -0
- package/lib/__mocks__/stubs/users.js +225 -0
- package/lib/__mocks__/stubs/users.js.map +1 -0
- package/lib/__tests__/components/Pagination/Pagination.test.js +127 -0
- package/lib/__tests__/components/Pagination/Pagination.test.js.map +1 -0
- package/lib/components/Avatar/Avatar-story.js +34 -0
- package/lib/components/Avatar/Avatar-story.js.map +1 -0
- package/lib/components/Avatar/Avatar.d.ts +40 -0
- package/lib/components/Avatar/Avatar.d.ts.map +1 -0
- package/lib/components/Avatar/Avatar.js +91 -0
- package/lib/components/Avatar/Avatar.js.map +1 -0
- package/lib/components/Avatar/UserAvatar.js +45 -0
- package/lib/components/Avatar/UserAvatar.js.map +1 -0
- package/lib/components/BotText/BotText-story.d.ts +2 -0
- package/lib/components/BotText/BotText-story.d.ts.map +1 -0
- package/lib/components/BotText/BotText-story.js +21 -0
- package/lib/components/BotText/BotText-story.js.map +1 -0
- package/lib/components/BotText/BotText.d.ts +12 -0
- package/lib/components/BotText/BotText.d.ts.map +1 -0
- package/lib/components/BotText/BotText.js +52 -0
- package/lib/components/BotText/BotText.js.map +1 -0
- package/lib/components/Button/Button-story.js +109 -0
- package/lib/components/Button/Button-story.js.map +1 -0
- package/lib/components/Button/Button.d.ts +47 -0
- package/lib/components/Button/Button.d.ts.map +1 -0
- package/lib/components/Button/Button.js +155 -0
- package/lib/components/Button/Button.js.map +1 -0
- package/lib/components/ButtonGroup/ButtonGroup-story.js +27 -0
- package/lib/components/ButtonGroup/ButtonGroup-story.js.map +1 -0
- package/lib/components/ButtonGroup/ButtonGroup.d.ts +19 -0
- package/lib/components/ButtonGroup/ButtonGroup.d.ts.map +1 -0
- package/lib/components/ButtonGroup/ButtonGroup.js +64 -0
- package/lib/components/ButtonGroup/ButtonGroup.js.map +1 -0
- package/lib/components/Card/Card-story.d.ts +2 -0
- package/lib/components/Card/Card-story.d.ts.map +1 -0
- package/lib/components/Card/Card-story.js +389 -0
- package/lib/components/Card/Card-story.js.map +1 -0
- package/lib/components/Card/Card.d.ts +69 -0
- package/lib/components/Card/Card.d.ts.map +1 -0
- package/lib/components/Card/Card.js +113 -0
- package/lib/components/Card/Card.js.map +1 -0
- package/lib/components/Card/components/CardBody.d.ts +27 -0
- package/lib/components/Card/components/CardBody.d.ts.map +1 -0
- package/lib/components/Card/components/CardBody.js +45 -0
- package/lib/components/Card/components/CardBody.js.map +1 -0
- package/lib/components/Card/components/CardBuilder.d.ts +50 -0
- package/lib/components/Card/components/CardBuilder.d.ts.map +1 -0
- package/lib/components/Card/components/CardBuilder.js +139 -0
- package/lib/components/Card/components/CardBuilder.js.map +1 -0
- package/lib/components/Card/components/CardFooter.d.ts +11 -0
- package/lib/components/Card/components/CardFooter.d.ts.map +1 -0
- package/lib/components/Card/components/CardFooter.js +22 -0
- package/lib/components/Card/components/CardFooter.js.map +1 -0
- package/lib/components/Card/components/CardHeader.d.ts +28 -0
- package/lib/components/Card/components/CardHeader.d.ts.map +1 -0
- package/lib/components/Card/components/CardHeader.js +70 -0
- package/lib/components/Card/components/CardHeader.js.map +1 -0
- package/lib/components/Card/components/CardSection.d.ts +10 -0
- package/lib/components/Card/components/CardSection.d.ts.map +1 -0
- package/lib/components/Card/components/CardSection.js +27 -0
- package/lib/components/Card/components/CardSection.js.map +1 -0
- package/lib/components/Card/components/OnboardingCard.d.ts +27 -0
- package/lib/components/Card/components/OnboardingCard.d.ts.map +1 -0
- package/lib/components/Card/components/OnboardingCard.js +129 -0
- package/lib/components/Card/components/OnboardingCard.js.map +1 -0
- package/lib/components/Card/components/Scores.d.ts +15 -0
- package/lib/components/Card/components/Scores.d.ts.map +1 -0
- package/lib/components/Card/components/Scores.js +39 -0
- package/lib/components/Card/components/Scores.js.map +1 -0
- package/lib/components/Card/index.d.ts +11 -0
- package/lib/components/Card/index.d.ts.map +1 -0
- package/lib/components/Card/index.js +120 -0
- package/lib/components/Card/index.js.map +1 -0
- package/lib/components/CircleLoader/CircleLoader-story.d.ts +2 -0
- package/lib/components/CircleLoader/CircleLoader-story.d.ts.map +1 -0
- package/lib/components/CircleLoader/CircleLoader-story.js +20 -0
- package/lib/components/CircleLoader/CircleLoader-story.js.map +1 -0
- package/lib/components/CircleLoader/CircleLoader.d.ts +13 -0
- package/lib/components/CircleLoader/CircleLoader.d.ts.map +1 -0
- package/lib/components/CircleLoader/CircleLoader.js +28 -0
- package/lib/components/CircleLoader/CircleLoader.js.map +1 -0
- package/lib/components/ContextMenu/ContextMenu-story.js +31 -0
- package/lib/components/ContextMenu/ContextMenu-story.js.map +1 -0
- package/lib/components/ContextMenu/ContextMenu.d.ts +70 -0
- package/lib/components/ContextMenu/ContextMenu.d.ts.map +1 -0
- package/lib/components/ContextMenu/ContextMenu.js +315 -0
- package/lib/components/ContextMenu/ContextMenu.js.map +1 -0
- package/lib/components/Core/components/FeedBuilder/FeedBuilder-story.js +101 -0
- package/lib/components/Core/components/FeedBuilder/FeedBuilder-story.js.map +1 -0
- package/lib/components/Core/components/FeedBuilder/FeedBuilder.js +290 -0
- package/lib/components/Core/components/FeedBuilder/FeedBuilder.js.map +1 -0
- package/lib/components/Core/components/FooterPrimary/FooterPrimary.js +20 -0
- package/lib/components/Core/components/FooterPrimary/FooterPrimary.js.map +1 -0
- package/lib/components/Core/components/FooterPrimary/components/HelpButton/HelpButton.js +52 -0
- package/lib/components/Core/components/FooterPrimary/components/HelpButton/HelpButton.js.map +1 -0
- package/lib/components/Core/components/FooterPrimary/components/Legal/Legal.js +38 -0
- package/lib/components/Core/components/FooterPrimary/components/Legal/Legal.js.map +1 -0
- package/lib/components/Core/components/FooterPrimary/index.js +30 -0
- package/lib/components/Core/components/FooterPrimary/index.js.map +1 -0
- package/lib/components/Core/components/HeaderPrimary/HeaderPrimary-story.js +134 -0
- package/lib/components/Core/components/HeaderPrimary/HeaderPrimary-story.js.map +1 -0
- package/lib/components/Core/components/HeaderPrimary/HeaderPrimary.js +238 -0
- package/lib/components/Core/components/HeaderPrimary/HeaderPrimary.js.map +1 -0
- package/lib/components/Core/components/HeaderPrimary/components/DefaultLockup/DefaultLockup.js +32 -0
- package/lib/components/Core/components/HeaderPrimary/components/DefaultLockup/DefaultLockup.js.map +1 -0
- package/lib/components/Core/components/HeaderPrimary/components/Hamburger/Hamburger.js +58 -0
- package/lib/components/Core/components/HeaderPrimary/components/Hamburger/Hamburger.js.map +1 -0
- package/lib/components/Core/components/HeaderPrimary/components/LocationMenu/LocationMenu.js +169 -0
- package/lib/components/Core/components/HeaderPrimary/components/LocationMenu/LocationMenu.js.map +1 -0
- package/lib/components/Core/components/HeaderPrimary/components/UserMenu/UserMenu.js +56 -0
- package/lib/components/Core/components/HeaderPrimary/components/UserMenu/UserMenu.js.map +1 -0
- package/lib/components/Core/components/ProfileSummary/ProfileSummary-story.js +26 -0
- package/lib/components/Core/components/ProfileSummary/ProfileSummary-story.js.map +1 -0
- package/lib/components/Core/components/ProfileSummary/ProfileSummary.js +46 -0
- package/lib/components/Core/components/ProfileSummary/ProfileSummary.js.map +1 -0
- package/lib/components/Core/components/SaveBar/SaveBar-story.js +68 -0
- package/lib/components/Core/components/SaveBar/SaveBar-story.js.map +1 -0
- package/lib/components/Core/components/SaveBar/SaveBar.js +127 -0
- package/lib/components/Core/components/SaveBar/SaveBar.js.map +1 -0
- package/lib/components/Core/components/Sidebar/Sidebar-story.js +204 -0
- package/lib/components/Core/components/Sidebar/Sidebar-story.js.map +1 -0
- package/lib/components/Core/components/Sidebar/Sidebar.js +87 -0
- package/lib/components/Core/components/Sidebar/Sidebar.js.map +1 -0
- package/lib/components/Core/components/Sidebar/components/SidebarExpander/SidebarExpander.js +48 -0
- package/lib/components/Core/components/Sidebar/components/SidebarExpander/SidebarExpander.js.map +1 -0
- package/lib/components/Core/components/Sidebar/components/SidebarFooter/SidebarFooter.js +25 -0
- package/lib/components/Core/components/Sidebar/components/SidebarFooter/SidebarFooter.js.map +1 -0
- package/lib/components/Core/components/Sidebar/components/SidebarHeader/SidebarHeader.d.ts +12 -0
- package/lib/components/Core/components/Sidebar/components/SidebarHeader/SidebarHeader.d.ts.map +1 -0
- package/lib/components/Core/components/Sidebar/components/SidebarHeader/SidebarHeader.js +47 -0
- package/lib/components/Core/components/Sidebar/components/SidebarHeader/SidebarHeader.js.map +1 -0
- package/lib/components/Core/components/Sidebar/components/SidebarItem/SidebarItem.js +115 -0
- package/lib/components/Core/components/Sidebar/components/SidebarItem/SidebarItem.js.map +1 -0
- package/lib/components/Core/components/Sidebar/components/SidebarSection/SidebarSection.js +38 -0
- package/lib/components/Core/components/Sidebar/components/SidebarSection/SidebarSection.js.map +1 -0
- package/lib/components/Core/index.js +80 -0
- package/lib/components/Core/index.js.map +1 -0
- package/lib/components/Dropzone/Dropzone-story.js +119 -0
- package/lib/components/Dropzone/Dropzone-story.js.map +1 -0
- package/lib/components/Dropzone/Dropzone.js +317 -0
- package/lib/components/Dropzone/Dropzone.js.map +1 -0
- package/lib/components/EmptyState/EmptyState-story.d.ts +2 -0
- package/lib/components/EmptyState/EmptyState-story.d.ts.map +1 -0
- package/lib/components/EmptyState/EmptyState-story.js +60 -0
- package/lib/components/EmptyState/EmptyState-story.js.map +1 -0
- package/lib/components/EmptyState/EmptyState.d.ts +28 -0
- package/lib/components/EmptyState/EmptyState.d.ts.map +1 -0
- package/lib/components/EmptyState/EmptyState.js +54 -0
- package/lib/components/EmptyState/EmptyState.js.map +1 -0
- package/lib/components/EventDetails/EventDetails-story.d.ts +2 -0
- package/lib/components/EventDetails/EventDetails-story.d.ts.map +1 -0
- package/lib/components/EventDetails/EventDetails-story.js +112 -0
- package/lib/components/EventDetails/EventDetails-story.js.map +1 -0
- package/lib/components/EventDetails/EventDetails.d.ts +18 -0
- package/lib/components/EventDetails/EventDetails.d.ts.map +1 -0
- package/lib/components/EventDetails/EventDetails.js +75 -0
- package/lib/components/EventDetails/EventDetails.js.map +1 -0
- package/lib/components/EventDetails/EventDetailsUtilities.d.ts +11 -0
- package/lib/components/EventDetails/EventDetailsUtilities.d.ts.map +1 -0
- package/lib/components/EventDetails/EventDetailsUtilities.js +56 -0
- package/lib/components/EventDetails/EventDetailsUtilities.js.map +1 -0
- package/lib/components/EventDetails/components/EventDetailsItem/EventDetailsItem.d.ts +18 -0
- package/lib/components/EventDetails/components/EventDetailsItem/EventDetailsItem.d.ts.map +1 -0
- package/lib/components/EventDetails/components/EventDetailsItem/EventDetailsItem.js +111 -0
- package/lib/components/EventDetails/components/EventDetailsItem/EventDetailsItem.js.map +1 -0
- package/lib/components/EventDetails/eventDetailsMock.d.ts +10 -0
- package/lib/components/EventDetails/eventDetailsMock.d.ts.map +1 -0
- package/lib/components/EventDetails/eventDetailsMock.js +840 -0
- package/lib/components/EventDetails/eventDetailsMock.js.map +1 -0
- package/lib/components/FontLoader/FontLoader-story.js +16 -0
- package/lib/components/FontLoader/FontLoader-story.js.map +1 -0
- package/lib/components/FontLoader/FontLoader.js +148 -0
- package/lib/components/FontLoader/FontLoader.js.map +1 -0
- package/lib/components/Forms/FormPartials.js +70 -0
- package/lib/components/Forms/FormPartials.js.map +1 -0
- package/lib/components/Forms/Forms-story.js +297 -0
- package/lib/components/Forms/Forms-story.js.map +1 -0
- package/lib/components/Forms/components/Autosuggest/Autosuggest.d.ts +71 -0
- package/lib/components/Forms/components/Autosuggest/Autosuggest.d.ts.map +1 -0
- package/lib/components/Forms/components/Autosuggest/Autosuggest.js +372 -0
- package/lib/components/Forms/components/Autosuggest/Autosuggest.js.map +1 -0
- package/lib/components/Forms/components/Checkbox/Checkbox.d.ts +23 -0
- package/lib/components/Forms/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/lib/components/Forms/components/Checkbox/Checkbox.js +162 -0
- package/lib/components/Forms/components/Checkbox/Checkbox.js.map +1 -0
- package/lib/components/Forms/components/DatePicker/DatePicker.js +236 -0
- package/lib/components/Forms/components/DatePicker/DatePicker.js.map +1 -0
- package/lib/components/Forms/components/DomainInput/DomainInput.js +29 -0
- package/lib/components/Forms/components/DomainInput/DomainInput.js.map +1 -0
- package/lib/components/Forms/components/DurationInput/DurationInput.js +270 -0
- package/lib/components/Forms/components/DurationInput/DurationInput.js.map +1 -0
- package/lib/components/Forms/components/FormBuilder/FormBuilder-story.js +357 -0
- package/lib/components/Forms/components/FormBuilder/FormBuilder-story.js.map +1 -0
- package/lib/components/Forms/components/FormBuilder/FormBuilder.js +121 -0
- package/lib/components/Forms/components/FormBuilder/FormBuilder.js.map +1 -0
- package/lib/components/Forms/components/FormBuilder/components/FormInner/FormInner.js +201 -0
- package/lib/components/Forms/components/FormBuilder/components/FormInner/FormInner.js.map +1 -0
- package/lib/components/Forms/components/FormLayout/FormLayout.js +35 -0
- package/lib/components/Forms/components/FormLayout/FormLayout.js.map +1 -0
- package/lib/components/Forms/components/FormLayout/components/FormLayoutGroup/FormLayoutGroup.js +30 -0
- package/lib/components/Forms/components/FormLayout/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -0
- package/lib/components/Forms/components/FormLayout/components/FormLayoutItem/FormLayoutItem.js +32 -0
- package/lib/components/Forms/components/FormLayout/components/FormLayoutItem/FormLayoutItem.js.map +1 -0
- package/lib/components/Forms/components/FormLayout/index.js +32 -0
- package/lib/components/Forms/components/FormLayout/index.js.map +1 -0
- package/lib/components/Forms/components/PhoneInput/PhoneInput.d.ts +30 -0
- package/lib/components/Forms/components/PhoneInput/PhoneInput.d.ts.map +1 -0
- package/lib/components/Forms/components/PhoneInput/PhoneInput.js +119 -0
- package/lib/components/Forms/components/PhoneInput/PhoneInput.js.map +1 -0
- package/lib/components/Forms/components/Radio/Radio.d.ts +15 -0
- package/lib/components/Forms/components/Radio/Radio.d.ts.map +1 -0
- package/lib/components/Forms/components/Radio/Radio.js +92 -0
- package/lib/components/Forms/components/Radio/Radio.js.map +1 -0
- package/lib/components/Forms/components/Search/Search.js +96 -0
- package/lib/components/Forms/components/Search/Search.js.map +1 -0
- package/lib/components/Forms/components/Select/Select.js +95 -0
- package/lib/components/Forms/components/Select/Select.js.map +1 -0
- package/lib/components/Forms/components/Slider/Slider.js +100 -0
- package/lib/components/Forms/components/Slider/Slider.js.map +1 -0
- package/lib/components/Forms/components/Stars/Stars.js +101 -0
- package/lib/components/Forms/components/Stars/Stars.js.map +1 -0
- package/lib/components/Forms/components/Tag/Tag.js +60 -0
- package/lib/components/Forms/components/Tag/Tag.js.map +1 -0
- package/lib/components/Forms/components/TextArea/TextArea.js +55 -0
- package/lib/components/Forms/components/TextArea/TextArea.js.map +1 -0
- package/lib/components/Forms/components/TextInput/TextInput.d.ts +28 -0
- package/lib/components/Forms/components/TextInput/TextInput.d.ts.map +1 -0
- package/lib/components/Forms/components/TextInput/TextInput.js +57 -0
- package/lib/components/Forms/components/TextInput/TextInput.js.map +1 -0
- package/lib/components/Forms/components/Toggle/Toggle.d.ts +9 -0
- package/lib/components/Forms/components/Toggle/Toggle.d.ts.map +1 -0
- package/lib/components/Forms/components/Toggle/Toggle.js +43 -0
- package/lib/components/Forms/components/Toggle/Toggle.js.map +1 -0
- package/lib/components/Forms/index.d.ts +18 -0
- package/lib/components/Forms/index.d.ts.map +1 -0
- package/lib/components/Forms/index.js +182 -0
- package/lib/components/Forms/index.js.map +1 -0
- package/lib/components/Heading/Heading-story.js +18 -0
- package/lib/components/Heading/Heading-story.js.map +1 -0
- package/lib/components/Heading/Heading.d.ts +13 -0
- package/lib/components/Heading/Heading.d.ts.map +1 -0
- package/lib/components/Heading/Heading.js +32 -0
- package/lib/components/Heading/Heading.js.map +1 -0
- package/lib/components/Icon/Icon-story.d.ts +2 -0
- package/lib/components/Icon/Icon-story.d.ts.map +1 -0
- package/lib/components/Icon/Icon-story.js +44 -0
- package/lib/components/Icon/Icon-story.js.map +1 -0
- package/lib/components/Icon/Icon.d.ts +13 -0
- package/lib/components/Icon/Icon.d.ts.map +1 -0
- package/lib/components/Icon/Icon.js +52 -0
- package/lib/components/Icon/Icon.js.map +1 -0
- package/lib/components/Image/Image.d.ts +11 -0
- package/lib/components/Image/Image.d.ts.map +1 -0
- package/lib/components/Image/Image.js +32 -0
- package/lib/components/Image/Image.js.map +1 -0
- package/lib/components/ImageCropper/ImageCropper-story.js +219 -0
- package/lib/components/ImageCropper/ImageCropper-story.js.map +1 -0
- package/lib/components/ImageCropper/ImageCropper.js +256 -0
- package/lib/components/ImageCropper/ImageCropper.js.map +1 -0
- package/lib/components/ImageSSR/ImageSSR.js +32 -0
- package/lib/components/ImageSSR/ImageSSR.js.map +1 -0
- package/lib/components/Layout/Layout-story.js +128 -0
- package/lib/components/Layout/Layout-story.js.map +1 -0
- package/lib/components/Layout/Layout.js +43 -0
- package/lib/components/Layout/Layout.js.map +1 -0
- package/lib/components/Layout/components/LayoutSection/LayoutSection.js +38 -0
- package/lib/components/Layout/components/LayoutSection/LayoutSection.js.map +1 -0
- package/lib/components/Layout/index.js +24 -0
- package/lib/components/Layout/index.js.map +1 -0
- package/lib/components/List/List-story.d.ts +2 -0
- package/lib/components/List/List-story.d.ts.map +1 -0
- package/lib/components/List/List-story.js +241 -0
- package/lib/components/List/List-story.js.map +1 -0
- package/lib/components/List/List.d.ts +34 -0
- package/lib/components/List/List.d.ts.map +1 -0
- package/lib/components/List/List.js +83 -0
- package/lib/components/List/List.js.map +1 -0
- package/lib/components/List/components/ExpandableListItem/ExpandableListItem.d.ts +27 -0
- package/lib/components/List/components/ExpandableListItem/ExpandableListItem.d.ts.map +1 -0
- package/lib/components/List/components/ExpandableListItem/ExpandableListItem.js +93 -0
- package/lib/components/List/components/ExpandableListItem/ExpandableListItem.js.map +1 -0
- package/lib/components/List/components/ListHeader/ListHeader.d.ts +16 -0
- package/lib/components/List/components/ListHeader/ListHeader.d.ts.map +1 -0
- package/lib/components/List/components/ListHeader/ListHeader.js +51 -0
- package/lib/components/List/components/ListHeader/ListHeader.js.map +1 -0
- package/lib/components/List/components/ListItem/ListItem.d.ts +67 -0
- package/lib/components/List/components/ListItem/ListItem.d.ts.map +1 -0
- package/lib/components/List/components/ListItem/ListItem.js +206 -0
- package/lib/components/List/components/ListItem/ListItem.js.map +1 -0
- package/lib/components/List/components/SortableList/SortableList.d.ts +35 -0
- package/lib/components/List/components/SortableList/SortableList.d.ts.map +1 -0
- package/lib/components/List/components/SortableList/SortableList.js +180 -0
- package/lib/components/List/components/SortableList/SortableList.js.map +1 -0
- package/lib/components/List/index.d.ts +6 -0
- package/lib/components/List/index.d.ts.map +1 -0
- package/lib/components/List/index.js +74 -0
- package/lib/components/List/index.js.map +1 -0
- package/lib/components/Loader/Loader-story.js +30 -0
- package/lib/components/Loader/Loader-story.js.map +1 -0
- package/lib/components/Loader/Loader.js +36 -0
- package/lib/components/Loader/Loader.js.map +1 -0
- package/lib/components/Loader/Loader.test.js +17 -0
- package/lib/components/Loader/Loader.test.js.map +1 -0
- package/lib/components/MarkdownText/MarkdownText.d.ts +8 -0
- package/lib/components/MarkdownText/MarkdownText.d.ts.map +1 -0
- package/lib/components/MarkdownText/MarkdownText.js +26 -0
- package/lib/components/MarkdownText/MarkdownText.js.map +1 -0
- package/lib/components/Message/Message-story.js +135 -0
- package/lib/components/Message/Message-story.js.map +1 -0
- package/lib/components/Message/Message.js +147 -0
- package/lib/components/Message/Message.js.map +1 -0
- package/lib/components/Message/components/MessageBuilder.js +132 -0
- package/lib/components/Message/components/MessageBuilder.js.map +1 -0
- package/lib/components/Message/index.js +24 -0
- package/lib/components/Message/index.js.map +1 -0
- package/lib/components/Modal/Modal-story.js +239 -0
- package/lib/components/Modal/Modal-story.js.map +1 -0
- package/lib/components/Modal/Modal.js +86 -0
- package/lib/components/Modal/Modal.js.map +1 -0
- package/lib/components/Modal/components/ModalBody/ModalBody.js +30 -0
- package/lib/components/Modal/components/ModalBody/ModalBody.js.map +1 -0
- package/lib/components/Modal/components/ModalFooter/ModalFooter.js +31 -0
- package/lib/components/Modal/components/ModalFooter/ModalFooter.js.map +1 -0
- package/lib/components/Modal/components/ModalHeader/ModalHeader.js +84 -0
- package/lib/components/Modal/components/ModalHeader/ModalHeader.js.map +1 -0
- package/lib/components/Page/Page-story.js +115 -0
- package/lib/components/Page/Page-story.js.map +1 -0
- package/lib/components/Page/Page.js +55 -0
- package/lib/components/Page/Page.js.map +1 -0
- package/lib/components/Page/components/PageContent/PageContent.js +22 -0
- package/lib/components/Page/components/PageContent/PageContent.js.map +1 -0
- package/lib/components/Page/components/PageHeader/PageHeader.js +127 -0
- package/lib/components/Page/components/PageHeader/PageHeader.js.map +1 -0
- package/lib/components/Page/index.js +32 -0
- package/lib/components/Page/index.js.map +1 -0
- package/lib/components/PagedModal/PagedModal-story.js +121 -0
- package/lib/components/PagedModal/PagedModal-story.js.map +1 -0
- package/lib/components/PagedModal/PagedModal.js +84 -0
- package/lib/components/PagedModal/PagedModal.js.map +1 -0
- package/lib/components/Pagination/Pagination-story.js +35 -0
- package/lib/components/Pagination/Pagination-story.js.map +1 -0
- package/lib/components/Pagination/Pagination.js +157 -0
- package/lib/components/Pagination/Pagination.js.map +1 -0
- package/lib/components/RecordSelectionList/RecordSelectList-story.js +491 -0
- package/lib/components/RecordSelectionList/RecordSelectList-story.js.map +1 -0
- package/lib/components/RecordSelectionList/RecordSelectionList.d.ts +112 -0
- package/lib/components/RecordSelectionList/RecordSelectionList.d.ts.map +1 -0
- package/lib/components/RecordSelectionList/RecordSelectionList.js +702 -0
- package/lib/components/RecordSelectionList/RecordSelectionList.js.map +1 -0
- package/lib/components/RecordSelectionList/RecordSelectionListItem.d.ts +5 -0
- package/lib/components/RecordSelectionList/RecordSelectionListItem.d.ts.map +1 -0
- package/lib/components/RecordSelectionList/RecordSelectionListItem.js +20 -0
- package/lib/components/RecordSelectionList/RecordSelectionListItem.js.map +1 -0
- package/lib/components/RecordTable/RecordTable-story.d.ts +2 -0
- package/lib/components/RecordTable/RecordTable-story.d.ts.map +1 -0
- package/lib/components/RecordTable/RecordTable-story.js +242 -0
- package/lib/components/RecordTable/RecordTable-story.js.map +1 -0
- package/lib/components/RecordTable/RecordTable.d.ts +133 -0
- package/lib/components/RecordTable/RecordTable.d.ts.map +1 -0
- package/lib/components/RecordTable/RecordTable.js +523 -0
- package/lib/components/RecordTable/RecordTable.js.map +1 -0
- package/lib/components/SplitButton/SplitButton-story.js +60 -0
- package/lib/components/SplitButton/SplitButton-story.js.map +1 -0
- package/lib/components/SplitButton/SplitButton.d.ts +47 -0
- package/lib/components/SplitButton/SplitButton.d.ts.map +1 -0
- package/lib/components/SplitButton/SplitButton.js +296 -0
- package/lib/components/SplitButton/SplitButton.js.map +1 -0
- package/lib/components/Subheading/Subheading-story.js +18 -0
- package/lib/components/Subheading/Subheading-story.js.map +1 -0
- package/lib/components/Subheading/Subheading.js +40 -0
- package/lib/components/Subheading/Subheading.js.map +1 -0
- package/lib/components/Table/Table-story.js +428 -0
- package/lib/components/Table/Table-story.js.map +1 -0
- package/lib/components/Table/Table.d.ts +63 -0
- package/lib/components/Table/Table.d.ts.map +1 -0
- package/lib/components/Table/Table.js +395 -0
- package/lib/components/Table/Table.js.map +1 -0
- package/lib/components/Table/components/TableFilters/TableFilters.js +31 -0
- package/lib/components/Table/components/TableFilters/TableFilters.js.map +1 -0
- package/lib/components/Table/components/TableSearch/TableSearch.d.ts +7 -0
- package/lib/components/Table/components/TableSearch/TableSearch.d.ts.map +1 -0
- package/lib/components/Table/components/TableSearch/TableSearch.js +30 -0
- package/lib/components/Table/components/TableSearch/TableSearch.js.map +1 -0
- package/lib/components/Table/index.d.ts +4 -0
- package/lib/components/Table/index.d.ts.map +1 -0
- package/lib/components/Table/index.js +40 -0
- package/lib/components/Table/index.js.map +1 -0
- package/lib/components/Tabs/Tabs-story.d.ts +2 -0
- package/lib/components/Tabs/Tabs-story.d.ts.map +1 -0
- package/lib/components/Tabs/Tabs-story.js +36 -0
- package/lib/components/Tabs/Tabs-story.js.map +1 -0
- package/lib/components/Tabs/Tabs.d.ts +40 -0
- package/lib/components/Tabs/Tabs.d.ts.map +1 -0
- package/lib/components/Tabs/Tabs.js +244 -0
- package/lib/components/Tabs/Tabs.js.map +1 -0
- package/lib/components/Tabs/components/Tab/Tab.d.ts +26 -0
- package/lib/components/Tabs/components/Tab/Tab.d.ts.map +1 -0
- package/lib/components/Tabs/components/Tab/Tab.js +46 -0
- package/lib/components/Tabs/components/Tab/Tab.js.map +1 -0
- package/lib/components/Text/Text-story.d.ts +2 -0
- package/lib/components/Text/Text-story.d.ts.map +1 -0
- package/lib/components/Text/Text-story.js +51 -0
- package/lib/components/Text/Text-story.js.map +1 -0
- package/lib/components/Text/Text.d.ts +18 -0
- package/lib/components/Text/Text.d.ts.map +1 -0
- package/lib/components/Text/Text.js +123 -0
- package/lib/components/Text/Text.js.map +1 -0
- package/lib/components/TextContainer/TextContainer-story.js +32 -0
- package/lib/components/TextContainer/TextContainer-story.js.map +1 -0
- package/lib/components/TextContainer/TextContainer.js +33 -0
- package/lib/components/TextContainer/TextContainer.js.map +1 -0
- package/lib/components/TextStyle/TextStyle-story.js +28 -0
- package/lib/components/TextStyle/TextStyle-story.js.map +1 -0
- package/lib/components/TextStyle/TextStyle.js +41 -0
- package/lib/components/TextStyle/TextStyle.js.map +1 -0
- package/lib/components/Toast/Toast-story.d.ts +2 -0
- package/lib/components/Toast/Toast-story.d.ts.map +1 -0
- package/lib/components/Toast/Toast-story.js +210 -0
- package/lib/components/Toast/Toast-story.js.map +1 -0
- package/lib/components/Toast/Toast.d.ts +24 -0
- package/lib/components/Toast/Toast.d.ts.map +1 -0
- package/lib/components/Toast/Toast.js +76 -0
- package/lib/components/Toast/Toast.js.map +1 -0
- package/lib/components/Toast/components/ToastWrapper/ToastWrapper.d.ts +24 -0
- package/lib/components/Toast/components/ToastWrapper/ToastWrapper.d.ts.map +1 -0
- package/lib/components/Toast/components/ToastWrapper/ToastWrapper.js +131 -0
- package/lib/components/Toast/components/ToastWrapper/ToastWrapper.js.map +1 -0
- package/lib/components/TruncatedList/TruncatedList-story.js +222 -0
- package/lib/components/TruncatedList/TruncatedList-story.js.map +1 -0
- package/lib/components/TruncatedList/TruncatedList.d.ts +49 -0
- package/lib/components/TruncatedList/TruncatedList.d.ts.map +1 -0
- package/lib/components/TruncatedList/TruncatedList.js +188 -0
- package/lib/components/TruncatedList/TruncatedList.js.map +1 -0
- package/lib/components/View/View-story.js +485 -0
- package/lib/components/View/View-story.js.map +1 -0
- package/lib/components/View/View.d.ts +26 -0
- package/lib/components/View/View.d.ts.map +1 -0
- package/lib/components/View/View.js +91 -0
- package/lib/components/View/View.js.map +1 -0
- package/lib/components/_utilities/Anchor.js +28 -0
- package/lib/components/_utilities/Anchor.js.map +1 -0
- package/lib/custom-types.d.js +2 -0
- package/lib/custom-types.d.js.map +1 -0
- package/lib/icons.js +3328 -0
- package/lib/icons.js.map +1 -0
- package/lib/index.d.ts +46 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +707 -0
- package/lib/index.js.map +1 -0
- package/lib/stubs/events.js +166 -0
- package/lib/stubs/events.js.map +1 -0
- package/lib/stubs/location.js +34 -0
- package/lib/stubs/location.js.map +1 -0
- package/lib/stubs/users.js +225 -0
- package/lib/stubs/users.js.map +1 -0
- package/lib/utilities.js +23 -0
- package/lib/utilities.js.map +1 -0
- package/package.json +174 -0
- package/static/android-chrome-192x192.png +0 -0
- package/static/android-chrome-256x256.png +0 -0
- package/static/apple-touch-icon.png +0 -0
- package/static/assets/bg.jpeg +0 -0
- package/static/assets/icons/Design/Rotate/rotate-back.svg +9 -0
- package/static/assets/icons/Design/Rotate/rotate-forward.svg +9 -0
- package/static/assets/icons/Interface-Essential/Alerts/alert-triangle--16w.svg +3 -0
- package/static/assets/icons/Interface-Essential/Alerts/alert-triangle--56w.svg +5 -0
- package/static/assets/icons/Interface-Essential/Alerts/alert-triangle.svg +3 -0
- package/static/assets/icons/Interface-Essential/Dashboard/gauge-dashboard-1.svg +11 -0
- package/static/assets/icons/Interface-Essential/Date/Calendar/calendar-3.svg +12 -0
- package/static/assets/icons/Interface-Essential/Date/Calendar/calendar-date.svg +9 -0
- package/static/assets/icons/Interface-Essential/Delete/bin.svg +7 -0
- package/static/assets/icons/Interface-Essential/Edit/pencil-write.svg +5 -0
- package/static/assets/icons/Interface-Essential/Form-Edition/paper-write.svg +8 -0
- package/static/assets/icons/Interface-Essential/Form-Validation/check-circle-1.svg +4 -0
- package/static/assets/icons/Interface-Essential/Help/question-help-square--16w.svg +5 -0
- package/static/assets/icons/Interface-Essential/Help/question-help-square.svg +5 -0
- package/static/assets/icons/Interface-Essential/Home/house-1--16w.svg +4 -0
- package/static/assets/icons/Interface-Essential/Home/house-1.svg +4 -0
- package/static/assets/icons/Interface-Essential/Lists/list-bullets-1.svg +8 -0
- package/static/assets/icons/Interface-Essential/Lock/Unlock/Lock/Unlock-4.svg +5 -0
- package/static/assets/icons/Interface-Essential/Lock/Unlock/lock-6--16w.svg +3 -0
- package/static/assets/icons/Interface-Essential/Lock/Unlock/lock-6.svg +5 -0
- package/static/assets/icons/Interface-Essential/Login/Logout/logout.svg +5 -0
- package/static/assets/icons/Interface-Essential/Menu/navigation-menu-horizontal.svg +5 -0
- package/static/assets/icons/Interface-Essential/Select/cursor-select-4.svg +14 -0
- package/static/assets/icons/Interface-Essential/Time/stopwatch.svg +8 -0
- package/static/assets/icons/Interface-Essential/Time-Files/time-clock-file-check.svg +7 -0
- package/static/assets/icons/Interface-Essential/Time-Files/time-clock-file-upload.svg +9 -0
- package/static/assets/icons/Maps-Navigation/Pins/pin-2.svg +4 -0
- package/static/assets/icons/Maps-Navigation/Pins/pin.svg +4 -0
- package/static/assets/icons/Messages-Chat-Smileys/Conversation/conversation-text--16w.svg +8 -0
- package/static/assets/icons/Messages-Chat-Smileys/Conversation/conversation-text.svg +8 -0
- package/static/assets/icons/Messages-Chat-Smileys/Messages-Speech-Bubbles/messages-bubble-square-text.svg +5 -0
- package/static/assets/icons/Phones-Mobile-Devices/Phone/phone-retro-1.svg +7 -0
- package/static/assets/icons/Programming-Apps-Websites/Plugins/Modules/module-puzzle.svg +3 -0
- package/static/assets/icons/Shopping-E-Commerce/Shops/shop-1--56w.svg +6 -0
- package/static/assets/icons/Shopping-E-Commerce/Shops/shop-1.svg +7 -0
- package/static/assets/icons/Social-Medias-Rewards-Rating/Rating/rating-star-1-1.svg +3 -0
- package/static/assets/icons/Social-Medias-Rewards-Rating/Rating/rating-star-1.svg +3 -0
- package/static/assets/icons/Transportation/Aircraft/aircraft-military-plane.svg +18 -0
- package/static/assets/icons/Users/Geometric-Close-Up-Single-User-Actions-Neutral/single-neutral-actions-image--56w.svg +7 -0
- package/static/assets/icons/Users/Geometric-Close-Up-Single-User-Actions-Neutral/single-neutral-actions-up-down.svg +8 -0
- package/static/assets/icons/Users/Geometric-Close-Up-Single-User-Neutral/single-neutral-id-card-3.svg +8 -0
- package/static/assets/icons/Users/Geometric-Full-Body-Multiple-Users/multiple-users-1.svg +8 -0
- package/static/assets/icons/Work-Office-Companies/Human-Resources/human-resources-search-team--16w.svg +8 -0
- package/static/assets/icons/Work-Office-Companies/Human-Resources/human-resources-search-team.svg +8 -0
- package/static/assets/icons/ic_add.svg +5 -0
- package/static/assets/icons/ic_add_circle_outline.svg +3 -0
- package/static/assets/icons/ic_arrow_back.svg +3 -0
- package/static/assets/icons/ic_arrow_drop_down.svg +3 -0
- package/static/assets/icons/ic_arrow_forward.svg +3 -0
- package/static/assets/icons/ic_button.svg +3 -0
- package/static/assets/icons/ic_calendar.svg +12 -0
- package/static/assets/icons/ic_cancel.svg +8 -0
- package/static/assets/icons/ic_caution.svg +3 -0
- package/static/assets/icons/ic_caution_light_large.svg +5 -0
- package/static/assets/icons/ic_check_box.svg +3 -0
- package/static/assets/icons/ic_check_box_outline_blank.svg +3 -0
- package/static/assets/icons/ic_check_circle.svg +3 -0
- package/static/assets/icons/ic_close.svg +3 -0
- package/static/assets/icons/ic_colors.svg +8 -0
- package/static/assets/icons/ic_complete.svg +4 -0
- package/static/assets/icons/ic_css.svg +7 -0
- package/static/assets/icons/ic_dashboard.svg +11 -0
- package/static/assets/icons/ic_date.svg +9 -0
- package/static/assets/icons/ic_date_disable.svg +8 -0
- package/static/assets/icons/ic_delete.svg +7 -0
- package/static/assets/icons/ic_disable.svg +3 -0
- package/static/assets/icons/ic_drag_handle.svg +3 -0
- package/static/assets/icons/ic_drop_light_large.svg +14 -0
- package/static/assets/icons/ic_edit.svg +5 -0
- package/static/assets/icons/ic_email.svg +6 -0
- package/static/assets/icons/ic_fonts.svg +6 -0
- package/static/assets/icons/ic_fullscreen.svg +3 -0
- package/static/assets/icons/ic_fullscreen_exit.svg +3 -0
- package/static/assets/icons/ic_guests.svg +8 -0
- package/static/assets/icons/ic_help.svg +5 -0
- package/static/assets/icons/ic_home.svg +4 -0
- package/static/assets/icons/ic_indeterminate_check_box.svg +3 -0
- package/static/assets/icons/ic_keyboard_arrow_left.svg +3 -0
- package/static/assets/icons/ic_keyboard_arrow_right.svg +3 -0
- package/static/assets/icons/ic_late.svg +5 -0
- package/static/assets/icons/ic_launch.svg +18 -0
- package/static/assets/icons/ic_location.svg +4 -0
- package/static/assets/icons/ic_logout.svg +5 -0
- package/static/assets/icons/ic_menu.svg +3 -0
- package/static/assets/icons/ic_message.svg +5 -0
- package/static/assets/icons/ic_message_failed.svg +7 -0
- package/static/assets/icons/ic_messages.svg +8 -0
- package/static/assets/icons/ic_more.svg +5 -0
- package/static/assets/icons/ic_new_tab.svg +3 -0
- package/static/assets/icons/ic_note.svg +8 -0
- package/static/assets/icons/ic_payment_failed_solid.svg +5 -0
- package/static/assets/icons/ic_payment_success_solid.svg +5 -0
- package/static/assets/icons/ic_phone.svg +7 -0
- package/static/assets/icons/ic_pin.svg +4 -0
- package/static/assets/icons/ic_pin_outline.svg +4 -0
- package/static/assets/icons/ic_power.svg +4 -0
- package/static/assets/icons/ic_private.svg +5 -0
- package/static/assets/icons/ic_profile_image_light_large.svg +7 -0
- package/static/assets/icons/ic_public.svg +5 -0
- package/static/assets/icons/ic_radio_button_checked.svg +3 -0
- package/static/assets/icons/ic_radio_button_unchecked.svg +3 -0
- package/static/assets/icons/ic_rotate_left.svg +9 -0
- package/static/assets/icons/ic_rotate_right.svg +9 -0
- package/static/assets/icons/ic_search.svg +3 -0
- package/static/assets/icons/ic_settings.svg +4 -0
- package/static/assets/icons/ic_shop_light_large.svg +6 -0
- package/static/assets/icons/ic_show.svg +4 -0
- package/static/assets/icons/ic_skill.svg +3 -0
- package/static/assets/icons/ic_star_outline.svg +3 -0
- package/static/assets/icons/ic_star_solid.svg +3 -0
- package/static/assets/icons/ic_status.svg +8 -0
- package/static/assets/icons/ic_store.svg +7 -0
- package/static/assets/icons/ic_switch_users.svg +8 -0
- package/static/assets/icons/ic_team.svg +8 -0
- package/static/assets/icons/ic_teammates.svg +8 -0
- package/static/assets/icons/ic_unordered_list.svg +8 -0
- package/static/assets/icons/ic_upload.svg +8 -0
- package/static/assets/icons/ic_upload_file_light_large.svg +9 -0
- package/static/assets/icons/ic_upload_file_success_light_large.svg +7 -0
- package/static/assets/icons/ic_user_avatar.svg +3 -0
- package/static/assets/icons/ic_wifi.svg +9 -0
- package/static/assets/icons/s-ic_spruce-logo-02.svg +3 -0
- package/static/assets/icons/s-ic_spruce-logo.svg +3 -0
- package/static/assets/logo.png +0 -0
- package/static/assets/users/user-01--96w.png +0 -0
- package/static/assets/users/user-01.png +0 -0
- package/static/assets/users/user-02--96w.png +0 -0
- package/static/assets/users/user-03--96w.png +0 -0
- package/static/assets/users/user-04--96w.png +0 -0
- package/static/assets/users/user-04.png +0 -0
- package/static/assets/users/user-05--96w.png +0 -0
- package/static/assets/users/user-05.png +0 -0
- package/static/assets/users/user-06--96w.png +0 -0
- package/static/assets/users/user-06.png +0 -0
- package/static/assets/users/user-07--96w.png +0 -0
- package/static/assets/users/user-07.png +0 -0
- package/static/assets/users/user-08--96w.png +0 -0
- package/static/assets/users/user-08.png +0 -0
- package/static/assets/users/user-09--96w.png +0 -0
- package/static/assets/users/user-09.png +0 -0
- package/static/assets/users/user-placeholder--96w.png +0 -0
- package/static/assets/users/user-placeholder.png +0 -0
- package/static/browserconfig.xml +9 -0
- package/static/favicon-16x16.png +0 -0
- package/static/favicon-32x32.png +0 -0
- package/static/favicon.ico +0 -0
- package/static/mstile-150x150.png +0 -0
- package/static/safari-pinned-tab.svg +26 -0
- package/static/site.webmanifest +19 -0
|
@@ -0,0 +1,491 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
8
|
+
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
+
|
|
11
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread"));
|
|
12
|
+
|
|
13
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
14
|
+
|
|
15
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
16
|
+
|
|
17
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
18
|
+
|
|
19
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
20
|
+
|
|
21
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
22
|
+
|
|
23
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
24
|
+
|
|
25
|
+
var _getPrototypeOf3 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
26
|
+
|
|
27
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
28
|
+
|
|
29
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
30
|
+
|
|
31
|
+
var _lodash = require("lodash");
|
|
32
|
+
|
|
33
|
+
var _react2 = require("@storybook/react");
|
|
34
|
+
|
|
35
|
+
var _react3 = require("@storybook/addon-knobs/react");
|
|
36
|
+
|
|
37
|
+
var _tableData = require("../../../.storybook/data/tableData");
|
|
38
|
+
|
|
39
|
+
var _RecordSelectionList = _interopRequireDefault(require("../RecordSelectionList/RecordSelectionList"));
|
|
40
|
+
|
|
41
|
+
var _Modal = _interopRequireDefault(require("../Modal/Modal"));
|
|
42
|
+
|
|
43
|
+
var _Card = _interopRequireWildcard(require("../Card"));
|
|
44
|
+
|
|
45
|
+
var stories = (0, _react2.storiesOf)('RecordSelectionList', module);
|
|
46
|
+
stories.addDecorator(_react3.withKnobs);
|
|
47
|
+
|
|
48
|
+
var RecordListItemsExample =
|
|
49
|
+
/*#__PURE__*/
|
|
50
|
+
function (_Component) {
|
|
51
|
+
(0, _inherits2["default"])(RecordListItemsExample, _Component);
|
|
52
|
+
|
|
53
|
+
function RecordListItemsExample(props) {
|
|
54
|
+
var _this;
|
|
55
|
+
|
|
56
|
+
(0, _classCallCheck2["default"])(this, RecordListItemsExample);
|
|
57
|
+
_this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf3["default"])(RecordListItemsExample).call(this, props));
|
|
58
|
+
var selectedIds = props.locations.map(function (loc) {
|
|
59
|
+
return loc.node.id;
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
if (props.canSelect === 'one') {
|
|
63
|
+
selectedIds = (0, _lodash.sampleSize)(selectedIds, 1);
|
|
64
|
+
} else {
|
|
65
|
+
selectedIds = (0, _lodash.sampleSize)(selectedIds, Math.floor(selectedIds.length / 2));
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
var unselectedIds = props.locations.map(function (loc) {
|
|
69
|
+
return loc.node.id;
|
|
70
|
+
}).filter(function (locationId) {
|
|
71
|
+
return selectedIds.indexOf(locationId) === -1;
|
|
72
|
+
});
|
|
73
|
+
var unselectableIds = (0, _lodash.sampleSize)(unselectedIds, unselectedIds.length / 2);
|
|
74
|
+
_this.state = {
|
|
75
|
+
selectedIds: selectedIds,
|
|
76
|
+
locations: props.locations,
|
|
77
|
+
unselectableIds: unselectableIds
|
|
78
|
+
};
|
|
79
|
+
return _this;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
(0, _createClass2["default"])(RecordListItemsExample, [{
|
|
83
|
+
key: "render",
|
|
84
|
+
value: function render() {
|
|
85
|
+
var _this2 = this;
|
|
86
|
+
|
|
87
|
+
var _this$props = this.props,
|
|
88
|
+
_this$props$canSearch = _this$props.canSearch,
|
|
89
|
+
canSearch = _this$props$canSearch === void 0 ? true : _this$props$canSearch,
|
|
90
|
+
canSelect = _this$props.canSelect,
|
|
91
|
+
canRemove = _this$props.canRemove,
|
|
92
|
+
totalRecordCount = _this$props.totalRecordCount,
|
|
93
|
+
onSearchChange = _this$props.onSearchChange,
|
|
94
|
+
maxRowsVisible = _this$props.maxRowsVisible,
|
|
95
|
+
searchValue = _this$props.searchValue;
|
|
96
|
+
var _this$state = this.state,
|
|
97
|
+
selectedIds = _this$state.selectedIds,
|
|
98
|
+
locations = _this$state.locations,
|
|
99
|
+
unselectableIds = _this$state.unselectableIds;
|
|
100
|
+
return _react["default"].createElement(_RecordSelectionList["default"], {
|
|
101
|
+
searchValue: searchValue,
|
|
102
|
+
onSearchChange: onSearchChange,
|
|
103
|
+
canSearch: canSearch,
|
|
104
|
+
searchLabel: 'Search Label',
|
|
105
|
+
selectedIds: selectedIds,
|
|
106
|
+
unselectableIds: unselectableIds,
|
|
107
|
+
loadRecordListItems:
|
|
108
|
+
/*#__PURE__*/
|
|
109
|
+
function () {
|
|
110
|
+
var _ref2 = (0, _asyncToGenerator2["default"])(
|
|
111
|
+
/*#__PURE__*/
|
|
112
|
+
_regenerator["default"].mark(function _callee(_ref) {
|
|
113
|
+
var limit, offset, search, results, filteredLocations, recordListItems;
|
|
114
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
115
|
+
while (1) {
|
|
116
|
+
switch (_context.prev = _context.next) {
|
|
117
|
+
case 0:
|
|
118
|
+
limit = _ref.limit, offset = _ref.offset, search = _ref.search;
|
|
119
|
+
_context.next = 3;
|
|
120
|
+
return new Promise(function (resolve) {
|
|
121
|
+
return setTimeout(function () {
|
|
122
|
+
resolve();
|
|
123
|
+
}, Math.random() * 1000);
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
case 3:
|
|
127
|
+
results = [];
|
|
128
|
+
|
|
129
|
+
if (search) {
|
|
130
|
+
filteredLocations = locations.filter(function (location) {
|
|
131
|
+
return location.node.publicName.match(new RegExp(search, 'ig'));
|
|
132
|
+
});
|
|
133
|
+
results = filteredLocations.slice(offset, offset + limit);
|
|
134
|
+
} else {
|
|
135
|
+
results = locations.slice(offset, offset + limit);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
recordListItems = results.map(function (result) {
|
|
139
|
+
return {
|
|
140
|
+
id: result.node.id,
|
|
141
|
+
title: result.node.publicName,
|
|
142
|
+
subtitle: result.node.address,
|
|
143
|
+
isDisabled: unselectableIds.indexOf(result.node.id) >= 0,
|
|
144
|
+
note: unselectableIds.indexOf(result.node.id) >= 0 && 'Location already in group!'
|
|
145
|
+
};
|
|
146
|
+
});
|
|
147
|
+
return _context.abrupt("return", recordListItems);
|
|
148
|
+
|
|
149
|
+
case 7:
|
|
150
|
+
case "end":
|
|
151
|
+
return _context.stop();
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}, _callee);
|
|
155
|
+
}));
|
|
156
|
+
|
|
157
|
+
return function (_x) {
|
|
158
|
+
return _ref2.apply(this, arguments);
|
|
159
|
+
};
|
|
160
|
+
}(),
|
|
161
|
+
canSelect: canSelect,
|
|
162
|
+
canRemove: canRemove,
|
|
163
|
+
onSelect: function onSelect(id) {
|
|
164
|
+
// Typically you'd want "many" or "one", so you'd only need one side
|
|
165
|
+
// of this conditional.
|
|
166
|
+
if (canSelect === 'many') {
|
|
167
|
+
if (selectedIds.indexOf(id) >= 0) {
|
|
168
|
+
_this2.setState({
|
|
169
|
+
selectedIds: selectedIds.filter(function (selectedId) {
|
|
170
|
+
return selectedId !== id;
|
|
171
|
+
})
|
|
172
|
+
});
|
|
173
|
+
} else {
|
|
174
|
+
_this2.setState({
|
|
175
|
+
selectedIds: [].concat((0, _toConsumableArray2["default"])(selectedIds), [id])
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
} else if (canSelect === 'one') {
|
|
179
|
+
_this2.setState({
|
|
180
|
+
selectedIds: [id]
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
onRemove: function onRemove(id) {
|
|
185
|
+
// The component maintains state of the records it has loaded, but
|
|
186
|
+
// it's up to you to remove them from your list in your local state.
|
|
187
|
+
// Also, if for some reason you want to have selection alongside deletion,
|
|
188
|
+
// you should be sure to clear out the selection at the same time.
|
|
189
|
+
_this2.setState({
|
|
190
|
+
selectedIds: selectedIds.filter(function (selectedId) {
|
|
191
|
+
return selectedId !== id;
|
|
192
|
+
}),
|
|
193
|
+
locations: locations.filter(function (location) {
|
|
194
|
+
return location.id !== id;
|
|
195
|
+
})
|
|
196
|
+
});
|
|
197
|
+
},
|
|
198
|
+
totalRecordCount: totalRecordCount,
|
|
199
|
+
maxRowsVisible: maxRowsVisible && maxRowsVisible !== 'auto' ? parseInt(maxRowsVisible, 10) : maxRowsVisible,
|
|
200
|
+
noSearchResultsEmptyState: {
|
|
201
|
+
headline: "Nothin' here...",
|
|
202
|
+
icon: 'no_matches',
|
|
203
|
+
primaryAction: {
|
|
204
|
+
text: "Show all, y'all!"
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
}]);
|
|
210
|
+
return RecordListItemsExample;
|
|
211
|
+
}(_react.Component);
|
|
212
|
+
|
|
213
|
+
stories.add('In a Card', function () {
|
|
214
|
+
return _react["default"].createElement("div", {
|
|
215
|
+
style: {
|
|
216
|
+
width: '320px',
|
|
217
|
+
padding: '8px'
|
|
218
|
+
}
|
|
219
|
+
}, _react["default"].createElement(_Card["default"], null, _react["default"].createElement(_Card.CardHeader, {
|
|
220
|
+
title: "Card Title"
|
|
221
|
+
}), _react["default"].createElement(_Card.CardBody, null, _react["default"].createElement(RecordListItemsExample, {
|
|
222
|
+
canSelect: (0, _react3.select)('Can Select', [null, 'many', 'one'], null),
|
|
223
|
+
canRemove: (0, _react3["boolean"])('Can Remove', false),
|
|
224
|
+
locations: (0, _lodash.map)((0, _tableData.generateLocations)({
|
|
225
|
+
amount: 50
|
|
226
|
+
}), function (o) {
|
|
227
|
+
return {
|
|
228
|
+
node: (0, _objectSpread2["default"])({}, o)
|
|
229
|
+
};
|
|
230
|
+
}),
|
|
231
|
+
totalRecordCount: 50,
|
|
232
|
+
maxRowsVisible: (0, _react3.select)('Max Rows Visible', [null, 3, 'auto'], 3)
|
|
233
|
+
}))));
|
|
234
|
+
});
|
|
235
|
+
|
|
236
|
+
var ExternalStateExample =
|
|
237
|
+
/*#__PURE__*/
|
|
238
|
+
function (_React$Component) {
|
|
239
|
+
(0, _inherits2["default"])(ExternalStateExample, _React$Component);
|
|
240
|
+
|
|
241
|
+
function ExternalStateExample() {
|
|
242
|
+
var _getPrototypeOf2;
|
|
243
|
+
|
|
244
|
+
var _this3;
|
|
245
|
+
|
|
246
|
+
(0, _classCallCheck2["default"])(this, ExternalStateExample);
|
|
247
|
+
|
|
248
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
249
|
+
args[_key] = arguments[_key];
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
_this3 = (0, _possibleConstructorReturn2["default"])(this, (_getPrototypeOf2 = (0, _getPrototypeOf3["default"])(ExternalStateExample)).call.apply(_getPrototypeOf2, [this].concat(args)));
|
|
253
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this3), "state", {
|
|
254
|
+
searchValue: ''
|
|
255
|
+
});
|
|
256
|
+
return _this3;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
(0, _createClass2["default"])(ExternalStateExample, [{
|
|
260
|
+
key: "render",
|
|
261
|
+
value: function render() {
|
|
262
|
+
var _this4 = this;
|
|
263
|
+
|
|
264
|
+
var searchValue = this.state.searchValue;
|
|
265
|
+
return _react["default"].createElement("div", {
|
|
266
|
+
style: {
|
|
267
|
+
width: '320px',
|
|
268
|
+
padding: '8px'
|
|
269
|
+
}
|
|
270
|
+
}, _react["default"].createElement("p", null, "This input will control the search of the following RecordSelectionList"), _react["default"].createElement("input", {
|
|
271
|
+
type: "text",
|
|
272
|
+
value: searchValue,
|
|
273
|
+
onChange: function onChange(e) {
|
|
274
|
+
_this4.setState({
|
|
275
|
+
searchValue: e.target.value
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
}), _react["default"].createElement("br", null), _react["default"].createElement("br", null), _react["default"].createElement(_Card["default"], null, _react["default"].createElement(_Card.CardHeader, {
|
|
279
|
+
title: "Card Title"
|
|
280
|
+
}), _react["default"].createElement(_Card.CardBody, null, _react["default"].createElement(RecordListItemsExample, {
|
|
281
|
+
canSearch: false,
|
|
282
|
+
searchValue: searchValue,
|
|
283
|
+
onSearchChange: function onSearchChange(newSearchValue) {
|
|
284
|
+
_this4.setState({
|
|
285
|
+
searchValue: newSearchValue
|
|
286
|
+
});
|
|
287
|
+
},
|
|
288
|
+
canSelect: (0, _react3.select)('Can Select', [null, 'many', 'one'], null),
|
|
289
|
+
canRemove: (0, _react3["boolean"])('Can Remove', false),
|
|
290
|
+
locations: (0, _lodash.map)((0, _tableData.generateLocations)({
|
|
291
|
+
amount: 50
|
|
292
|
+
}), function (o) {
|
|
293
|
+
return {
|
|
294
|
+
node: (0, _objectSpread2["default"])({}, o)
|
|
295
|
+
};
|
|
296
|
+
}),
|
|
297
|
+
totalRecordCount: 50,
|
|
298
|
+
maxRowsVisible: (0, _react3.select)('Max Rows Visible', [null, 3, 'auto'], 3)
|
|
299
|
+
}))));
|
|
300
|
+
}
|
|
301
|
+
}]);
|
|
302
|
+
return ExternalStateExample;
|
|
303
|
+
}(_react["default"].Component);
|
|
304
|
+
|
|
305
|
+
stories.add('Search Controlled by External State', function () {
|
|
306
|
+
return _react["default"].createElement(ExternalStateExample, null);
|
|
307
|
+
});
|
|
308
|
+
stories.add('In a Modal', function () {
|
|
309
|
+
return _react["default"].createElement(_Modal["default"], {
|
|
310
|
+
isOpen: true,
|
|
311
|
+
onAfterOpen: function onAfterOpen() {
|
|
312
|
+
return null;
|
|
313
|
+
},
|
|
314
|
+
onRequestClose: function onRequestClose() {
|
|
315
|
+
return null;
|
|
316
|
+
}
|
|
317
|
+
}, _react["default"].createElement(_Modal["default"].Header, {
|
|
318
|
+
title: "Modal title",
|
|
319
|
+
onRequestClose: function onRequestClose() {
|
|
320
|
+
return null;
|
|
321
|
+
}
|
|
322
|
+
}), _react["default"].createElement(_Modal["default"].Body, null, _react["default"].createElement(RecordListItemsExample, {
|
|
323
|
+
canSelect: (0, _react3.select)('Can Select', [null, 'many', 'one'], 'many'),
|
|
324
|
+
canRemove: (0, _react3["boolean"])('Can Remove', true),
|
|
325
|
+
locations: (0, _lodash.map)((0, _tableData.generateLocations)({
|
|
326
|
+
amount: 100
|
|
327
|
+
}), function (o) {
|
|
328
|
+
return {
|
|
329
|
+
node: (0, _objectSpread2["default"])({}, o)
|
|
330
|
+
};
|
|
331
|
+
}),
|
|
332
|
+
totalRecordCount: 100,
|
|
333
|
+
maxRowsVisible: (0, _react3.select)('Max Rows Visible', [null, 3, 'auto'], 3)
|
|
334
|
+
})));
|
|
335
|
+
});
|
|
336
|
+
stories.add('Empty State', function () {
|
|
337
|
+
return _react["default"].createElement("div", {
|
|
338
|
+
style: {
|
|
339
|
+
width: '320px',
|
|
340
|
+
padding: '8px'
|
|
341
|
+
}
|
|
342
|
+
}, _react["default"].createElement(_Card["default"], null, _react["default"].createElement(_Card.CardHeader, {
|
|
343
|
+
title: "Card Title"
|
|
344
|
+
}), _react["default"].createElement(_Card.CardBody, {
|
|
345
|
+
isSectioned: false,
|
|
346
|
+
hasBottomPadding: false
|
|
347
|
+
}, _react["default"].createElement(_RecordSelectionList["default"], {
|
|
348
|
+
canSearch: false,
|
|
349
|
+
selectedIds: [],
|
|
350
|
+
unselectableIds: [],
|
|
351
|
+
loadRecordListItems:
|
|
352
|
+
/*#__PURE__*/
|
|
353
|
+
(0, _asyncToGenerator2["default"])(
|
|
354
|
+
/*#__PURE__*/
|
|
355
|
+
_regenerator["default"].mark(function _callee2() {
|
|
356
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
357
|
+
while (1) {
|
|
358
|
+
switch (_context2.prev = _context2.next) {
|
|
359
|
+
case 0:
|
|
360
|
+
return _context2.abrupt("return", []);
|
|
361
|
+
|
|
362
|
+
case 1:
|
|
363
|
+
case "end":
|
|
364
|
+
return _context2.stop();
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}, _callee2);
|
|
368
|
+
})),
|
|
369
|
+
noDataEmptyState: {
|
|
370
|
+
headline: (0, _react3.text)('emptyState:headline', 'Nothing to see here'),
|
|
371
|
+
subheadline: (0, _react3.text)('emptyState:subheadline', 'There is none of that here'),
|
|
372
|
+
icon: (0, _react3.text)('emptyState:icon', 'team'),
|
|
373
|
+
isLineIcon: true,
|
|
374
|
+
primaryAction: {
|
|
375
|
+
text: (0, _react3.text)('emptyState:primaryAction text', 'Do something about it')
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
}))));
|
|
379
|
+
});
|
|
380
|
+
|
|
381
|
+
var RecordSelectionListSearchExample =
|
|
382
|
+
/*#__PURE__*/
|
|
383
|
+
function (_Component2) {
|
|
384
|
+
(0, _inherits2["default"])(RecordSelectionListSearchExample, _Component2);
|
|
385
|
+
|
|
386
|
+
function RecordSelectionListSearchExample() {
|
|
387
|
+
(0, _classCallCheck2["default"])(this, RecordSelectionListSearchExample);
|
|
388
|
+
return (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf3["default"])(RecordSelectionListSearchExample).apply(this, arguments));
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
(0, _createClass2["default"])(RecordSelectionListSearchExample, [{
|
|
392
|
+
key: "render",
|
|
393
|
+
value: function render() {
|
|
394
|
+
var locations = this.props.locations;
|
|
395
|
+
return _react["default"].createElement(_RecordSelectionList["default"], {
|
|
396
|
+
searchLabel: 'Search Label',
|
|
397
|
+
loadRecordListItems:
|
|
398
|
+
/*#__PURE__*/
|
|
399
|
+
function () {
|
|
400
|
+
var _ref5 = (0, _asyncToGenerator2["default"])(
|
|
401
|
+
/*#__PURE__*/
|
|
402
|
+
_regenerator["default"].mark(function _callee3(_ref4) {
|
|
403
|
+
var limit, offset, search, results, filteredLocations, recordListItems;
|
|
404
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
405
|
+
while (1) {
|
|
406
|
+
switch (_context3.prev = _context3.next) {
|
|
407
|
+
case 0:
|
|
408
|
+
limit = _ref4.limit, offset = _ref4.offset, search = _ref4.search;
|
|
409
|
+
|
|
410
|
+
if (search) {
|
|
411
|
+
_context3.next = 3;
|
|
412
|
+
break;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
return _context3.abrupt("return", []);
|
|
416
|
+
|
|
417
|
+
case 3:
|
|
418
|
+
_context3.next = 5;
|
|
419
|
+
return new Promise(function (resolve) {
|
|
420
|
+
return setTimeout(function () {
|
|
421
|
+
resolve();
|
|
422
|
+
}, Math.random() * 1000);
|
|
423
|
+
});
|
|
424
|
+
|
|
425
|
+
case 5:
|
|
426
|
+
results = [];
|
|
427
|
+
|
|
428
|
+
if (search) {
|
|
429
|
+
filteredLocations = locations.filter(function (location) {
|
|
430
|
+
return location.node.publicName.match(new RegExp(search, 'ig'));
|
|
431
|
+
});
|
|
432
|
+
results = filteredLocations.slice(offset, offset + limit);
|
|
433
|
+
} else {
|
|
434
|
+
results = locations.slice(offset, offset + limit);
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
recordListItems = results.map(function (result) {
|
|
438
|
+
return {
|
|
439
|
+
id: result.node.id,
|
|
440
|
+
title: result.node.publicName,
|
|
441
|
+
subtitle: result.node.address
|
|
442
|
+
};
|
|
443
|
+
});
|
|
444
|
+
return _context3.abrupt("return", recordListItems);
|
|
445
|
+
|
|
446
|
+
case 9:
|
|
447
|
+
case "end":
|
|
448
|
+
return _context3.stop();
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
}, _callee3);
|
|
452
|
+
}));
|
|
453
|
+
|
|
454
|
+
return function (_x2) {
|
|
455
|
+
return _ref5.apply(this, arguments);
|
|
456
|
+
};
|
|
457
|
+
}(),
|
|
458
|
+
canSearch: true,
|
|
459
|
+
maxRowsVisible: 5,
|
|
460
|
+
noSearchResultsEmptyState: {
|
|
461
|
+
headline: "Nothin' here...",
|
|
462
|
+
icon: 'no_matches',
|
|
463
|
+
primaryAction: {
|
|
464
|
+
text: "Show all, y'all!"
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
});
|
|
468
|
+
}
|
|
469
|
+
}]);
|
|
470
|
+
return RecordSelectionListSearchExample;
|
|
471
|
+
}(_react.Component);
|
|
472
|
+
|
|
473
|
+
stories.add('Only Showing Records When Searching', function () {
|
|
474
|
+
return _react["default"].createElement("div", {
|
|
475
|
+
style: {
|
|
476
|
+
width: '320px',
|
|
477
|
+
padding: '8px'
|
|
478
|
+
}
|
|
479
|
+
}, _react["default"].createElement(_Card["default"], null, _react["default"].createElement(_Card.CardHeader, {
|
|
480
|
+
title: "Card Title"
|
|
481
|
+
}), _react["default"].createElement(_Card.CardBody, null, _react["default"].createElement(RecordSelectionListSearchExample, {
|
|
482
|
+
locations: (0, _lodash.map)((0, _tableData.generateLocations)({
|
|
483
|
+
amount: 50
|
|
484
|
+
}), function (o) {
|
|
485
|
+
return {
|
|
486
|
+
node: (0, _objectSpread2["default"])({}, o)
|
|
487
|
+
};
|
|
488
|
+
})
|
|
489
|
+
}))));
|
|
490
|
+
});
|
|
491
|
+
//# sourceMappingURL=RecordSelectList-story.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/RecordSelectionList/RecordSelectList-story.js"],"names":["stories","module","addDecorator","withKnobs","RecordListItemsExample","props","selectedIds","locations","map","loc","node","id","canSelect","Math","floor","length","unselectedIds","filter","locationId","indexOf","unselectableIds","state","canSearch","canRemove","totalRecordCount","onSearchChange","maxRowsVisible","searchValue","limit","offset","search","Promise","resolve","setTimeout","random","results","filteredLocations","location","publicName","match","RegExp","slice","recordListItems","result","title","subtitle","address","isDisabled","note","setState","selectedId","parseInt","headline","icon","primaryAction","text","Component","add","width","padding","amount","o","ExternalStateExample","e","target","value","newSearchValue","React","subheadline","isLineIcon","RecordSelectionListSearchExample"],"mappings":"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","sourcesContent":["// @flow\nimport React, { Component } from 'react'\nimport { map, sampleSize } from 'lodash'\nimport { storiesOf } from '@storybook/react'\nimport { withKnobs, boolean, select, text } from '@storybook/addon-knobs/react'\n\nimport { generateLocations } from '../../../.storybook/data/tableData'\nimport RecordSelectionList from '../RecordSelectionList/RecordSelectionList'\nimport Modal from '../Modal/Modal'\nimport Card, { CardHeader, CardBody } from '../Card'\n\nconst stories = storiesOf('RecordSelectionList', module)\n\nstories.addDecorator(withKnobs)\n\ntype RSLExampleProps = {\n\tcanSelect?: 'many' | 'one',\n\tcanRemove: boolean,\n\tlocations: Array<Object>,\n\ttotalRecordCount: number,\n\tmaxRowsVisible?: number | 'auto'\n}\n\ntype RSLExampleState = {\n\tisModalOpen?: boolean,\n\tselectedIds: Array<string>,\n\tunselectableIds: Array<string>,\n\tlocations: Array<Object>,\n\temptyState: any\n}\n\nclass RecordListItemsExample extends Component<\n\tRSLExampleProps,\n\tRSLExampleState\n> {\n\tconstructor(props) {\n\t\tsuper(props)\n\n\t\tlet selectedIds = props.locations.map(loc => loc.node.id)\n\n\t\tif (props.canSelect === 'one') {\n\t\t\tselectedIds = sampleSize(selectedIds, 1)\n\t\t} else {\n\t\t\tselectedIds = sampleSize(selectedIds, Math.floor(selectedIds.length / 2))\n\t\t}\n\n\t\tconst unselectedIds = props.locations\n\t\t\t.map(loc => loc.node.id)\n\t\t\t.filter(locationId => selectedIds.indexOf(locationId) === -1)\n\n\t\tconst unselectableIds = sampleSize(unselectedIds, unselectedIds.length / 2)\n\n\t\tthis.state = { selectedIds, locations: props.locations, unselectableIds }\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tcanSearch = true,\n\t\t\tcanSelect,\n\t\t\tcanRemove,\n\t\t\ttotalRecordCount,\n\t\t\tonSearchChange,\n\t\t\tmaxRowsVisible,\n\t\t\tsearchValue\n\t\t} = this.props\n\n\t\tconst { selectedIds, locations, unselectableIds } = this.state\n\n\t\treturn (\n\t\t\t<RecordSelectionList\n\t\t\t\tsearchValue={searchValue}\n\t\t\t\tonSearchChange={onSearchChange}\n\t\t\t\tcanSearch={canSearch}\n\t\t\t\tsearchLabel={'Search Label'}\n\t\t\t\tselectedIds={selectedIds}\n\t\t\t\tunselectableIds={unselectableIds}\n\t\t\t\tloadRecordListItems={async ({ limit, offset, search }) => {\n\t\t\t\t\t// Artificial API wait time\n\t\t\t\t\tawait new Promise(resolve =>\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tresolve()\n\t\t\t\t\t\t}, Math.random() * 1000)\n\t\t\t\t\t)\n\n\t\t\t\t\tlet results = []\n\n\t\t\t\t\tif (search) {\n\t\t\t\t\t\tconst filteredLocations = locations.filter(location => {\n\t\t\t\t\t\t\treturn location.node.publicName.match(new RegExp(search, 'ig'))\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresults = filteredLocations.slice(offset, offset + limit)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresults = locations.slice(offset, offset + limit)\n\t\t\t\t\t}\n\n\t\t\t\t\tconst recordListItems = results.map(result => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: result.node.id,\n\t\t\t\t\t\t\ttitle: result.node.publicName,\n\t\t\t\t\t\t\tsubtitle: result.node.address,\n\t\t\t\t\t\t\tisDisabled: unselectableIds.indexOf(result.node.id) >= 0,\n\t\t\t\t\t\t\tnote:\n\t\t\t\t\t\t\t\tunselectableIds.indexOf(result.node.id) >= 0 &&\n\t\t\t\t\t\t\t\t'Location already in group!'\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\t\treturn recordListItems\n\t\t\t\t}}\n\t\t\t\tcanSelect={canSelect}\n\t\t\t\tcanRemove={canRemove}\n\t\t\t\tonSelect={id => {\n\t\t\t\t\t// Typically you'd want \"many\" or \"one\", so you'd only need one side\n\t\t\t\t\t// of this conditional.\n\t\t\t\t\tif (canSelect === 'many') {\n\t\t\t\t\t\tif (selectedIds.indexOf(id) >= 0) {\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tselectedIds: selectedIds.filter(selectedId => selectedId !== id)\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.setState({ selectedIds: [...selectedIds, id] })\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (canSelect === 'one') {\n\t\t\t\t\t\tthis.setState({ selectedIds: [id] })\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t\tonRemove={id => {\n\t\t\t\t\t// The component maintains state of the records it has loaded, but\n\t\t\t\t\t// it's up to you to remove them from your list in your local state.\n\t\t\t\t\t// Also, if for some reason you want to have selection alongside deletion,\n\t\t\t\t\t// you should be sure to clear out the selection at the same time.\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tselectedIds: selectedIds.filter(selectedId => selectedId !== id),\n\t\t\t\t\t\tlocations: locations.filter(location => location.id !== id)\n\t\t\t\t\t})\n\t\t\t\t}}\n\t\t\t\ttotalRecordCount={totalRecordCount}\n\t\t\t\tmaxRowsVisible={\n\t\t\t\t\tmaxRowsVisible && maxRowsVisible !== 'auto'\n\t\t\t\t\t\t? parseInt(maxRowsVisible, 10)\n\t\t\t\t\t\t: maxRowsVisible\n\t\t\t\t}\n\t\t\t\tnoSearchResultsEmptyState={{\n\t\t\t\t\theadline: \"Nothin' here...\",\n\t\t\t\t\ticon: 'no_matches',\n\t\t\t\t\tprimaryAction: {\n\t\t\t\t\t\ttext: \"Show all, y'all!\"\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t/>\n\t\t)\n\t}\n}\n\nstories.add('In a Card', () => (\n\t<div style={{ width: '320px', padding: '8px' }}>\n\t\t<Card>\n\t\t\t<CardHeader title=\"Card Title\" />\n\t\t\t<CardBody>\n\t\t\t\t<RecordListItemsExample\n\t\t\t\t\tcanSelect={select('Can Select', [null, 'many', 'one'], null)}\n\t\t\t\t\tcanRemove={boolean('Can Remove', false)}\n\t\t\t\t\tlocations={map(generateLocations({ amount: 50 }), o => ({\n\t\t\t\t\t\tnode: { ...o }\n\t\t\t\t\t}))}\n\t\t\t\t\ttotalRecordCount={50}\n\t\t\t\t\tmaxRowsVisible={select('Max Rows Visible', [null, 3, 'auto'], 3)}\n\t\t\t\t/>\n\t\t\t</CardBody>\n\t\t</Card>\n\t</div>\n))\n\nclass ExternalStateExample extends React.Component {\n\tstate = { searchValue: '' }\n\n\trender() {\n\t\tconst { searchValue } = this.state\n\n\t\treturn (\n\t\t\t<div style={{ width: '320px', padding: '8px' }}>\n\t\t\t\t<p>\n\t\t\t\t\tThis input will control the search of the following\n\t\t\t\t\tRecordSelectionList\n\t\t\t\t</p>\n\t\t\t\t<input\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tvalue={searchValue}\n\t\t\t\t\tonChange={e => {\n\t\t\t\t\t\tthis.setState({ searchValue: e.target.value })\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t<br />\n\t\t\t\t<br />\n\n\t\t\t\t<Card>\n\t\t\t\t\t<CardHeader title=\"Card Title\" />\n\t\t\t\t\t<CardBody>\n\t\t\t\t\t\t<RecordListItemsExample\n\t\t\t\t\t\t\tcanSearch={false}\n\t\t\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\t\t\tonSearchChange={newSearchValue => {\n\t\t\t\t\t\t\t\tthis.setState({ searchValue: newSearchValue })\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tcanSelect={select('Can Select', [null, 'many', 'one'], null)}\n\t\t\t\t\t\t\tcanRemove={boolean('Can Remove', false)}\n\t\t\t\t\t\t\tlocations={map(generateLocations({ amount: 50 }), o => ({\n\t\t\t\t\t\t\t\tnode: { ...o }\n\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\ttotalRecordCount={50}\n\t\t\t\t\t\t\tmaxRowsVisible={select('Max Rows Visible', [null, 3, 'auto'], 3)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</CardBody>\n\t\t\t\t</Card>\n\t\t\t</div>\n\t\t)\n\t}\n}\n\nstories.add('Search Controlled by External State', () => {\n\treturn <ExternalStateExample />\n})\n\nstories.add('In a Modal', () => (\n\t<Modal isOpen onAfterOpen={() => null} onRequestClose={() => null}>\n\t\t<Modal.Header title=\"Modal title\" onRequestClose={() => null} />\n\t\t<Modal.Body>\n\t\t\t<RecordListItemsExample\n\t\t\t\tcanSelect={select('Can Select', [null, 'many', 'one'], 'many')}\n\t\t\t\tcanRemove={boolean('Can Remove', true)}\n\t\t\t\tlocations={map(generateLocations({ amount: 100 }), o => ({\n\t\t\t\t\tnode: { ...o }\n\t\t\t\t}))}\n\t\t\t\ttotalRecordCount={100}\n\t\t\t\tmaxRowsVisible={select('Max Rows Visible', [null, 3, 'auto'], 3)}\n\t\t\t/>\n\t\t</Modal.Body>\n\t</Modal>\n))\n\nstories.add('Empty State', () => (\n\t<div style={{ width: '320px', padding: '8px' }}>\n\t\t<Card>\n\t\t\t<CardHeader title=\"Card Title\" />\n\t\t\t<CardBody isSectioned={false} hasBottomPadding={false}>\n\t\t\t\t<RecordSelectionList\n\t\t\t\t\tcanSearch={false}\n\t\t\t\t\tselectedIds={[]}\n\t\t\t\t\tunselectableIds={[]}\n\t\t\t\t\tloadRecordListItems={async () => []}\n\t\t\t\t\tnoDataEmptyState={{\n\t\t\t\t\t\theadline: text('emptyState:headline', 'Nothing to see here'),\n\t\t\t\t\t\tsubheadline: text(\n\t\t\t\t\t\t\t'emptyState:subheadline',\n\t\t\t\t\t\t\t'There is none of that here'\n\t\t\t\t\t\t),\n\t\t\t\t\t\ticon: text('emptyState:icon', 'team'),\n\t\t\t\t\t\tisLineIcon: true,\n\t\t\t\t\t\tprimaryAction: {\n\t\t\t\t\t\t\ttext: text(\n\t\t\t\t\t\t\t\t'emptyState:primaryAction text',\n\t\t\t\t\t\t\t\t'Do something about it'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</CardBody>\n\t\t</Card>\n\t</div>\n))\n\ninterface RecordSelectionListSearchExampleProps {\n\tlocations: Array<Object>;\n}\ninterface RecordSelectionListSearchExampleState {}\n\nclass RecordSelectionListSearchExample extends Component<\n\tRecordSelectionListSearchExampleProps,\n\tRecordSelectionListSearchExampleState\n> {\n\trender() {\n\t\tconst { locations } = this.props\n\n\t\treturn (\n\t\t\t<RecordSelectionList\n\t\t\t\tsearchLabel={'Search Label'}\n\t\t\t\tloadRecordListItems={async ({ limit, offset, search }) => {\n\t\t\t\t\tif (!search) {\n\t\t\t\t\t\treturn []\n\t\t\t\t\t}\n\n\t\t\t\t\t// Artificial API wait time\n\t\t\t\t\tawait new Promise(resolve =>\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tresolve()\n\t\t\t\t\t\t}, Math.random() * 1000)\n\t\t\t\t\t)\n\n\t\t\t\t\tlet results = []\n\n\t\t\t\t\tif (search) {\n\t\t\t\t\t\tconst filteredLocations = locations.filter(location => {\n\t\t\t\t\t\t\treturn location.node.publicName.match(new RegExp(search, 'ig'))\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tresults = filteredLocations.slice(offset, offset + limit)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresults = locations.slice(offset, offset + limit)\n\t\t\t\t\t}\n\n\t\t\t\t\tconst recordListItems = results.map(result => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: result.node.id,\n\t\t\t\t\t\t\ttitle: result.node.publicName,\n\t\t\t\t\t\t\tsubtitle: result.node.address\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\t\treturn recordListItems\n\t\t\t\t}}\n\t\t\t\tcanSearch\n\t\t\t\tmaxRowsVisible={5}\n\t\t\t\tnoSearchResultsEmptyState={{\n\t\t\t\t\theadline: \"Nothin' here...\",\n\t\t\t\t\ticon: 'no_matches',\n\t\t\t\t\tprimaryAction: {\n\t\t\t\t\t\ttext: \"Show all, y'all!\"\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t/>\n\t\t)\n\t}\n}\n\nstories.add('Only Showing Records When Searching', () => (\n\t<div style={{ width: '320px', padding: '8px' }}>\n\t\t<Card>\n\t\t\t<CardHeader title=\"Card Title\" />\n\t\t\t<CardBody>\n\t\t\t\t<RecordSelectionListSearchExample\n\t\t\t\t\tlocations={map(generateLocations({ amount: 50 }), o => ({\n\t\t\t\t\t\tnode: { ...o }\n\t\t\t\t\t}))}\n\t\t\t\t/>\n\t\t\t</CardBody>\n\t\t</Card>\n\t</div>\n))\n"],"file":"RecordSelectList-story.js"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import { IListItemProps } from '../List/components/ListItem/ListItem';
|
|
3
|
+
import { IEmptyStateProps } from '../EmptyState/EmptyState';
|
|
4
|
+
export interface IRecordSelectionListItemProps extends IListItemProps {
|
|
5
|
+
id: string;
|
|
6
|
+
}
|
|
7
|
+
export interface IRecordSelectionListProps {
|
|
8
|
+
/** DEPRECATED Required method to render a record into a node */
|
|
9
|
+
renderRecord?: (record: any) => React.ReactElement;
|
|
10
|
+
/** DEPRECATED Get a unique ID for a record; given that data may be shaped in an unpredictable manner,
|
|
11
|
+
* you must implement this at each usage if using loadRecords method.
|
|
12
|
+
*/
|
|
13
|
+
getRecordId?: (record: any) => string;
|
|
14
|
+
/** DEPRECATED Load custom records data for the offset/limit provided */
|
|
15
|
+
loadRecords?: (options: {
|
|
16
|
+
offset: number;
|
|
17
|
+
limit: number;
|
|
18
|
+
search?: string;
|
|
19
|
+
}) => Promise<any[]>;
|
|
20
|
+
/** Load records as list items for the offset/limit provided */
|
|
21
|
+
loadRecordListItems?: ({ offset, limit, search }: {
|
|
22
|
+
offset: number;
|
|
23
|
+
limit: number;
|
|
24
|
+
search?: string;
|
|
25
|
+
}) => Promise<IRecordSelectionListItemProps[]>;
|
|
26
|
+
/** How many records should be retrieved from the server at one time? */
|
|
27
|
+
recordsPerRequest: number;
|
|
28
|
+
/** Total number of records that could be in this list.
|
|
29
|
+
* Optional, but optimizes infinite load and adds supplementary UI */
|
|
30
|
+
totalRecordCount?: number;
|
|
31
|
+
/** Array of IDs in this collection of records that should be marked as selected */
|
|
32
|
+
selectedIds?: string[];
|
|
33
|
+
/** Can the search the records in the list? */
|
|
34
|
+
canSearch?: boolean;
|
|
35
|
+
/** If provided, controls the value of the search string */
|
|
36
|
+
searchValue?: string;
|
|
37
|
+
/** Respond to changes to the search value */
|
|
38
|
+
onSearchChange?: (value: string) => any;
|
|
39
|
+
/** delays invoking search until after a certain ms have elapsed since the last time the
|
|
40
|
+
* search was invoked */
|
|
41
|
+
searchDelayMs?: number;
|
|
42
|
+
/** Array of IDs that should not be selectable */
|
|
43
|
+
unselectableIds?: string[];
|
|
44
|
+
/** Can the user select many or one records in this list? */
|
|
45
|
+
canSelect?: 'many' | 'one';
|
|
46
|
+
/** Can the user remove records from this list? */
|
|
47
|
+
canRemove?: boolean;
|
|
48
|
+
/** Optionally provide a label for the search input */
|
|
49
|
+
searchLabel?: string;
|
|
50
|
+
/** Optionally provide a placeholder to the search input */
|
|
51
|
+
searchPlaceholder?: string;
|
|
52
|
+
/** Set to false to hide "# selected" text - defaults to true */
|
|
53
|
+
showSelectedCount?: boolean;
|
|
54
|
+
/** Callback for selection of a record */
|
|
55
|
+
onSelect?: (RecordId: any, Record: any) => void;
|
|
56
|
+
/** Callback for when user requests to remove a record from the list. */
|
|
57
|
+
onRemove?: (RecordId: any, Record: any) => void;
|
|
58
|
+
/** When set, list will become infinitely scrollable
|
|
59
|
+
/* A number value will set the max height of the list to the number of rows specified
|
|
60
|
+
/* A value of 'auto' will allow the list to fill the height of the parent container */
|
|
61
|
+
maxRowsVisible?: number | 'auto';
|
|
62
|
+
/** Should the no-data empty state be hidden? */
|
|
63
|
+
hideDataEmptyState?: boolean;
|
|
64
|
+
/** Should the no-result empty state be hidden? */
|
|
65
|
+
hideSearchResultsEmptyState?: boolean;
|
|
66
|
+
/** Props for the no-result empty state */
|
|
67
|
+
noSearchResultsEmptyState?: IEmptyStateProps;
|
|
68
|
+
/** Props for the no-data empty state */
|
|
69
|
+
noDataEmptyState?: IEmptyStateProps;
|
|
70
|
+
}
|
|
71
|
+
interface IRecordSelectionListState {
|
|
72
|
+
/** Records that have been loaded into state via `loadRecords` */
|
|
73
|
+
loadedRecords: Record<string, any>[];
|
|
74
|
+
/** Is the list loading data? */
|
|
75
|
+
isLoading: boolean;
|
|
76
|
+
/** Search value */
|
|
77
|
+
search?: string;
|
|
78
|
+
/** ID to manage the last request to loadRecords */
|
|
79
|
+
loadingId?: string;
|
|
80
|
+
listHeight: number;
|
|
81
|
+
}
|
|
82
|
+
export default class RecordSelectionList extends Component<IRecordSelectionListProps, IRecordSelectionListState> {
|
|
83
|
+
static defaultProps: {
|
|
84
|
+
showSelectedCount: boolean;
|
|
85
|
+
hideSearchResultsEmptyState: boolean;
|
|
86
|
+
hideDataEmptyState: boolean;
|
|
87
|
+
recordsPerRequest: number;
|
|
88
|
+
};
|
|
89
|
+
private listContainer;
|
|
90
|
+
private virtualizedList;
|
|
91
|
+
private infiniteLoader;
|
|
92
|
+
private cache;
|
|
93
|
+
private loadSearchResults;
|
|
94
|
+
constructor(props: IRecordSelectionListProps);
|
|
95
|
+
componentDidMount(): Promise<void>;
|
|
96
|
+
componentDidUpdate(prevProps: IRecordSelectionListProps): void;
|
|
97
|
+
reset({ persistSearch }?: {
|
|
98
|
+
/** Persist the value of the search when resetting. Defaults `false`. */
|
|
99
|
+
persistSearch?: boolean;
|
|
100
|
+
}): Promise<void>;
|
|
101
|
+
getVisibleRecordHeight: () => number;
|
|
102
|
+
render(): React.ReactElement;
|
|
103
|
+
private updateSearchValue;
|
|
104
|
+
private resetVirtualizedList;
|
|
105
|
+
private loadRecordsRequest;
|
|
106
|
+
private renderRow;
|
|
107
|
+
private renderInnerRow;
|
|
108
|
+
private handleInfiniteLoad;
|
|
109
|
+
private handleRemoveSelection;
|
|
110
|
+
}
|
|
111
|
+
export {};
|
|
112
|
+
//# sourceMappingURL=RecordSelectionList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordSelectionList.d.ts","sourceRoot":"","sources":["../../../src/components/RecordSelectionList/RecordSelectionList.tsx"],"names":[],"mappings":"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"}
|