16115: Adds warning notice for private visibility with active sharing urls.
[arvados-workbench2.git] / src / views-components / resource-properties-form / property-field-common.tsx
index 65d0c7c87f18752df97ba6862dc7cef215b90a82..c4dc494b3967558179ba662df5272164d8593013 100644 (file)
@@ -4,15 +4,20 @@
 
 import { connect } from 'react-redux';
 import { change, WrappedFieldMetaProps, WrappedFieldInputProps, WrappedFieldProps } from 'redux-form';
-import { Vocabulary, PropFieldSuggestion } from '~/models/vocabulary';
-import { RootState } from '~/store/store';
-import { getVocabulary } from '~/store/vocabulary/vocabulary-selectors';
+import { Vocabulary, PropFieldSuggestion } from 'models/vocabulary';
+import { RootState } from 'store/store';
+import { getVocabulary } from 'store/vocabulary/vocabulary-selectors';
 
 export interface VocabularyProp {
     vocabulary: Vocabulary;
 }
 
-export const mapStateToProps = (state: RootState): VocabularyProp => ({
+export interface ValidationProp {
+    skipValidation?: boolean;
+}
+
+export const mapStateToProps = (state: RootState, ownProps: ValidationProp): VocabularyProp & ValidationProp => ({
+    skipValidation: ownProps.skipValidation,
     vocabulary: getVocabulary(state.properties),
 });
 
@@ -31,9 +36,8 @@ export const getErrorMsg = (meta: WrappedFieldMetaProps) =>
 export const buildProps = ({ input, meta }: WrappedFieldProps) => {
     return {
         value: input.value,
-        onChange: input.onChange,
         items: ITEMS_PLACEHOLDER,
-        renderSuggestion: (item:PropFieldSuggestion) => item.label,
+        renderSuggestion: (item: PropFieldSuggestion) => item.label,
         error: hasError(meta),
         helperText: getErrorMsg(meta),
     };
@@ -47,20 +51,20 @@ export const handleBlur = (
     { dispatch }: WrappedFieldMetaProps,
     { onBlur, value }: WrappedFieldInputProps,
     fieldValue: string) =>
-        () => {
-            dispatch(change(formName, fieldName, fieldValue));
-            onBlur(value);
-        };
+    () => {
+        dispatch(change(formName, fieldName, fieldValue));
+        onBlur(value);
+    };
 
 // When selecting a property value, save its ID for later usage.
 export const handleSelect = (
     fieldName: string,
     formName: string,
     { onChange }: WrappedFieldInputProps,
-    { dispatch }: WrappedFieldMetaProps ) =>
-        (item:PropFieldSuggestion) => {
-            if (item) {
-                onChange(item.label);
-                dispatch(change(formName, fieldName, item.id));
-            }
-        };
+    { dispatch }: WrappedFieldMetaProps) =>
+    (item: PropFieldSuggestion) => {
+        if (item) {
+            onChange(item.label);
+            dispatch(change(formName, fieldName, item.id));
+        }
+    };