@chayns-components/core 5.0.0-beta.184 → 5.0.0-beta.185
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.
|
@@ -31,7 +31,7 @@ const MentionFinder = _ref => {
|
|
|
31
31
|
info,
|
|
32
32
|
name
|
|
33
33
|
} = _ref2;
|
|
34
|
-
return id.toLowerCase().includes(searchString) || info.toLowerCase().includes(searchString) || name.toLowerCase().includes(searchString);
|
|
34
|
+
return id.toLowerCase().includes(searchString) || info.replace('chayns', '').toLowerCase().includes(searchString) || name.toLowerCase().includes(searchString);
|
|
35
35
|
}) : members, [members, searchString]);
|
|
36
36
|
const handleKeyDown = (0, _react.useCallback)(event => {
|
|
37
37
|
let shouldPreventDefault = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MentionFinder.js","names":["_framerMotion","require","_react","_interopRequireWildcard","_MentionFinderItem","_interopRequireDefault","_MentionFinder","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","MentionFinder","_ref","inputValue","members","onSelect","popupAlignment","activeMember","setActiveMember","useState","fullMatch","searchString","useMemo","_regExpMatchArray$1$t","_regExpMatchArray$","regExpMatchArray","match","toLowerCase","filteredMembers","filter","_ref2","id","info","name","includes","handleKeyDown","useCallback","event","shouldPreventDefault","currentIndex","findIndex","_ref3","prevIndex","Math","max","member","_ref4","nextIndex","min","length","preventDefault","stopPropagation","handleMemberClick","handleMemberHover","useEffect","isActiveMemberShown","some","_ref5","items","map","createElement","isActive","onClick","onHover","shouldShowPopup","window","addEventListener","removeEventListener","StyledMentionFinder","className","AnimatePresence","initial","StyledMotionMentionFinderPopup","animate","height","opacity","exit","transition","duration","displayName","_default","exports"],"sources":["../../../src/components/mention-finder/MentionFinder.tsx"],"sourcesContent":["import { AnimatePresence } from 'framer-motion';\nimport React, { FC, useCallback, useEffect, useMemo, useState } from 'react';\nimport type { MentionFinderPopupAlignment } from './constants/alignment';\nimport MentionFinderItem from './mention-finder-item/MentionFinderItem';\nimport { StyledMentionFinder, StyledMotionMentionFinderPopup } from './MentionFinder.styles';\n\nexport type MentionMember = {\n id: string;\n info: string;\n imageUrl: string;\n name: string;\n};\n\nexport type MentionFinderProps = {\n /**\n * The text from the input field\n */\n inputValue: string;\n /**\n * Members that can be selected\n */\n members: MentionMember[];\n /**\n * Function to be executed when a member is selected\n */\n onSelect: ({ fullMatch, member }: { fullMatch: string; member: MentionMember }) => void;\n /**\n * Alignment of the popup\n */\n popupAlignment: MentionFinderPopupAlignment;\n};\n\nconst MentionFinder: FC<MentionFinderProps> = ({\n inputValue,\n members,\n onSelect,\n popupAlignment,\n}) => {\n const [activeMember, setActiveMember] = useState(members[0]);\n\n const [fullMatch, searchString] = useMemo(() => {\n // eslint-disable-next-line no-irregular-whitespace\n const regExpMatchArray = inputValue.match(/@([^\\s]*)/);\n\n return [regExpMatchArray?.[0], regExpMatchArray?.[1]?.toLowerCase() ?? ''];\n }, [inputValue]);\n\n const filteredMembers = useMemo(\n () =>\n searchString !== ''\n ? members.filter(\n ({ id, info, name }) =>\n id.toLowerCase().includes(searchString) ||\n info.toLowerCase().includes(searchString) ||\n name.toLowerCase().includes(searchString)\n )\n : members,\n [members, searchString]\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n let shouldPreventDefault = false;\n\n if (event.key === 'ArrowUp') {\n const currentIndex = filteredMembers.findIndex(({ id }) => id === activeMember?.id);\n\n const prevIndex = Math.max(currentIndex - 1, 0);\n\n const member = filteredMembers[prevIndex];\n\n setActiveMember(member);\n\n shouldPreventDefault = true;\n } else if (event.key === 'ArrowDown') {\n const currentIndex = filteredMembers.findIndex(({ id }) => id === activeMember?.id);\n\n const nextIndex = Math.min(currentIndex + 1, filteredMembers.length - 1);\n\n const member = filteredMembers[nextIndex];\n\n setActiveMember(member);\n\n shouldPreventDefault = true;\n } else if (event.key === 'Enter') {\n if (fullMatch && activeMember) {\n onSelect({ fullMatch, member: activeMember });\n\n shouldPreventDefault = true;\n }\n }\n\n if (shouldPreventDefault) {\n event.preventDefault();\n event.stopPropagation();\n }\n },\n [activeMember, filteredMembers, fullMatch, onSelect]\n );\n\n const handleMemberClick = useCallback(\n (member: MentionMember) => {\n if (fullMatch) {\n onSelect({ fullMatch, member });\n }\n },\n [fullMatch, onSelect]\n );\n\n const handleMemberHover = useCallback((member: MentionMember) => {\n setActiveMember(member);\n }, []);\n\n useEffect(() => {\n if (filteredMembers.length > 0) {\n const isActiveMemberShown = filteredMembers.some(({ id }) => id === activeMember?.id);\n\n if (!isActiveMemberShown) {\n setActiveMember(filteredMembers[0]);\n }\n }\n }, [activeMember?.id, filteredMembers]);\n\n const items = useMemo(\n () =>\n filteredMembers.map((member) => (\n <MentionFinderItem\n isActive={member.id === activeMember?.id}\n key={member.id}\n member={member}\n onClick={handleMemberClick}\n onHover={handleMemberHover}\n />\n )),\n [activeMember, filteredMembers, handleMemberClick, handleMemberHover]\n );\n\n const shouldShowPopup = useMemo(() => fullMatch && items.length > 0, [fullMatch, items.length]);\n\n useEffect(() => {\n if (shouldShowPopup) {\n window.addEventListener('keydown', handleKeyDown, true);\n }\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown, true);\n };\n }, [handleKeyDown, shouldShowPopup]);\n\n return (\n <StyledMentionFinder className=\"beta-chayns-mention-finder\">\n <AnimatePresence initial={false}>\n {shouldShowPopup && (\n <StyledMotionMentionFinderPopup\n animate={{ height: 'auto', opacity: 1 }}\n className=\"prevent-lose-focus\"\n exit={{ height: 0, opacity: 0 }}\n initial={{ height: 0, opacity: 0 }}\n popupAlignment={popupAlignment}\n transition={{ duration: 0.15 }}\n >\n {items}\n </StyledMotionMentionFinderPopup>\n )}\n </AnimatePresence>\n </StyledMentionFinder>\n );\n};\n\nMentionFinder.displayName = 'MentionFinder';\n\nexport default MentionFinder;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MentionFinder.js","names":["_framerMotion","require","_react","_interopRequireWildcard","_MentionFinderItem","_interopRequireDefault","_MentionFinder","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","MentionFinder","_ref","inputValue","members","onSelect","popupAlignment","activeMember","setActiveMember","useState","fullMatch","searchString","useMemo","_regExpMatchArray$1$t","_regExpMatchArray$","regExpMatchArray","match","toLowerCase","filteredMembers","filter","_ref2","id","info","name","includes","replace","handleKeyDown","useCallback","event","shouldPreventDefault","currentIndex","findIndex","_ref3","prevIndex","Math","max","member","_ref4","nextIndex","min","length","preventDefault","stopPropagation","handleMemberClick","handleMemberHover","useEffect","isActiveMemberShown","some","_ref5","items","map","createElement","isActive","onClick","onHover","shouldShowPopup","window","addEventListener","removeEventListener","StyledMentionFinder","className","AnimatePresence","initial","StyledMotionMentionFinderPopup","animate","height","opacity","exit","transition","duration","displayName","_default","exports"],"sources":["../../../src/components/mention-finder/MentionFinder.tsx"],"sourcesContent":["import { AnimatePresence } from 'framer-motion';\nimport React, { FC, useCallback, useEffect, useMemo, useState } from 'react';\nimport type { MentionFinderPopupAlignment } from './constants/alignment';\nimport MentionFinderItem from './mention-finder-item/MentionFinderItem';\nimport { StyledMentionFinder, StyledMotionMentionFinderPopup } from './MentionFinder.styles';\n\nexport type MentionMember = {\n id: string;\n info: string;\n imageUrl: string;\n name: string;\n};\n\nexport type MentionFinderProps = {\n /**\n * The text from the input field\n */\n inputValue: string;\n /**\n * Members that can be selected\n */\n members: MentionMember[];\n /**\n * Function to be executed when a member is selected\n */\n onSelect: ({ fullMatch, member }: { fullMatch: string; member: MentionMember }) => void;\n /**\n * Alignment of the popup\n */\n popupAlignment: MentionFinderPopupAlignment;\n};\n\nconst MentionFinder: FC<MentionFinderProps> = ({\n inputValue,\n members,\n onSelect,\n popupAlignment,\n}) => {\n const [activeMember, setActiveMember] = useState(members[0]);\n\n const [fullMatch, searchString] = useMemo(() => {\n // eslint-disable-next-line no-irregular-whitespace\n const regExpMatchArray = inputValue.match(/@([^\\s]*)/);\n\n return [regExpMatchArray?.[0], regExpMatchArray?.[1]?.toLowerCase() ?? ''];\n }, [inputValue]);\n\n const filteredMembers = useMemo(\n () =>\n searchString !== ''\n ? members.filter(\n ({ id, info, name }) =>\n id.toLowerCase().includes(searchString) ||\n info.replace('chayns', '').toLowerCase().includes(searchString) ||\n name.toLowerCase().includes(searchString)\n )\n : members,\n [members, searchString]\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n let shouldPreventDefault = false;\n\n if (event.key === 'ArrowUp') {\n const currentIndex = filteredMembers.findIndex(({ id }) => id === activeMember?.id);\n\n const prevIndex = Math.max(currentIndex - 1, 0);\n\n const member = filteredMembers[prevIndex];\n\n setActiveMember(member);\n\n shouldPreventDefault = true;\n } else if (event.key === 'ArrowDown') {\n const currentIndex = filteredMembers.findIndex(({ id }) => id === activeMember?.id);\n\n const nextIndex = Math.min(currentIndex + 1, filteredMembers.length - 1);\n\n const member = filteredMembers[nextIndex];\n\n setActiveMember(member);\n\n shouldPreventDefault = true;\n } else if (event.key === 'Enter') {\n if (fullMatch && activeMember) {\n onSelect({ fullMatch, member: activeMember });\n\n shouldPreventDefault = true;\n }\n }\n\n if (shouldPreventDefault) {\n event.preventDefault();\n event.stopPropagation();\n }\n },\n [activeMember, filteredMembers, fullMatch, onSelect]\n );\n\n const handleMemberClick = useCallback(\n (member: MentionMember) => {\n if (fullMatch) {\n onSelect({ fullMatch, member });\n }\n },\n [fullMatch, onSelect]\n );\n\n const handleMemberHover = useCallback((member: MentionMember) => {\n setActiveMember(member);\n }, []);\n\n useEffect(() => {\n if (filteredMembers.length > 0) {\n const isActiveMemberShown = filteredMembers.some(({ id }) => id === activeMember?.id);\n\n if (!isActiveMemberShown) {\n setActiveMember(filteredMembers[0]);\n }\n }\n }, [activeMember?.id, filteredMembers]);\n\n const items = useMemo(\n () =>\n filteredMembers.map((member) => (\n <MentionFinderItem\n isActive={member.id === activeMember?.id}\n key={member.id}\n member={member}\n onClick={handleMemberClick}\n onHover={handleMemberHover}\n />\n )),\n [activeMember, filteredMembers, handleMemberClick, handleMemberHover]\n );\n\n const shouldShowPopup = useMemo(() => fullMatch && items.length > 0, [fullMatch, items.length]);\n\n useEffect(() => {\n if (shouldShowPopup) {\n window.addEventListener('keydown', handleKeyDown, true);\n }\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown, true);\n };\n }, [handleKeyDown, shouldShowPopup]);\n\n return (\n <StyledMentionFinder className=\"beta-chayns-mention-finder\">\n <AnimatePresence initial={false}>\n {shouldShowPopup && (\n <StyledMotionMentionFinderPopup\n animate={{ height: 'auto', opacity: 1 }}\n className=\"prevent-lose-focus\"\n exit={{ height: 0, opacity: 0 }}\n initial={{ height: 0, opacity: 0 }}\n popupAlignment={popupAlignment}\n transition={{ duration: 0.15 }}\n >\n {items}\n </StyledMotionMentionFinderPopup>\n )}\n </AnimatePresence>\n </StyledMentionFinder>\n );\n};\n\nMentionFinder.displayName = 'MentionFinder';\n\nexport default MentionFinder;\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chayns-components/core",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.185",
|
|
4
4
|
"description": "A set of beautiful React components for developing your own applications with chayns.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"chayns",
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"publishConfig": {
|
|
64
64
|
"access": "public"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "ba998283ad0208a3c1f8a5b77188c435a80f5bcd"
|
|
67
67
|
}
|