react-native-controlled-mentions
Advanced tools
@@ -12,3 +12,3 @@ import { UseMentionsConfig } from '../types'; | ||
*/ | ||
declare const useMentions: <TriggerName extends string>({ value, onChange, triggersConfig, patternsConfig, }: UseMentionsConfig<TriggerName>) => { | ||
declare const useMentions: <TriggerName extends string>({ value, onChange, triggersConfig, patternsConfig, onSelectionChange, }: UseMentionsConfig<TriggerName>) => { | ||
triggers: import("../types/types").Triggers<TriggerName>; | ||
@@ -20,3 +20,4 @@ textInputProps: { | ||
}; | ||
mentionState: import("../types/types").MentionState; | ||
}; | ||
export { useMentions }; |
@@ -38,3 +38,3 @@ "use strict"; | ||
*/ | ||
const useMentions = ({ value, onChange, triggersConfig = _mention_utils_1.emptyObject, patternsConfig = _mention_utils_1.emptyObject, }) => { | ||
const useMentions = ({ value, onChange, triggersConfig = _mention_utils_1.emptyObject, patternsConfig = _mention_utils_1.emptyObject, onSelectionChange, }) => { | ||
const [selection, setSelection] = (0, react_1.useState)({ | ||
@@ -54,3 +54,3 @@ start: 0, | ||
const handleTextChange = (text) => { | ||
onChange((0, _mention_utils_1.generateValueFromPartsAndChangedText)(mentionState, text)); | ||
onChange((0, _mention_utils_1.generateValueFromMentionStateAndChangedText)(mentionState, text)); | ||
}; | ||
@@ -63,3 +63,5 @@ /** | ||
const handleSelectionChange = (event) => { | ||
setSelection(event.nativeEvent.selection); | ||
const newSelection = event.nativeEvent.selection; | ||
setSelection(newSelection); | ||
onSelectionChange && onSelectionChange(newSelection); | ||
}; | ||
@@ -89,2 +91,3 @@ /** | ||
textInputProps, | ||
mentionState, | ||
}; | ||
@@ -91,0 +94,0 @@ }; |
export * from './components'; | ||
export * from './hooks'; | ||
export type { Suggestion, Part, SuggestionsProvidedProps, PartType, TriggersConfig, PatternsConfig, Triggers, } from './types'; | ||
export { isTriggerPartType, getMentionValue, parseValue, replaceMentionValues } from './utils'; | ||
export { isTriggerPartType, generateValueFromMentionStateAndChangedText, getMentionValue, parseValue, replaceMentionValues, } from './utils'; | ||
export { mentionRegEx } from './utils'; |
@@ -17,3 +17,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.mentionRegEx = exports.replaceMentionValues = exports.parseValue = exports.getMentionValue = exports.isTriggerPartType = void 0; | ||
exports.mentionRegEx = exports.replaceMentionValues = exports.parseValue = exports.getMentionValue = exports.generateValueFromMentionStateAndChangedText = exports.isTriggerPartType = void 0; | ||
__exportStar(require("./components"), exports); | ||
@@ -23,2 +23,3 @@ __exportStar(require("./hooks"), exports); | ||
Object.defineProperty(exports, "isTriggerPartType", { enumerable: true, get: function () { return utils_1.isTriggerPartType; } }); | ||
Object.defineProperty(exports, "generateValueFromMentionStateAndChangedText", { enumerable: true, get: function () { return utils_1.generateValueFromMentionStateAndChangedText; } }); | ||
Object.defineProperty(exports, "getMentionValue", { enumerable: true, get: function () { return utils_1.getMentionValue; } }); | ||
@@ -25,0 +26,0 @@ Object.defineProperty(exports, "parseValue", { enumerable: true, get: function () { return utils_1.parseValue; } }); |
@@ -72,3 +72,4 @@ import type { Change } from 'diff'; | ||
patternsConfig?: PatternsConfig; | ||
onSelectionChange?: (selection: Position) => void; | ||
}; | ||
export type { Suggestion, TriggerData, CharactersDiffChange, RegexMatchResult, Position, Part, SuggestionsProvidedProps, TriggerPartType, PatternPartType, TriggersConfig, PatternsConfig, PartType, MentionState, Triggers, UseMentionsConfig, }; |
@@ -62,6 +62,6 @@ import { MentionState, Part, PartType, PatternsConfig, Position, Suggestion, TriggerData, TriggerPartType, Triggers, TriggersConfig } from '../types'; | ||
* | ||
* @param mentionValue | ||
* @param mentionState | ||
* @param changedText changed plain text | ||
*/ | ||
declare const generateValueFromPartsAndChangedText: (mentionValue: MentionState, changedText: string) => string; | ||
declare const generateValueFromMentionStateAndChangedText: (mentionState: MentionState, changedText: string) => string; | ||
/** | ||
@@ -126,2 +126,2 @@ * Method for adding suggestion to the parts and generating value. We should: | ||
declare const replaceMentionValues: (value: string, replacer: (mention: TriggerData) => string) => string; | ||
export { isTriggerPartType, getTextLength, getTypedKeys, getConfigsArray, getPartsInterval, getKeyword, getTriggerPartSuggestionKeywords, generateValueFromPartsAndChangedText, generateValueWithAddedSuggestion, generatePlainTextPart, generateTriggerPart, getMentionValue, parseValue, getValueFromParts, replaceMentionValues, }; | ||
export { isTriggerPartType, getTextLength, getTypedKeys, getConfigsArray, getPartsInterval, getKeyword, getTriggerPartSuggestionKeywords, generateValueFromMentionStateAndChangedText, generateValueWithAddedSuggestion, generatePlainTextPart, generateTriggerPart, getMentionValue, parseValue, getValueFromParts, replaceMentionValues, }; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.replaceMentionValues = exports.getValueFromParts = exports.parseValue = exports.getMentionValue = exports.generateTriggerPart = exports.generatePlainTextPart = exports.generateValueWithAddedSuggestion = exports.generateValueFromPartsAndChangedText = exports.getTriggerPartSuggestionKeywords = exports.getKeyword = exports.getPartsInterval = exports.getConfigsArray = exports.getTypedKeys = exports.getTextLength = exports.isTriggerPartType = void 0; | ||
exports.replaceMentionValues = exports.getValueFromParts = exports.parseValue = exports.getMentionValue = exports.generateTriggerPart = exports.generatePlainTextPart = exports.generateValueWithAddedSuggestion = exports.generateValueFromMentionStateAndChangedText = exports.getTriggerPartSuggestionKeywords = exports.getKeyword = exports.getPartsInterval = exports.getConfigsArray = exports.getTypedKeys = exports.getTextLength = exports.isTriggerPartType = void 0; | ||
const diff_1 = require("diff"); | ||
@@ -214,7 +214,7 @@ const constraints_1 = require("./constraints"); | ||
* | ||
* @param mentionValue | ||
* @param mentionState | ||
* @param changedText changed plain text | ||
*/ | ||
const generateValueFromPartsAndChangedText = (mentionValue, changedText) => { | ||
const { parts, plainText } = mentionValue; | ||
const generateValueFromMentionStateAndChangedText = (mentionState, changedText) => { | ||
const { parts, plainText } = mentionState; | ||
const changes = (0, diff_1.diffChars)(plainText, changedText); | ||
@@ -257,3 +257,3 @@ let newParts = []; | ||
}; | ||
exports.generateValueFromPartsAndChangedText = generateValueFromPartsAndChangedText; | ||
exports.generateValueFromMentionStateAndChangedText = generateValueFromMentionStateAndChangedText; | ||
/** | ||
@@ -260,0 +260,0 @@ * Method for adding suggestion to the parts and generating value. We should: |
{ | ||
"name": "react-native-controlled-mentions", | ||
"version": "3.0.0-alpha.2", | ||
"version": "3.0.0-alpha.3", | ||
"description": "Fully controlled React Native mentions component", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
1020
0.59%0
-100%78346
-5.28%39
-2.5%