{"version":3,"file":"bundle/searchbox.a19d1f5d.js","mappings":"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","sources":["webpack://apps/./src/Apps/feature-app-search/molecules/SearchItemList.tsx","webpack://apps/./src/Apps/feature-app-search/atoms/useHighlightedTerms.ts","webpack://apps/./src/Apps/feature-app-search/utilities/focusHelpers.ts","webpack://apps/./src/Apps/feature-app-search/molecules/FocusHandler.tsx","webpack://apps/./src/Apps/feature-app-search/atoms/useOutsideClickHandler.ts","webpack://apps/./src/Apps/feature-app-search/molecules/SearchBar.tsx","webpack://apps/./src/Apps/feature-app-search/molecules/ShowMoreButton.tsx","webpack://apps/./src/Apps/feature-app-search/molecules/SearchResults.tsx","webpack://apps/./src/Apps/feature-app-search/atoms/useFilteredGroups.ts","webpack://apps/./src/Apps/feature-app-search/organisms/SearchComponent.tsx","webpack://apps/./src/Apps/Header/SearchBox.tsx","webpack://apps/./src/Apps/organisms/useAppActionAddToCollection.ts","webpack://apps/./src/Apps/feature-app-search/atoms/useDebounce.ts","webpack://apps/./src/shared/hooks/useScreenWidth.ts"],"sourcesContent":["import { IconButton, IContextualMenuItem, mergeStyleSets } from '@fluentui/react';\nimport { isDefaultAppLogo, LetterIcon } from '@iamexperiences/feature-letter-icon';\nimport React, { ReactElement, useCallback, useRef, useState } from 'react';\n\nimport { useHighlightedTerms } from '../atoms/useHighlightedTerms';\n\nexport interface SearchItemListProps {\n readonly displayName: string;\n readonly logoUrl: string;\n readonly redirectUrl?: string;\n readonly searchTerm?: string;\n readonly id: string;\n readonly updateContextMenu: (contextMenuItems: readonly IContextualMenuItem[], contextMenuRef: React.RefObject<HTMLDivElement>, onHidden: () => void) => void;\n readonly actions?: IContextualMenuItem[];\n readonly ariaLabelContextMenu: (displayName: string) => string;\n readonly onItemClicked?: () => void;\n}\n\nexport const classes = mergeStyleSets({\n appImageHorizontal: {\n outline: 'none',\n position: 'relative',\n width: '32px',\n height: '32px',\n borderRadius: '4px',\n marginRight: '8px'\n },\n searchItemList: {\n position: 'relative',\n height: '48px',\n paddingLeft: '8px',\n paddingRight: '8px',\n ':hover': {\n background: '#F2F2F2',\n borderStyle: 'transparent'\n }\n },\n frame: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n textDecoration: 'none',\n justifyContent: 'center',\n height: '100%',\n boxSizing: 'border-box',\n userSelect: 'none',\n '-webkit-touch-callout': 'none',\n position: 'relative'\n },\n appNameHorizontal: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n objectFit: 'contain',\n color: 'black',\n fontSize: 12,\n lineClamp: 1,\n '-webkit-line-clamp': '1',\n position: 'relative',\n top: 0,\n left: 0,\n height: 'unset',\n textAlign: 'left',\n flexGrow: 1,\n paddingRight: '24px'\n },\n contextMenuButton: {\n position: 'absolute',\n top: 0,\n right: 0,\n cursor: 'pointer',\n justifyContent: 'center',\n alignItems: 'center',\n padding: '8px 4px',\n border: 'none',\n background: 'transparent',\n fontSize: 24,\n marginTop: '8px',\n color: '#797775',\n ':hover': {\n color: '#797775',\n backgroundColor: '#F8F8F8'\n }\n }\n});\n\nconst appIconClasses = mergeStyleSets({\n text: {\n fontSize: '14px',\n fontWeight: 600\n },\n background: {\n position: 'relative',\n marginRight: '8px',\n width: '32px',\n height: '32px',\n borderRadius: 4\n }\n});\n\n/**\n * React component for rendering a basic search result in a list\n*/\nexport function SearchItemList({ displayName, redirectUrl, logoUrl, searchTerm, id, actions, updateContextMenu, ariaLabelContextMenu, onItemClicked }: SearchItemListProps): ReactElement {\n const isIE = /MSIE|Trident/.test(window.navigator.userAgent);\n const contextMenuRef = useRef<HTMLDivElement>(null);\n const [contextMenuVisible, setContextMenuVisible] = useState(false);\n const [isAriaHidden, setIsAriaHidden] = useState(true);\n const hideContextMenu = useCallback(() => setContextMenuVisible(false), [setContextMenuVisible]);\n const [hasLogoLoadError, setLogoLoadError] = useState(false);\n const onLogoLoadError = useCallback(() => setLogoLoadError(true), [setLogoLoadError]);\n const { beforeTerm, foundTerm, afterTerm } = useHighlightedTerms(displayName, searchTerm ?? '');\n\n const showContextMenu = useCallback(() => {\n setContextMenuVisible(true);\n if (updateContextMenu) {\n updateContextMenu(actions ?? [], contextMenuRef, hideContextMenu);\n }\n }, [actions, contextMenuRef, hideContextMenu, updateContextMenu]);\n\n return (\n <div\n className={classes.searchItemList}\n ref={contextMenuRef}\n onContextMenu={showContextMenu}\n data-is-scrollable=\"true\"\n >\n {/* eslint-disable-next-line react/jsx-no-target-blank */}\n <a\n role={'button'}\n className={classes.frame}\n href={redirectUrl}\n target=\"_blank\"\n data-is-focusable={'true'}\n rel={isIE ? 'noreferrer' : 'noopener'}\n draggable={false}\n aria-describedby={displayName}\n onClick={onItemClicked}\n >\n {\n (isDefaultAppLogo(logoUrl) || hasLogoLoadError)\n ? <LetterIcon id={id} label={displayName} styles={appIconClasses}></LetterIcon>\n : <img\n className={classes.appImageHorizontal}\n alt={displayName}\n src={logoUrl}\n onError={onLogoLoadError}\n aria-hidden\n />\n }\n <div className={classes.appNameHorizontal}>\n {beforeTerm}\n <strong>{foundTerm}</strong>\n {afterTerm}\n </div>\n </a>\n {actions &&\n <IconButton\n className={classes.contextMenuButton}\n onFocus={() => setIsAriaHidden(false)}\n onBlur={() => setIsAriaHidden(true)}\n ariaLabel={!isAriaHidden ? ariaLabelContextMenu(displayName) : ''}\n aria-expanded={contextMenuVisible}\n iconProps={{\n iconName: 'MoreVertical'\n }}\n onClick={showContextMenu}\n />\n }\n </div>\n );\n}\n","import { useMemo } from 'react';\n\nexport interface HighlightedTerm {\n readonly beforeTerm: string;\n readonly foundTerm: string;\n readonly afterTerm: string;\n}\n\nexport function useHighlightedTerms(value: string, term: string): HighlightedTerm {\n return useMemo(() => {\n const trimmedSearchTerm = term?.trim().toLocaleLowerCase();\n const searchTermIndex = value.toLocaleLowerCase().indexOf(trimmedSearchTerm);\n return {\n beforeTerm: searchTermIndex !== -1 ? value.slice(0, searchTermIndex) : value,\n foundTerm: searchTermIndex !== -1 ? value.slice(searchTermIndex, searchTermIndex + trimmedSearchTerm.length) : '',\n afterTerm: searchTermIndex !== -1 ? value.slice(searchTermIndex + trimmedSearchTerm.length) : ''\n };\n }, [value, term]);\n}\n","export function isContextMenuItem(element: HTMLElement | null): boolean {\n // Context menu items are of role 'menuitem' and have an ancestor of role 'menu'.\n // Navbar menu items are of role 'menuitem' and have an ancestor of role 'menubar'.\n const expectedRoles = ['menuitem', 'menu', 'menuitemcheckbox'];\n if (!element) return false;\n return expectedRoles.includes(element.getAttribute('role')?.toLowerCase() ?? '');\n};\n","import React, { ReactElement, useCallback, useRef } from 'react';\n\nimport { useOutsideClickHandler } from '../atoms/useOutsideClickHandler';\nimport { isContextMenuItem } from '../utilities/focusHelpers';\n\ninterface IFocusHandlerProps {\n readonly className?: string;\n readonly loseFocus: () => void;\n readonly excludedIdRoot?: string;\n readonly children?: React.ReactNode;\n}\n\nexport function FocusHandler({ loseFocus, className, children, excludedIdRoot }: IFocusHandlerProps): ReactElement {\n const ref = useRef<HTMLDivElement>(null);\n useOutsideClickHandler(ref, loseFocus, excludedIdRoot);\n\n const handleTab = useCallback((event: React.FocusEvent): void => {\n const currentRef = ref.current;\n const relatedTarget = event.relatedTarget as HTMLElement;\n if (relatedTarget &&\n currentRef && !currentRef.contains(relatedTarget) &&\n // Exclude context menu items & items with ids that include the excludedIdRoot\n !isContextMenuItem(relatedTarget) &&\n !(excludedIdRoot && relatedTarget?.id.includes(excludedIdRoot))\n ) {\n loseFocus();\n }\n }, [loseFocus, ref, excludedIdRoot]);\n\n return <div className={className} ref={ref} onBlur={handleTab}>{children}</div>;\n};\n","import { useCallback, useEffect } from 'react';\n\nimport { isContextMenuItem } from '../utilities/focusHelpers';\n\nexport function useOutsideClickHandler(ref: React.MutableRefObject<Node | null>, callback: () => void, excludedIdRoot?: string): void {\n const handleClickOutside = useCallback((event: MouseEvent) => {\n const currentRef = ref.current;\n const eventTarget = event.target as HTMLElement;\n if (eventTarget &&\n currentRef && !currentRef.contains(eventTarget) &&\n // Context menus opened from a child should not be treated as \"outside\"\n // even though they are located elsewhere in the DOM tree.\n !isContextMenuItem(eventTarget) &&\n !(excludedIdRoot && eventTarget?.id.includes(excludedIdRoot))\n ) {\n callback();\n }\n }, [ref, excludedIdRoot, callback]);\n\n useEffect(() => {\n document.addEventListener('click', handleClickOutside);\n return () => {\n document.removeEventListener('click', handleClickOutside);\n };\n }, [handleClickOutside]);\n};\n","import { ISearchBox, ISearchBoxStyles, SearchBox } from '@fluentui/react';\nimport React, { ReactElement } from 'react';\n\nexport interface SearchBarProps {\n readonly placeholder: string;\n readonly onChange: (_event?: React.ChangeEvent<HTMLInputElement>, newValue?: string) => void;\n readonly handleFocus: () => void;\n readonly hasFocus: boolean;\n readonly handleShowResults?: () => void;\n readonly initialSearchTerm?: string;\n readonly searchBoxRef?: React.Ref<ISearchBox> | undefined;\n}\n\nexport const searchStyles: ISearchBoxStyles = {\n root: {\n borderRadius: '4px',\n padding: '0px',\n border: 'none',\n boxShadow: '0px 1px 2.5px rgba(0, 0, 0, 0.1)'\n },\n icon: {\n color: '#616161',\n selectors: {\n '&:hover': {\n color: '#242424'\n },\n '&:focus': {\n color: '#006FC9'\n },\n '&:active': {\n display: 'none'\n }\n }\n },\n field: {\n color: '#242424',\n selectors: {\n '&::placeholder': {\n color: '#616161'\n },\n '&:hover::placeholder': {\n color: '#242424'\n },\n '&:focus::placeholder': {\n color: '#242424'\n }\n }\n },\n clearButton: {\n color: 'green',\n selectors: {\n '& .ms-Button-flexContainer > i': {\n color: '#242424'\n }\n }\n }\n};\n\n/**\n * React component for rendering a search box\n */\nexport function SearchBar({ placeholder, onChange, hasFocus, initialSearchTerm, handleFocus, searchBoxRef, handleShowResults }: SearchBarProps): ReactElement {\n return (\n <SearchBox\n role=\"combobox\"\n aria-expanded={hasFocus}\n placeholder={placeholder}\n defaultValue={initialSearchTerm}\n styles={searchStyles}\n disableAnimation={true}\n autoComplete=\"off\"\n showIcon={true}\n onChange={onChange}\n onSearch={handleShowResults}\n onFocus={handleFocus}\n componentRef={searchBoxRef}>\n </SearchBox>\n );\n}\n","import { IStyle, memoizeFunction, mergeStyleSets } from '@fluentui/react';\nimport React, { ReactElement } from 'react';\n\nexport interface ShowMoreProps {\n readonly text: string;\n readonly tokens?: ShowMoreDesignTokens;\n}\n\nexport interface ShowMoreDesignTokens {\n readonly showMore_item_height?: number;\n readonly showMore_background_color?: string;\n readonly showMore_text_color?: string;\n readonly showMore_hover_color?: string;\n}\n\nexport interface ShowMoreTheme {\n readonly searchResultShowMore: IStyle;\n readonly searchResultLink: IStyle;\n}\n\nexport const showMoreStyles = memoizeFunction((\n itemHeight?: number,\n textColor?: string,\n backgroundColor?: string,\n hoverColor?: string\n) => {\n return mergeStyleSets({\n searchResultShowMore: {\n height: itemHeight ?? 48,\n background: 'white',\n ':hover': {\n background: hoverColor ?? '#F2F2F2',\n borderStyle: 'transparent'\n }\n },\n searchResultLink: {\n position: 'relative',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n width: '100%',\n height: '100%',\n padding: 0,\n border: 'none',\n background: backgroundColor ?? 'none',\n color: textColor ?? 'rgb(0, 120, 212)',\n cursor: 'pointer',\n userSelect: 'none'\n }\n });\n});\n\n/**\n * React component for rendering a basic search result in a list\n*/\nexport function ShowMoreButton({ text, tokens }: ShowMoreProps): ReactElement {\n const classes = showMoreStyles(\n tokens?.showMore_item_height,\n tokens?.showMore_text_color,\n tokens?.showMore_background_color,\n tokens?.showMore_text_color\n );\n return (\n <div className={classes.searchResultShowMore}>\n <button id='results-show-more' className={classes.searchResultLink} type=\"button\">\n {text}\n </button>\n </div>\n );\n}\n","import { List, mergeStyleSets } from '@fluentui/react';\nimport React, { ReactElement, ReactNode, useCallback, useState } from 'react';\n\nimport { useFilteredGroups } from '../atoms/useFilteredGroups';\nimport { SearchableGroup, SearchableItem } from '../utilities/SearchTypes';\nimport { ShowMoreButton } from './ShowMoreButton';\n\ninterface SearchResultsStrings {\n readonly showMore: string;\n readonly showingResults: (count: number, term: string) => string;\n readonly numberOfResultsText: (number: number) => string;\n}\n\nexport interface SearchResultProps<T extends SearchableItem> {\n readonly searchValues: Array<SearchableGroup<T>>;\n readonly searchTerm: string | undefined;\n readonly displayLimit?: number;\n readonly showMoreRef?: React.RefObject<HTMLDivElement>;\n readonly onEmptySearch?: () => ReactNode;\n readonly strings: SearchResultsStrings;\n}\n\nexport const classes = mergeStyleSets({\n searchResultList: {\n backgroundColor: 'white',\n overflowY: 'auto',\n borderBottomLeftRadius: '6px',\n borderBottomrightRadius: '6px'\n },\n searchGroupHeader: {\n backgroundColor: 'white',\n fontWeight: '700'\n },\n searchResults: {\n position: 'absolute',\n width: '100%',\n top: '33px',\n boxShadow: '0px 3.6px 8.2px rgba(0, 0, 0, 0.15)',\n borderBottomLeftRadius: '6px',\n borderBottomRightRadius: '6px',\n maxHeight: '552px',\n overflowY: 'auto'\n },\n searchResultTextOnly: {\n marginLeft: 8\n },\n searchResultUnselectable: {\n backgroundColor: 'white',\n height: '48px',\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center'\n },\n hiddenResults: {\n border: '0px',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: '0px',\n position: 'absolute',\n whiteSpace: 'nowrap',\n width: '1px',\n }\n});\n\n/**\n * React component for rendering the results of a search\n */\nexport function SearchResults<T extends SearchableItem>({ searchValues, searchTerm, displayLimit, onEmptySearch, showMoreRef, strings }: SearchResultProps<T>): ReactElement {\n const filteredGroups = useFilteredGroups<T>(searchValues, searchTerm, displayLimit);\n const [numItemsDisplayed, setNumItemsDisplayed] = useState(displayLimit ?? Infinity);\n\n const onRenderCell = useCallback(\n (group: SearchableGroup<T>, item?: T, index?: number) => {\n if (group.onRenderItem) {\n return group.onRenderItem(item, index, searchTerm);\n }\n return <div></div>;\n },\n [searchTerm]\n );\n\n const showMoreItems = useCallback(() => {\n if (displayLimit) {\n setNumItemsDisplayed(numItemsDisplayed + displayLimit);\n }\n }, [numItemsDisplayed, setNumItemsDisplayed, displayLimit]);\n\n const createOnRenderCellHandler = useCallback((group: SearchableGroup<T>) => {\n return function(item?: T, index?: number) {\n return onRenderCell(group, item, index);\n };\n }, [onRenderCell]);\n\n return (\n <div aria-live=\"polite\" aria-atomic=\"true\" className={classes.searchResults}>\n {\n filteredGroups.map((group, index) => {\n return (\n <div key={index}>\n {searchTerm &&\n <div className={classes.searchResultUnselectable}>\n <span className={classes.searchResultTextOnly}>\n {strings.showingResults(group.items.length, searchTerm)}\n </span>\n </div>\n }\n { group.items.length === 0 &&\n <div>\n {onEmptySearch?.()}\n </div>\n }\n { group.items.length > 0 &&\n <div className={classes.hiddenResults} aria-live=\"polite\">\n {strings.numberOfResultsText(group.items.length)}\n </div>\n }\n {group.items.length > 0 &&\n <List\n className={classes.searchResultList}\n items={group.items.slice(0, numItemsDisplayed) }\n onRenderCell={createOnRenderCellHandler(group)}>\n </List>\n }\n {numItemsDisplayed < group.items.length && group.items.length > 0 &&\n <div\n ref={showMoreRef}\n onClick={showMoreItems}\n onKeyUp={event => event.key === 'Enter' ? showMoreItems() : null}\n role='button'\n tabIndex={0}\n >\n <ShowMoreButton text={strings.showMore}></ShowMoreButton>\n </div>\n }\n </div>\n );\n })\n }\n </div>\n );\n}\n","import { useMemo } from 'react';\n\nimport { SearchableGroup, SearchableItem } from '../utilities/SearchTypes';\n\nexport function useFilteredGroups<T extends SearchableItem>(searchGroups: ReadonlyArray<SearchableGroup<T>>, searchTerm?: string, limit?: number): Array<SearchableGroup<T>> {\n return useMemo(() => {\n const trimmedSearchTerm = searchTerm?.trim().toLocaleLowerCase();\n\n if (trimmedSearchTerm) {\n let result = searchGroups.map((group) => {\n const filteredItems = group.items.filter((item) =>\n item.displayName?.toLocaleLowerCase().includes(trimmedSearchTerm)\n );\n return {\n ...group,\n items: filteredItems\n };\n });\n\n if (limit != null && limit > 0 && result.length > limit) {\n result = result.slice(0, limit);\n }\n\n return result;\n } else {\n return searchGroups as Array<SearchableGroup<T>>;\n }\n }, [searchGroups, searchTerm, limit]);\n}\n","import { FocusZone, Icon, ISearchBox, mergeStyleSets } from '@fluentui/react';\nimport { HeaderButton } from '@iamexperiences/suite-header';\nimport React, { ReactElement, ReactNode, useCallback, useRef, useState } from 'react';\n\nimport { useScreenWidth } from '../../../shared/hooks/useScreenWidth';\nimport { useDebounce } from '../atoms/useDebounce';\nimport { FocusHandler } from '../molecules/FocusHandler';\nimport { SearchBar } from '../molecules/SearchBar';\nimport { SearchResults } from '../molecules/SearchResults';\nimport { SearchableGroup, SearchableItem } from '../utilities/SearchTypes';\n\nexport interface SearchComponentStrings {\n readonly searchBoxPlaceholder: string;\n readonly showMore: string;\n\n readonly showingResults: (count: number, term: string) => string;\n readonly numberOfResultsText: (number: number) => string;\n}\n\nexport interface SearchComponentProps<T extends SearchableItem> {\n readonly searchValues: Array<SearchableGroup<T>>;\n readonly strings: SearchComponentStrings;\n readonly displayLimit?: number;\n readonly startingSearchTerm?: string;\n readonly handleShowResults?: () => void;\n readonly hideResults?: boolean;\n readonly onEmptySearch?: () => ReactNode;\n readonly searchBoxRef?: React.Ref<ISearchBox> | undefined;\n}\nexport const ScreenWidthMinXLarge = 1024;\nexport const ScreenWidthMinXXLarge = 1366;\n\nexport const classes = mergeStyleSets({\n searchArea: {\n position: 'absolute',\n left: '50%',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n width: '100%',\n maxWidth: '468px',\n [`@media (min-width: ${ScreenWidthMinXLarge}px) and (max-width: ${ScreenWidthMinXXLarge}px)`]: {\n maxWidth: '304px'\n },\n [`@media (max-width: ${ScreenWidthMinXLarge}px)`]: {\n width: 'unset',\n position: 'absolute',\n left: '4px',\n right: '4px',\n top: '50%',\n transform: 'translateY(-50%)',\n zIndex: 1\n }\n },\n mobileSearchHeaderButton: {\n display: 'none',\n [`@media (max-width: ${ScreenWidthMinXLarge}px)`]: {\n display: 'flex',\n justifyContent: 'center'\n }\n },\n mobileSearchHeaderButtonHidden: {\n display: 'none'\n },\n mobile: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%'\n }\n});\n\n/**\n * React component for rendering a search box and search result component\n */\nexport function SearchComponent<T extends SearchableItem>(\n {\n searchValues,\n strings,\n displayLimit,\n startingSearchTerm,\n onEmptySearch,\n searchBoxRef,\n hideResults,\n handleShowResults\n }: SearchComponentProps<T>): ReactElement {\n const [searchTerm, setSearchTerm] = useState<string | undefined>(startingSearchTerm);\n const showMoreRef = useRef<HTMLDivElement>(null);\n const windowWidth = useScreenWidth();\n const [expanded, setExpanded] = useState(!!startingSearchTerm);\n\n const handleExpand = useCallback(() => {\n setExpanded(true);\n }, []);\n\n const handleBlur = useCallback(() => {\n setExpanded(false);\n }, []);\n\n const handleChange = useCallback((_event?: React.ChangeEvent<HTMLInputElement>, newValue?: string) => {\n if (hideResults) {\n handleShowResults?.();\n }\n setSearchTerm(newValue);\n }, [handleShowResults, hideResults]);\n\n const debouncedSearchTerm = useDebounce(handleChange, 300);\n\n return (\n <div>\n <div className={classes.mobile}>\n <HeaderButton\n className={\n expanded\n ? classes.mobileSearchHeaderButtonHidden\n : classes.mobileSearchHeaderButton\n }\n onClick={handleExpand}\n >\n <Icon iconName=\"Search\" />\n </HeaderButton>\n </div>\n {(expanded || windowWidth > ScreenWidthMinXLarge) &&\n <FocusZone>\n <FocusHandler className={classes.searchArea} loseFocus={handleBlur} excludedIdRoot='results'>\n <SearchBar\n initialSearchTerm={startingSearchTerm}\n placeholder={strings.searchBoxPlaceholder}\n hasFocus={!!searchTerm && expanded && !hideResults}\n onChange={debouncedSearchTerm}\n handleFocus={handleExpand}\n searchBoxRef={searchBoxRef}\n handleShowResults={handleShowResults}\n />\n {searchTerm && expanded && !hideResults &&\n <SearchResults\n searchValues={searchValues}\n searchTerm={searchTerm}\n showMoreRef={showMoreRef}\n displayLimit={displayLimit}\n onEmptySearch={onEmptySearch}\n strings={strings}\n />\n }\n </FocusHandler>\n </FocusZone>\n }\n </div>\n );\n}\n","import {\n ContextualMenu,\n DirectionalHint,\n FontIcon,\n IContextualMenuItem,\n IPopupRestoreFocusParams,\n ISearchBox,\n mergeStyleSets\n} from '@fluentui/react';\nimport { useTelemetry } from '@iamexperiences/ecos-telemetry';\nimport React, { lazy, ReactElement, Suspense, useCallback, useMemo, useRef, useState } from 'react';\n\nimport { AppsActions } from '../../shared/Telemetry/AppsActions';\nimport { useCollectionModals } from '../atoms/CollectionModalsProvider';\nimport { useLocalization } from '../atoms/useLocalization';\nimport { useUrlParams } from '../atoms/useUrlParams';\nimport { Tile, useUserTileLibrary } from '../client-app-collections';\nimport { SearchComponent, SearchItemList } from '../feature-app-search';\nimport { useBookmarkActionDelete } from '../organisms/Bookmarks/useBookmarkActionDelete';\nimport { useBookmarkActionUpdate } from '../organisms/Bookmarks/useBookmarkActionUpdate';\nimport { useAppActionAddToCollection } from '../organisms/useAppActionAddToCollection';\nimport { useAppActionCopyLink } from '../organisms/useAppActionCopyLink';\nimport { useAppActionManage } from '../organisms/useAppActionManage';\nexport const DeleteBookmark = lazy(async () =>\n await import(/* webpackChunkName: \"bookmarks\" */ '../organisms/Bookmarks/DeleteBookmark'));\nexport const UpdateBookmark = lazy(async () =>\n await import(/* webpackChunkName: \"bookmarks\" */ '../organisms/Bookmarks/UpdateBookmark'));\nexport const CreateBookmark = lazy(async () =>\n await import(/* webpackChunkName: \"bookmarks\" */ '../organisms/Bookmarks/CreateBookmark'));\n\nexport const classes = mergeStyleSets({\n searchResultButtonIcon: {\n margin: 8,\n fontSize: 14,\n color: 'rgb(0, 120, 212)'\n },\n searchItemList: {\n position: 'relative',\n height: '48px',\n paddingLeft: '8px',\n paddingRight: '8px',\n backgroundColor: 'white',\n ':hover': {\n background: '#F2F2F2',\n borderStyle: 'transparent'\n }\n },\n frame: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n textDecoration: 'none',\n justifyContent: 'center',\n height: '100%',\n boxSizing: 'border-box',\n userSelect: 'none',\n '-webkit-touch-callout': 'none',\n position: 'relative'\n },\n searchResultButton: {\n position: 'relative',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n width: '100%',\n height: '100%',\n padding: 0,\n border: 'none',\n background: 'none',\n cursor: 'pointer',\n userSelect: 'none'\n }\n});\n\nexport interface ContextMenuState {\n readonly visible: boolean;\n readonly contextMenuRef: React.RefObject<HTMLDivElement>;\n readonly items: readonly IContextualMenuItem[];\n readonly onHidden: () => void;\n}\n\nexport function SearchBox(): ReactElement {\n const [t] = useLocalization();\n const telemetry = useTelemetry();\n const { tiles } = useUserTileLibrary();\n const urlParams = useUrlParams();\n const initialSearch = urlParams.search;\n const copyAppLink = useAppActionCopyLink();\n const addAppToCollection = useAppActionAddToCollection();\n const [updateBookmark, updateBookmarkProps] = useBookmarkActionUpdate();\n const [deleteBookmark, deleteBookmarkProps] = useBookmarkActionDelete();\n const searchBoxRef = useRef<ISearchBox | null>(null);\n const appActionManage = useAppActionManage();\n const [contextMenuState, setContextMenuState] = useState<ContextMenuState>();\n const [hideResults, setHideResults] = useState(false);\n const { pushModal } = useCollectionModals();\n\n const handleShowResults = useCallback(() => {\n setHideResults(false);\n }, []);\n\n const hideContextMenu = useCallback(() => {\n contextMenuState?.onHidden();\n setContextMenuState(undefined);\n }, [contextMenuState, setContextMenuState]);\n const updateContextMenu = useCallback(\n (contextMenuItems: readonly IContextualMenuItem[], contextMenuRef: any, onHidden: () => void) => {\n setContextMenuState({ visible: true, contextMenuRef, items: contextMenuItems, onHidden });\n }, [setContextMenuState]);\n\n const onRestoreFocus = useCallback((_params: IPopupRestoreFocusParams) => {\n setHideResults(true);\n }, []);\n\n const onAppLaunch = useCallback(() => {\n searchBoxRef.current?.focus();\n setHideResults(true);\n telemetry.reportCustomEvent(AppsActions.selectApp);\n }, [telemetry]);\n\n const resultsText = useCallback((resultsCount: number, searchTerm: string) => {\n return t(resultsCount === 0 ? 'noResultsForSearchTerm' : 'resultsForSearchTerm', { searchTerm });\n }, [t]);\n\n const ariaLabelContextMenu = useCallback((displayName: string) => {\n return t('openAppsContextMenu', { appName: displayName });\n }, [t]);\n\n const numberOfResultsText = useCallback((number: number) => {\n return t('numberOfResults', { number: number });\n }, [t]);\n\n const allActions = useMemo(() => {\n return [\n copyAppLink,\n updateBookmark,\n deleteBookmark,\n appActionManage\n ];\n }, [copyAppLink, updateBookmark, deleteBookmark, appActionManage]);\n\n const renderSearchItem = useCallback((item?: Tile | undefined, _index?: number, searchTerm?: string) => {\n if (!item) {\n return <div></div>;\n }\n const addAppsAction: IContextualMenuItem = {\n key: 'addApps',\n name: t('addApps'),\n iconProps: { iconName: 'Add' },\n ariaLabel: addAppToCollection.ariaLabel,\n onClick: () => {\n addAppToCollection.act([item, undefined]);\n },\n subMenuProps: { items: addAppToCollection.subMenuProps([item, undefined]) }\n };\n\n let actions = allActions\n .filter(x => x.enabled === true || x.enabled([item, undefined]))\n .map(x => {\n const contextMenuItem: IContextualMenuItem = {\n key: x.key,\n name: x.name,\n onClick: () => x.act([item, undefined]),\n iconProps: x.icon ? { iconName: x.icon } : undefined\n };\n\n return contextMenuItem;\n });\n\n actions = actions.concat(addAppsAction);\n\n return (\n <SearchItemList\n displayName={item.displayName}\n logoUrl={item.logoUrl}\n searchTerm={searchTerm}\n redirectUrl={item.persistentLaunchUrl}\n id={item.id}\n actions={actions}\n updateContextMenu={updateContextMenu}\n ariaLabelContextMenu={ariaLabelContextMenu}\n onItemClicked={onAppLaunch}\n />\n );\n }, [addAppToCollection, allActions, ariaLabelContextMenu, onAppLaunch, t, updateContextMenu]);\n\n const onCreateBookmark = useCallback(() => {\n pushModal('createBookmark', {});\n }, [pushModal]);\n const onEmptySearch = useCallback(() => {\n return (\n <div className={classes.searchItemList}>\n <div className={classes.frame}>\n <button className={classes.searchResultButton} type=\"button\" onClick={onCreateBookmark}>\n <FontIcon className={classes.searchResultButtonIcon} iconName=\"Add\" />\n {t('addSite')}\n </button>\n </div>\n </div>\n );\n }, [onCreateBookmark, t]);\n\n return (\n <Suspense fallback={<div></div>}>\n <SearchComponent\n searchValues={\n [\n { items: tiles, displayName: 'Apps', onRenderItem: renderSearchItem }\n ]\n }\n strings={{\n searchBoxPlaceholder: t('searchApps'),\n showMore: t('viewMore'),\n showingResults: resultsText,\n numberOfResultsText: numberOfResultsText\n }}\n displayLimit={9}\n startingSearchTerm={initialSearch}\n onEmptySearch={onEmptySearch}\n handleShowResults={handleShowResults}\n hideResults={hideResults}\n searchBoxRef={searchBoxRef}\n />\n <ContextualMenu\n target={contextMenuState?.contextMenuRef}\n hidden={!contextMenuState?.visible}\n onDismiss={hideContextMenu}\n items={contextMenuState?.items ? [...contextMenuState.items] : []}\n isBeakVisible={false}\n gapSpace={0}\n focusZoneProps={{\n onBlur: (e) => e.stopPropagation()\n }}\n directionalHint={DirectionalHint.bottomRightEdge}\n onRestoreFocus={onRestoreFocus}\n />\n <UpdateBookmark {...updateBookmarkProps} />\n <DeleteBookmark {...deleteBookmarkProps} />\n </Suspense>\n );\n};\n","import { ContextualMenuItemType } from '@fluentui/react';\nimport { useLocalization } from '../atoms/useLocalization';\nimport { useCallback, useMemo } from 'react';\n\nimport { Constants } from '../../shared/Constants/Constants';\nimport { Collection, Tile, useUpdateCollectionView, useUserCollectionOrder } from '../client-app-collections';\nimport { useRoute } from './useRoute';\n\nexport interface subMenuProps {\n readonly key: string;\n readonly text?: string;\n readonly title?: string;\n readonly canCheck?: boolean;\n readonly onClick?: () => void;\n}\n\nexport interface Action {\n readonly key: string;\n readonly name: string;\n readonly icon: string;\n readonly enabled: true;\n readonly ariaLabel: string;\n readonly act: ([app]: readonly [Tile, unknown]) => void;\n readonly subMenuProps: ([app]: readonly [Tile, unknown]) => subMenuProps[];\n}\n\nexport function useAppActionAddToCollection(): Action {\n const [t] = useLocalization();\n const { collections } = useUserCollectionOrder();\n const updateCollection = useUpdateCollectionView();\n const { openCreateCollection } = useRoute();\n\n const onCreateCollection = useCallback(() => {\n openCreateCollection();\n }, [openCreateCollection]);\n\n const availableCollections = collections.filter(x =>\n x.viewPermissions.canAddItems && x.loadingState === 'loaded'\n );\n\n const isAppInCollection = (collection?: Collection, app?: Tile): boolean | undefined => {\n if (!app || collection?.loadingState !== 'loaded') return undefined;\n return collection.items.some((x) => x.id === app.id);\n };\n\n const canRemoveItems = (collection: Collection): boolean | undefined => {\n if (collection?.loadingState !== 'loaded') return undefined;\n return collection.viewPermissions.canRemoveItems;\n };\n\n const newItem = useMemo(() => {\n return {\n key: 'new',\n text: t('New'),\n title: t('New'),\n canCheck: false,\n isChecked: false,\n onClick: () => onCreateCollection()\n };\n }, [onCreateCollection, t]);\n\n return useMemo(() => ({\n key: 'addAppToCollection',\n name: t('addAppToCollection'),\n ariaLabel: t('addAppToCollection'),\n icon: 'Add',\n enabled: true,\n act: ([app]) => {\n console.log('addAppToCollection', { app });\n },\n subMenuProps: ([app]) => [\n newItem,\n { key: 'divider', itemType: ContextualMenuItemType.Divider },\n ...availableCollections.map((collection) => ({\n key: collection.id,\n text: collection.displayName.substring(0, Constants.MAX_CONTEXT_MENU_ITEM_LENGTH),\n title: collection.displayName,\n ariaLabel: collection.displayName,\n canCheck: true,\n isChecked: isAppInCollection(collection, app),\n onClick: () => {\n if (isAppInCollection(collection, app) && canRemoveItems(collection) && collection?.loadingState === 'loaded') {\n updateCollection({\n id: collection.id,\n explicitItemIds: collection.view?.explicitItemIds,\n hiddenItemIds: collection.view?.hiddenItemIds ? [...collection.view.hiddenItemIds, app.id] : [app.id],\n displayName: collection.displayName\n });\n } else if (collection?.loadingState === 'loaded') {\n updateCollection({\n id: collection.id,\n explicitItemIds: collection.view?.explicitItemIds\n ? collection.view?.explicitItemIds.filter((id) => id !== app.id).concat(app.id)\n : [app.id],\n hiddenItemIds: collection.view?.hiddenItemIds\n ? collection.view?.hiddenItemIds.filter((x) => x !== app.id)\n : [],\n displayName: collection.displayName\n });\n }\n }\n }))\n ]\n }), [availableCollections, newItem, t, updateCollection]);\n};\n","import { useCallback, useEffect, useState } from 'react';\n\nexport function useDebounce<T extends any[]>(f: (...args: T) => void, timeout: number): (...args: T) => void {\n const [args, setArgs] = useState<T>();\n\n useEffect(() => {\n if (args) {\n const handle = setTimeout(() => {\n setArgs(undefined);\n f(...args);\n }, timeout);\n\n return () => {\n clearTimeout(handle);\n };\n } else {\n return undefined;\n }\n }, [f, timeout, args]);\n\n return useCallback((...latestArgs: T) => {\n setArgs(latestArgs);\n }, []);\n}\n","import { useEffect, useState } from 'react';\n\nexport function useScreenWidth(): number {\n const [windowWidth, setWindowWidth] = useState(window.innerWidth);\n\n useEffect(() => {\n const handleResize = () => {\n setWindowWidth(window.innerWidth);\n };\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, []);\n\n return windowWidth;\n}\n"],"names":["classes","mergeStyleSets","appImageHorizontal","outline","position","width","height","borderRadius","marginRight","searchItemList","paddingLeft","paddingRight","background","borderStyle","frame","display","flexDirection","alignItems","textDecoration","justifyContent","boxSizing","userSelect","appNameHorizontal","overflow","textOverflow","objectFit","color","fontSize","lineClamp","top","left","textAlign","flexGrow","contextMenuButton","right","cursor","padding","border","marginTop","backgroundColor","appIconClasses","text","fontWeight","SearchItemList","_ref","value","term","displayName","redirectUrl","logoUrl","searchTerm","id","actions","updateContextMenu","ariaLabelContextMenu","onItemClicked","isIE","test","window","navigator","userAgent","contextMenuRef","useRef","_useState2","_slicedToArray","useState","contextMenuVisible","setContextMenuVisible","_useState4","isAriaHidden","setIsAriaHidden","hideContextMenu","useCallback","_useState6","hasLogoLoadError","setLogoLoadError","onLogoLoadError","_useHighlightedTerms","useMemo","trimmedSearchTerm","trim","toLocaleLowerCase","searchTermIndex","indexOf","beforeTerm","slice","foundTerm","length","afterTerm","showContextMenu","React","className","ref","onContextMenu","role","href","target","rel","draggable","onClick","isDefaultAppLogo","LetterIcon","label","styles","alt","src","onError","IconButton","onFocus","onBlur","ariaLabel","iconProps","iconName","isContextMenuItem","element","_element$getAttribute","_element$getAttribute2","includes","getAttribute","toLowerCase","FocusHandler","loseFocus","children","excludedIdRoot","callback","handleClickOutside","event","currentRef","current","eventTarget","contains","useEffect","document","addEventListener","removeEventListener","useOutsideClickHandler","handleTab","relatedTarget","searchStyles","root","boxShadow","icon","selectors","field","clearButton","SearchBar","placeholder","onChange","hasFocus","initialSearchTerm","handleFocus","searchBoxRef","handleShowResults","SearchBox","defaultValue","disableAnimation","autoComplete","showIcon","onSearch","componentRef","showMoreStyles","memoizeFunction","itemHeight","textColor","hoverColor","searchResultShowMore","searchResultLink","ShowMoreButton","tokens","showMore_item_height","showMore_text_color","showMore_background_color","type","searchResultList","overflowY","borderBottomLeftRadius","borderBottomrightRadius","searchGroupHeader","searchResults","borderBottomRightRadius","maxHeight","searchResultTextOnly","marginLeft","searchResultUnselectable","hiddenResults","margin","whiteSpace","SearchResults","searchValues","displayLimit","onEmptySearch","showMoreRef","strings","filteredGroups","searchGroups","limit","result","map","group","filteredItems","items","filter","item","_item$displayName","_objectSpread","useFilteredGroups","Infinity","numItemsDisplayed","setNumItemsDisplayed","onRenderCell","index","onRenderItem","showMoreItems","createOnRenderCellHandler","key","showingResults","numberOfResultsText","List","onKeyUp","tabIndex","showMore","ScreenWidthMinXLarge","searchArea","_searchArea","transform","maxWidth","_defineProperty","concat","zIndex","mobileSearchHeaderButton","mobileSearchHeaderButtonHidden","mobile","SearchComponent","startingSearchTerm","hideResults","setSearchTerm","windowWidth","useScreenWidth","expanded","setExpanded","handleExpand","handleBlur","handleChange","_event","newValue","debouncedSearchTerm","useDebounce","HeaderButton","Icon","FocusZone","searchBoxPlaceholder","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","desc","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","undefined","done","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","i","doneResult","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","arguments","apply","DeleteBookmark","lazy","_callee","_context","UpdateBookmark","_callee2","_context2","CreateBookmark","_callee3","_context3","searchResultButtonIcon","searchResultButton","t","useLocalization","telemetry","useTelemetry","tiles","useUserTileLibrary","initialSearch","useUrlParams","search","copyAppLink","useAppActionCopyLink","addAppToCollection","collections","useUserCollectionOrder","updateCollection","useUpdateCollectionView","openCreateCollection","useRoute","onCreateCollection","availableCollections","x","viewPermissions","canAddItems","loadingState","isAppInCollection","collection","app","some","newItem","title","canCheck","isChecked","enabled","act","console","log","subMenuProps","_ref3","itemType","ContextualMenuItemType","Divider","_toConsumableArray","substring","Constants","MAX_CONTEXT_MENU_ITEM_LENGTH","_collection$view","_collection$view2","canRemoveItems","explicitItemIds","view","hiddenItemIds","_collection$view3","_collection$view4","_collection$view5","_collection$view6","useAppActionAddToCollection","_useBookmarkActionUpd2","useBookmarkActionUpdate","updateBookmark","updateBookmarkProps","_useBookmarkActionDel2","useBookmarkActionDelete","deleteBookmark","deleteBookmarkProps","appActionManage","useAppActionManage","contextMenuState","setContextMenuState","setHideResults","pushModal","useCollectionModals","onHidden","contextMenuItems","visible","onRestoreFocus","_params","onAppLaunch","_searchBoxRef$current","focus","reportCustomEvent","AppsActions","selectApp","resultsText","resultsCount","appName","number","allActions","renderSearchItem","_index","addAppsAction","persistentLaunchUrl","onCreateBookmark","FontIcon","Suspense","fallback","ContextualMenu","hidden","onDismiss","isBeakVisible","gapSpace","focusZoneProps","e","stopPropagation","directionalHint","DirectionalHint","bottomRightEdge","f","timeout","setArgs","setTimeout","clearTimeout","_len","latestArgs","Array","_key","innerWidth","setWindowWidth","handleResize"],"sourceRoot":""}