@majapisoftwares/ui 4.1.10 → 4.1.11

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.
@@ -1,4 +1,4 @@
1
- export default function Spotlight<T extends object>({ recentSearchesId, open, setOpen, setQuery, query, onClickItem, results, loading, getItemId, getItemLabel, getItemPicture, getItemHref, showSeeMoreButton, onSeeMoreClick, seeMoreHref, overlayClassName, dialogContentClassName, className, contentClassName, iconClassName, inputClassName, buttonClassName, noResultsClassName, recentSearchClassName, buttonLabel, noRecentSearchLabel, recentlySearchedLabel, noResultsLabel, }: {
1
+ export default function Spotlight<T extends object>({ recentSearchesId, open, setOpen, setQuery, query, onClickItem, results, loading, getItemId, getItemLabel, getItemPicture, getItemHref, onSeeMoreClick, seeMoreHref, overlayClassName, dialogContentClassName, className, contentClassName, iconClassName, inputClassName, buttonClassName, noResultsClassName, recentSearchClassName, seeMoreLabel, noRecentSearchLabel, recentlySearchedLabel, noResultsLabel, onSubmit, }: {
2
2
  recentSearchesId: string;
3
3
  open: boolean;
4
4
  setOpen: (open: boolean) => void;
@@ -11,7 +11,6 @@ export default function Spotlight<T extends object>({ recentSearchesId, open, se
11
11
  getItemPicture?: (item: T) => string;
12
12
  getItemHref?: (item: T) => string;
13
13
  onClickItem?: (item: T) => void;
14
- showSeeMoreButton?: boolean;
15
14
  onSeeMoreClick?: () => void;
16
15
  seeMoreHref?: string;
17
16
  overlayClassName?: string;
@@ -23,8 +22,9 @@ export default function Spotlight<T extends object>({ recentSearchesId, open, se
23
22
  buttonClassName?: string;
24
23
  noResultsClassName?: string;
25
24
  recentSearchClassName?: string;
26
- buttonLabel?: string;
25
+ seeMoreLabel?: string;
27
26
  noRecentSearchLabel?: string;
28
27
  recentlySearchedLabel?: string;
29
28
  noResultsLabel?: string;
29
+ onSubmit?: () => void;
30
30
  }): import("react").JSX.Element;
@@ -11,7 +11,7 @@ import Skeleton from "../Skeleton";
11
11
  import UnstyledButton from "../Button/UnstyledButton";
12
12
  import Button from "../Button";
13
13
  import clsx from "../../utils/clsx";
14
- export default function Spotlight({ recentSearchesId, open, setOpen, setQuery, query, onClickItem, results, loading, getItemId = (item) => item._id, getItemLabel = (item) => item.name, getItemPicture, getItemHref, showSeeMoreButton, onSeeMoreClick, seeMoreHref, overlayClassName, dialogContentClassName, className, contentClassName, iconClassName, inputClassName, buttonClassName, noResultsClassName, recentSearchClassName, buttonLabel = "See more", noRecentSearchLabel = "No recent search", recentlySearchedLabel = "Recently searched", noResultsLabel = "No result found", }) {
14
+ export default function Spotlight({ recentSearchesId, open, setOpen, setQuery, query, onClickItem, results, loading, getItemId = (item) => item._id, getItemLabel = (item) => item.name, getItemPicture, getItemHref, onSeeMoreClick, seeMoreHref, overlayClassName, dialogContentClassName, className, contentClassName, iconClassName, inputClassName, buttonClassName, noResultsClassName, recentSearchClassName, seeMoreLabel = "See more", noRecentSearchLabel = "No recent search", recentlySearchedLabel = "Recently searched", noResultsLabel = "No result found", onSubmit, }) {
15
15
  const [recentQueries, setRecentQueries] = useLocalStorage(`spotlight-recent-queries-${recentSearchesId}`, []);
16
16
  const handleClose = useCallback((item) => {
17
17
  setRecentQueries(take(uniqBy([item, ...(recentQueries || [])], getItemId), 5));
@@ -32,7 +32,12 @@ export default function Spotlight({ recentSearchesId, open, setOpen, setQuery, q
32
32
  </VisuallyHidden.Root>
33
33
  <div className={clsx("flex w-full flex-col justify-center rounded-sm border border-zinc-200 bg-zinc-100 dark:border-zinc-800 dark:bg-zinc-900", className)}>
34
34
  <div className="px-4 py-4">
35
- <Input className={clsx("w-full", contentClassName)} inputClassName={clsx("border-none rounded-none shadow-none rounded-b-none dark:bg-zinc-900 dark:focus:ring-0 focus:ring-0 bg-transparent", inputClassName)} autoFocus={true} leading={<MagnifyingGlassIcon className={clsx("h-5 w-5 text-black dark:text-white", iconClassName)}/>} value={query} onChange={(e) => setQuery(e.target.value)}/>
35
+ <Input className={clsx("w-full", contentClassName)} inputClassName={clsx("border-none rounded-none shadow-none rounded-b-none dark:bg-zinc-900 dark:focus:ring-0 focus:ring-0 bg-transparent", inputClassName)} autoFocus={true} leading={<MagnifyingGlassIcon className={clsx("h-5 w-5 text-black dark:text-white", iconClassName)}/>} value={query} onChange={(e) => setQuery(e.target.value)} onKeyDown={(e) => {
36
+ if (e.key === "Enter") {
37
+ e.preventDefault();
38
+ onSubmit?.();
39
+ }
40
+ }}/>
36
41
  </div>
37
42
  <div className="w-full border-t border-zinc-200 p-4 dark:border-zinc-800">
38
43
  <div className="flex flex-col gap-2">
@@ -54,8 +59,8 @@ export default function Spotlight({ recentSearchesId, open, setOpen, setQuery, q
54
59
  </div>
55
60
  </UnstyledButton>
56
61
  </Fragment>))}
57
- {showSeeMoreButton && (<Button variant="filled" type="submit" className={clsx("mt-2 w-full dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700", buttonClassName)} trailing={<ChevronRightIcon />} onClick={onSeeMoreClick} href={seeMoreHref}>
58
- {buttonLabel}
62
+ {(onSeeMoreClick || seeMoreHref) && (<Button variant="filled" type="submit" className={clsx("mt-2 w-full dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700", buttonClassName)} trailing={<ChevronRightIcon />} onClick={onSeeMoreClick} href={seeMoreHref}>
63
+ {seeMoreLabel}
59
64
  </Button>)}
60
65
  </>)}
61
66
  </>) : (<>
package/package.json CHANGED
@@ -4,6 +4,6 @@
4
4
  "type": "git",
5
5
  "url": "https://github.com/majapisoftwares/ui.git"
6
6
  },
7
- "version": "4.1.10",
7
+ "version": "4.1.11",
8
8
  "type": "module"
9
9
  }