|
|
|
@ -4,6 +4,9 @@ import { map } from 'rxjs/operators';
|
|
|
|
|
import { ePropType } from '../enums/props.enum';
|
|
|
|
|
import { PropCallback } from '../models/props';
|
|
|
|
|
|
|
|
|
|
const TYPEAHEAD_TEXT_SUFFIX = '_Text';
|
|
|
|
|
const TYPEAHEAD_TEXT_SUFFIX_REGEX = /_Text$/;
|
|
|
|
|
|
|
|
|
|
export function createTypeaheadOptions(
|
|
|
|
|
lookup: ExtensionPropertyUiLookupDto,
|
|
|
|
|
): PropCallback<any, Observable<ABP.Option<any>[]>> {
|
|
|
|
@ -37,7 +40,19 @@ export function createTypeaheadOptions(
|
|
|
|
|
export function getTypeaheadType(lookup: ExtensionPropertyUiLookupDto, name: string) {
|
|
|
|
|
return Boolean(lookup.url)
|
|
|
|
|
? ePropType.Typeahead
|
|
|
|
|
: name.endsWith('_Text')
|
|
|
|
|
: name.endsWith(TYPEAHEAD_TEXT_SUFFIX)
|
|
|
|
|
? ePropType.Hidden
|
|
|
|
|
: undefined;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function addTypeaheadTextSuffix(name: string) {
|
|
|
|
|
return name + TYPEAHEAD_TEXT_SUFFIX;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function hasTypeaheadTextSuffix(name: string) {
|
|
|
|
|
return TYPEAHEAD_TEXT_SUFFIX_REGEX.test(name);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function removeTypeaheadTextSuffix(name: string) {
|
|
|
|
|
return name.replace(TYPEAHEAD_TEXT_SUFFIX_REGEX, '');
|
|
|
|
|
}
|
|
|
|
|