@box/metadata-editor 2.4.16 → 2.4.17
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.
- package/dist/chunks/utils.js +1 -1
- package/dist/esm/lib/components/metadata-editor-fields/components/metadata-taxonomy-field/metadata-taxonomy-picker-field/metadata-taxonomy-picker-field.js +1 -1
- package/dist/esm/lib/components/metadata-editor-fields/metadata-editor-field-wrapper.js +1 -1
- package/dist/styles/utils.css +1 -1
- package/dist/types/lib/test-utils/confidence-score-fixtures.d.ts +7 -0
- package/package.json +13 -13
package/dist/chunks/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{isConfidenceScoreNeedingReview}from"../esm/lib/utils/confidence-score/is-confidence-score-needing-review.js";import{convertISOStringtoRFC3339String}from"../esm/lib/utils/convertDate.js";import{t as interactive_text_module_default}from"./interactive-text.module.js";import{AiLogoBadge}from"../esm/lib/components/metadata-editor-fields/components/ai-logo-badge/ai-logo-badge.js";import{LowConfidenceBadge}from"../esm/lib/components/metadata-editor-fields/components/low-confidence-badge/low-confidence-badge.js";import{createElement,memo,useRef}from"react";import{Focusable}from"@ariakit/react";import{jsx,jsxs}from"react/jsx-runtime";import clsx from"clsx";import{Tooltip,useForkRef,useIsEllipsized}from"@box/blueprint-web";import '../styles/utils.css';var metadata_editor_fields_module_default={noAttributesText:`
|
|
1
|
+
import{isConfidenceScoreNeedingReview}from"../esm/lib/utils/confidence-score/is-confidence-score-needing-review.js";import{convertISOStringtoRFC3339String}from"../esm/lib/utils/convertDate.js";import{t as interactive_text_module_default}from"./interactive-text.module.js";import{AiLogoBadge}from"../esm/lib/components/metadata-editor-fields/components/ai-logo-badge/ai-logo-badge.js";import{LowConfidenceBadge}from"../esm/lib/components/metadata-editor-fields/components/low-confidence-badge/low-confidence-badge.js";import{createElement,memo,useRef}from"react";import{Focusable}from"@ariakit/react";import{jsx,jsxs}from"react/jsx-runtime";import clsx from"clsx";import{Tooltip,useForkRef,useIsEllipsized}from"@box/blueprint-web";import '../styles/utils.css';var metadata_editor_fields_module_default={noAttributesText:`_noAttributesText_yqroc_2`,fieldWrapper:`_fieldWrapper_yqroc_6`,hasSuggestion:`_hasSuggestion_yqroc_11`,hasConfidenceReview:`_hasConfidenceReview_yqroc_16`,dateField:`_dateField_yqroc_55`,aiApproved:`_aiApproved_yqroc_60`,labelWrapper:`_labelWrapper_yqroc_131`,labelText:`_labelText_yqroc_138`,labelTruncated:`_labelTruncated_yqroc_141`};function LabelTextWithDescriptionTooltip({as,fieldDescription,fieldName,labelClassName,labelRef:refFromLabelable,...rest}){let textRef=useRef(null),mergedLabelRef=useForkRef(textRef,refFromLabelable);return jsx(Tooltip,{content:useIsEllipsized(textRef)?jsxs(`div`,{children:[jsx(`div`,{children:fieldName}),jsx(`div`,{children:fieldDescription})]}):fieldDescription,children:jsx(Focusable,{render:createElement(as,{className:clsx(labelClassName,interactive_text_module_default.interactiveTextHint),...rest,ref:mergedLabelRef},fieldName)})})}function LabelTextEllipsisAwareTooltip({as,fieldName,labelClassName,labelRef:refFromLabelable,...rest}){let textRef=useRef(null),mergedLabelRef=useForkRef(textRef,refFromLabelable),tooltipContent=useIsEllipsized(textRef)?fieldName:void 0,labelNode=createElement(as,{className:labelClassName,...rest,ref:mergedLabelRef},fieldName);return tooltipContent?jsx(Tooltip,{content:tooltipContent,children:jsx(Focusable,{render:labelNode})}):labelNode}var LabelContent=memo(function({fieldName,fieldDescription,isAiSuggestionApplied,as,confidenceScore,labelProps}){let{className,ref:refFromLabelable,...rest}=labelProps,labelClassName=clsx(className||metadata_editor_fields_module_default.labelText,metadata_editor_fields_module_default.labelTruncated),isLowConfidenceScore=!!confidenceScore&&isConfidenceScoreNeedingReview(confidenceScore),renderBadge=()=>confidenceScore&&isLowConfidenceScore?jsx(LowConfidenceBadge,{}):isAiSuggestionApplied||confidenceScore?jsx(AiLogoBadge,{confidenceScore}):null,textBlock=fieldDescription?jsx(LabelTextWithDescriptionTooltip,{as,fieldDescription,fieldName,labelClassName,labelRef:refFromLabelable,...rest}):jsx(LabelTextEllipsisAwareTooltip,{as,fieldName,labelClassName,labelRef:refFromLabelable,...rest});return jsxs(`div`,{className:metadata_editor_fields_module_default.labelWrapper,children:[textBlock,renderBadge()]})},(prev,next)=>{let pLP=prev.labelProps,nLP=next.labelProps;return prev.fieldName===next.fieldName&&prev.fieldDescription===next.fieldDescription&&prev.isAiSuggestionApplied===next.isAiSuggestionApplied&&prev.confidenceScore===next.confidenceScore&&prev.as===next.as&&pLP.className===nLP.className&&pLP.htmlFor===nLP.htmlFor&&pLP.id===nLP.id}),getFieldLabel=(fieldName,fieldDescription,isAiSuggestionApplied=!1,as=`label`,confidenceScore)=>labelProps=>jsx(LabelContent,{as,confidenceScore,fieldDescription,fieldName,isAiSuggestionApplied,labelProps}),getFieldLabelContent=(fieldName,fieldDescription,isAiSuggestionApplied=!1,confidenceScore)=>jsx(LabelContent,{as:`span`,confidenceScore,fieldDescription,fieldName,isAiSuggestionApplied,labelProps:{}}),tryParseDateSuggestion=suggestedDate=>{try{let normalizedDate=convertISOStringtoRFC3339String(suggestedDate),dateObj=new Date(normalizedDate);return isNaN(dateObj.getTime())?null:normalizedDate}catch{return null}};export{metadata_editor_fields_module_default as i,getFieldLabelContent as n,tryParseDateSuggestion as r,getFieldLabel as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import messages from"../../../../../messages.js";import{messages as messages$1}from"../../update-mode-field-wrapper/messages.js";import{n as getFieldLabelContent}from"../../../../../../../chunks/utils.js";import{getTaxonomyPickerMode,mapFormValueToTaxonomyValues,mapLevelsToTaxonomyLevels,mapTaxonomyValuesToFormValue}from"./value-mapping.js";import{forwardRef,useMemo}from"react";import{useIntl}from"react-intl";import{jsx}from"react/jsx-runtime";import{Tooltip}from"@box/blueprint-web";import{Field,getIn,useFormikContext}from"formik";import{MetadataTaxonomyPicker}from"@box/metadata-taxonomy-picker";var MetadataTaxonomyPickerField=forwardRef(({description,disableForm,isAiSuggestionApplied,confidenceScore,fieldNamePrefix,label,onValueEdited,portalElement,updateModePrefix,
|
|
1
|
+
import messages from"../../../../../messages.js";import{messages as messages$1}from"../../update-mode-field-wrapper/messages.js";import{n as getFieldLabelContent}from"../../../../../../../chunks/utils.js";import{getTaxonomyPickerMode,mapFormValueToTaxonomyValues,mapLevelsToTaxonomyLevels,mapTaxonomyValuesToFormValue}from"./value-mapping.js";import{forwardRef,useMemo}from"react";import{useIntl}from"react-intl";import{jsx}from"react/jsx-runtime";import{Tooltip}from"@box/blueprint-web";import{Field,getIn,useFormikContext}from"formik";import{MetadataTaxonomyPicker}from"@box/metadata-taxonomy-picker";var MetadataTaxonomyPickerField=forwardRef(({description,disableForm,isAiSuggestionApplied,confidenceScore,fieldNamePrefix,label,onValueEdited,portalElement,updateModePrefix,isExternallyOwned,createTaxonomyItemsService},forwardedRef)=>{let{formatMessage}=useIntl(),fieldName=`${updateModePrefix??fieldNamePrefix}.value`,{setFieldValue,values}=useFormikContext(),{metadata:{templateKey,scope}}=values,{key,optionsRules:{multiSelect,selectableLevels},levels}=getIn(values,fieldNamePrefix),multipleValuesLabel=formatMessage(messages$1.multipleValues),isDisabled=disableForm||isExternallyOwned,itemsService=useMemo(()=>createTaxonomyItemsService({scope,templateKey,fieldKey:key}),[createTaxonomyItemsService,scope,templateKey,key]),mode=getTaxonomyPickerMode(selectableLevels),pickerLevels=useMemo(()=>mapLevelsToTaxonomyLevels(levels,selectableLevels),[levels,selectableLevels]),fieldLabel=getFieldLabelContent(label,description??void 0,isAiSuggestionApplied,confidenceScore),getPlaceholder=selectedValues=>multiSelect||!selectedValues.length?formatMessage(messages.taxonomyPlaceholder):void 0,handleValueChange=newValues=>{setFieldValue(fieldName,mapTaxonomyValuesToFormValue(newValues)),onValueEdited()},fieldContent=jsx(`div`,{"data-testid":`${label}-field`,onKeyDown:e=>e.stopPropagation(),role:`presentation`,children:jsx(Field,{name:fieldName,children:({field})=>{let pickerValue=mapFormValueToTaxonomyValues(field.value,multipleValuesLabel);return jsx(MetadataTaxonomyPicker,{ref:forwardedRef,disabled:isDisabled,itemsService,label:fieldLabel,levels:pickerLevels,mode,multiSelect,onValueChange:handleValueChange,placeholder:getPlaceholder(pickerValue),portalElement,value:pickerValue})}})});return isExternallyOwned?jsx(Tooltip,{content:formatMessage(messages.taxonomyExternallyOwned),children:fieldContent}):fieldContent});export{MetadataTaxonomyPickerField};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import messages from"../../messages.js";import{t as AiSuggestionState}from"../../../../chunks/types.js";import{checkIfHasBoundingBoxes}from"../../utils/check-if-has-bounding-boxes.js";import{isConfidenceScoreNeedingReview}from"../../utils/confidence-score/is-confidence-score-needing-review.js";import{isInteractiveFormElement}from"../../utils/is-interactive-form-element.js";import{t as shared_field_styles_module_default}from"../../../../chunks/shared-field-styles.module.js";import{t as AiSuggestionField}from"../../../../chunks/ai-suggestion-field.js";import{LowConfidenceSuggestionField}from"./components/low-confidence-suggestion-field/low-confidence-suggestion-field.js";import{t as UpdateModeFieldWrapper}from"../../../../chunks/update-mode-field-wrapper.js";import{i as metadata_editor_fields_module_default}from"../../../../chunks/utils.js";import{editorFieldTypes}from"./editor-field-types.js";import{useViewReferenceTooltip}from"./hooks/use-view-reference-tooltip.js";import{forwardRef,memo,useCallback,useEffect,useMemo}from"react";import{useIntl}from"react-intl";import{jsx,jsxs}from"react/jsx-runtime";import clsx from"clsx";import{Tooltip}from"@box/blueprint-web";import{useFormikContext}from"formik";import isEqual from"lodash/isEqual";import isUndefined from"lodash/isUndefined";var MetadataEditorFieldWrapper=memo(forwardRef(({disableForm,portalElement,field,index,taxonomyOptionsFetcher,isExternallyOwned,isMultilevelTaxonomyFieldEnabled,isTaxonomyPickerEnabled,createTaxonomyItemsService,isConfidenceScoreReviewEnabled=!1,isBoundingBoxEnabled=!1,isUserFieldEnabled=!1,onSelectMetadataField,selectedMetadataFieldId},forwardedRef)=>{let{setFieldValue}=useFormikContext(),{formatMessage}=useIntl(),aiSuggestionState=field.aiSuggestionState||AiSuggestionState.Initial,isSuggestionPending=aiSuggestionState===AiSuggestionState.Pending,isSuggestionApplied=aiSuggestionState===AiSuggestionState.Applied,isInitial=aiSuggestionState===AiSuggestionState.Initial,MetadataEditorField=editorFieldTypes[field.type],{aiSuggestion,aiSuggestionConfidenceScore,aiSuggestionTargetLocation,type,value}=field,isUserFieldHiddenByFlag=field.type===`user`&&!isUserFieldEnabled,showField=MetadataEditorField&&!field.hidden&&!isUserFieldHiddenByFlag,withUpdateModeWrapper=!isUndefined(field.updateMode),fieldNamePrefix=`metadata.fields[${index}]`,isTaxonomyMultiSelect=field.type===`taxonomy`&&field.optionsRules?.multiSelect,isBoundingBoxOrConfidenceScoreReviewEnabled=isBoundingBoxEnabled||isConfidenceScoreReviewEnabled,hasConfidenceScore=isConfidenceScoreReviewEnabled&&!!field.confidenceScore,isConfidenceScoreReviewNeeded=hasConfidenceScore&&isConfidenceScoreNeedingReview(field.confidenceScore),hasApprovedConfidence=hasConfidenceScore&&!isSuggestionPending&&!isConfidenceScoreNeedingReview(field.confidenceScore),isSelected=selectedMetadataFieldId===field.id,hasBoundingBoxes=checkIfHasBoundingBoxes(field.targetLocation),isClickable=isBoundingBoxOrConfidenceScoreReviewEnabled&&hasBoundingBoxes&&!!onSelectMetadataField,{isTooltipOpen,handleMouseOver,handleMouseLeave,handleFocus,handleBlur}=useViewReferenceTooltip(isClickable),
|
|
1
|
+
import messages from"../../messages.js";import{t as AiSuggestionState}from"../../../../chunks/types.js";import{checkIfHasBoundingBoxes}from"../../utils/check-if-has-bounding-boxes.js";import{isConfidenceScoreNeedingReview}from"../../utils/confidence-score/is-confidence-score-needing-review.js";import{isInteractiveFormElement}from"../../utils/is-interactive-form-element.js";import{t as shared_field_styles_module_default}from"../../../../chunks/shared-field-styles.module.js";import{t as AiSuggestionField}from"../../../../chunks/ai-suggestion-field.js";import{LowConfidenceSuggestionField}from"./components/low-confidence-suggestion-field/low-confidence-suggestion-field.js";import{t as UpdateModeFieldWrapper}from"../../../../chunks/update-mode-field-wrapper.js";import{i as metadata_editor_fields_module_default}from"../../../../chunks/utils.js";import{editorFieldTypes}from"./editor-field-types.js";import{useViewReferenceTooltip}from"./hooks/use-view-reference-tooltip.js";import{forwardRef,memo,useCallback,useEffect,useMemo}from"react";import{useIntl}from"react-intl";import{jsx,jsxs}from"react/jsx-runtime";import clsx from"clsx";import{Tooltip}from"@box/blueprint-web";import{useFormikContext}from"formik";import isEqual from"lodash/isEqual";import isUndefined from"lodash/isUndefined";var MetadataEditorFieldWrapper=memo(forwardRef(({disableForm,portalElement,field,index,taxonomyOptionsFetcher,isExternallyOwned,isMultilevelTaxonomyFieldEnabled,isTaxonomyPickerEnabled,createTaxonomyItemsService,isConfidenceScoreReviewEnabled=!1,isBoundingBoxEnabled=!1,isUserFieldEnabled=!1,onSelectMetadataField,selectedMetadataFieldId},forwardedRef)=>{let{setFieldValue}=useFormikContext(),{formatMessage}=useIntl(),aiSuggestionState=field.aiSuggestionState||AiSuggestionState.Initial,isSuggestionPending=aiSuggestionState===AiSuggestionState.Pending,isSuggestionApplied=aiSuggestionState===AiSuggestionState.Applied,isInitial=aiSuggestionState===AiSuggestionState.Initial,MetadataEditorField=editorFieldTypes[field.type],{aiSuggestion,aiSuggestionConfidenceScore,aiSuggestionTargetLocation,type,value}=field,isUserFieldHiddenByFlag=field.type===`user`&&!isUserFieldEnabled,showField=MetadataEditorField&&!field.hidden&&!isUserFieldHiddenByFlag,withUpdateModeWrapper=!isUndefined(field.updateMode),fieldNamePrefix=`metadata.fields[${index}]`,isTaxonomyMultiSelect=field.type===`taxonomy`&&field.optionsRules?.multiSelect,isBoundingBoxOrConfidenceScoreReviewEnabled=isBoundingBoxEnabled||isConfidenceScoreReviewEnabled,hasConfidenceScore=isConfidenceScoreReviewEnabled&&!!field.confidenceScore,isConfidenceScoreReviewNeeded=hasConfidenceScore&&isConfidenceScoreNeedingReview(field.confidenceScore),hasApprovedConfidence=hasConfidenceScore&&!isSuggestionPending&&!isConfidenceScoreNeedingReview(field.confidenceScore),isSelected=selectedMetadataFieldId===field.id,hasBoundingBoxes=checkIfHasBoundingBoxes(field.targetLocation),isClickable=isBoundingBoxOrConfidenceScoreReviewEnabled&&hasBoundingBoxes&&!!onSelectMetadataField,{isTooltipOpen,handleMouseOver,handleMouseLeave,handleFocus,handleBlur}=useViewReferenceTooltip(isClickable),isTaxonomyField=type===`taxonomy`,aiStateClassName=clsx({[metadata_editor_fields_module_default.aiApproved]:isSuggestionApplied||hasApprovedConfidence||field.isExtracted,[metadata_editor_fields_module_default.hasSuggestion]:isSuggestionPending,[metadata_editor_fields_module_default.hasConfidenceReview]:!isSuggestionPending&&isConfidenceScoreReviewNeeded}),wrapperAiClassName=isTaxonomyField?aiStateClassName:void 0,fieldClassName=clsx(!isTaxonomyField&&aiStateClassName,{[metadata_editor_fields_module_default.dateField]:type===`date`}),setField=useCallback((name,fieldValue)=>{setFieldValue(`${fieldNamePrefix}.${name}`,fieldValue)},[fieldNamePrefix,setFieldValue]),setAiSuggestionState=useCallback(state=>{setField(`aiSuggestionState`,state)},[setField]),handleApplyAiSuggestion=useCallback((newValue,acceptConfidence=!1)=>{setField(`value`,newValue),setAiSuggestionState(AiSuggestionState.Applied),setField(`isExtracted`,!0),isBoundingBoxOrConfidenceScoreReviewEnabled&&aiSuggestionTargetLocation&&(setField(`targetLocation`,aiSuggestionTargetLocation),setField(`aiSuggestionTargetLocation`,void 0)),isConfidenceScoreReviewEnabled&&aiSuggestionConfidenceScore&&(setField(`confidenceScore`,acceptConfidence?{...aiSuggestionConfidenceScore,isAccepted:!0}:aiSuggestionConfidenceScore),setField(`aiSuggestionConfidenceScore`,void 0))},[setField,setAiSuggestionState,aiSuggestionConfidenceScore,aiSuggestionTargetLocation,isConfidenceScoreReviewEnabled,isBoundingBoxOrConfidenceScoreReviewEnabled]),clearAiSuggestion=useCallback(()=>{setAiSuggestionState(AiSuggestionState.Initial),setField(`aiSuggestion`,void 0),isBoundingBoxOrConfidenceScoreReviewEnabled&&setField(`aiSuggestionTargetLocation`,void 0),isConfidenceScoreReviewEnabled&&setField(`aiSuggestionConfidenceScore`,void 0)},[setAiSuggestionState,setField,isConfidenceScoreReviewEnabled,isBoundingBoxOrConfidenceScoreReviewEnabled]),handleAcceptConfidenceScore=useCallback(()=>{field.confidenceScore&&setField(`confidenceScore`,{...field.confidenceScore,isAccepted:!0}),onSelectMetadataField?.(null)},[setField,field.confidenceScore,onSelectMetadataField]),handleClearLowConfidenceValue=useCallback(()=>{setAiSuggestionState(AiSuggestionState.Initial),setField(`aiSuggestion`,void 0),setField(`isExtracted`,!1),setField(`value`,type===`multiSelect`||type===`taxonomy`||type===`user`?[]:``),setField(`confidenceScore`,void 0),setField(`targetLocation`,void 0),onSelectMetadataField?.(null)},[setField,type,onSelectMetadataField,setAiSuggestionState]),handleValueEdited=useCallback(()=>{clearAiSuggestion(),field.isExtracted&&setField(`isExtracted`,!1),isBoundingBoxOrConfidenceScoreReviewEnabled&&field.targetLocation&&(setField(`targetLocation`,void 0),onSelectMetadataField?.(null)),isConfidenceScoreReviewEnabled&&field.confidenceScore&&(setField(`confidenceScore`,void 0),onSelectMetadataField?.(null))},[clearAiSuggestion,isConfidenceScoreReviewEnabled,field.confidenceScore,field.isExtracted,field.targetLocation,setField,onSelectMetadataField,isBoundingBoxOrConfidenceScoreReviewEnabled]),handleFieldClick=useCallback(event=>{onSelectMetadataField&&(isInteractiveFormElement(event.target)||onSelectMetadataField(field))},[field,onSelectMetadataField]),handleFieldKeyDown=useCallback(event=>{if(event.key===`Enter`){if(!onSelectMetadataField||isInteractiveFormElement(event.target))return;event.preventDefault(),event.stopPropagation(),onSelectMetadataField(field)}},[field,onSelectMetadataField]);useEffect(()=>{isSuggestionPending&&(!value||Array.isArray(value)&&value.length===0)&&handleApplyAiSuggestion(aiSuggestion)},[aiSuggestion,isSuggestionPending,handleApplyAiSuggestion]),useEffect(()=>{isInitial&&aiSuggestion&&setAiSuggestionState(AiSuggestionState.Pending)},[isInitial,aiSuggestion,setAiSuggestionState]);let isSameValue=useMemo(()=>aiSuggestion?isEqual(value,aiSuggestion):!1,[aiSuggestion,value]);if(!showField)return null;let clickableFieldProps={"data-metadata-field":!0,"data-target-id":`Button-metadataEditorFieldEditClick`,"data-testid":`metadata-field`,onClick:handleFieldClick,onKeyDown:handleFieldKeyDown,onMouseOver:handleMouseOver,onMouseLeave:handleMouseLeave,onFocus:handleFocus,onBlur:handleBlur,role:`button`,tabIndex:0};if(withUpdateModeWrapper){let updateModeContent=jsx(UpdateModeFieldWrapper,{fieldNamePrefix,fieldType:field.type,isTaxonomyMultiSelect,children:jsx(MetadataEditorField,{ref:forwardedRef,description:field.description,disableForm,fieldNamePrefix,isAiSuggestionApplied:!1,isExternallyOwned,isMultilevelTaxonomyFieldEnabled,isTaxonomyPickerEnabled,createTaxonomyItemsService,label:field.displayName,levels:field.levels,onValueEdited:handleValueEdited,portalElement,taxonomyOptionsFetcher})},field.key);return isClickable?jsx(Tooltip,{content:formatMessage(messages.viewOnDocument),open:isTooltipOpen,children:jsx(`div`,{className:clsx(shared_field_styles_module_default.spacious,shared_field_styles_module_default.clickableField,isSelected&&shared_field_styles_module_default.selectedField),...clickableFieldProps,children:updateModeContent})}):updateModeContent}let fieldContent=jsxs(`div`,{className:clsx(metadata_editor_fields_module_default.fieldWrapper,wrapperAiClassName,isBoundingBoxOrConfidenceScoreReviewEnabled&&shared_field_styles_module_default.spacious,isClickable&&shared_field_styles_module_default.clickableField,isClickable&&isSelected&&shared_field_styles_module_default.selectedField),...isClickable&&clickableFieldProps,children:[jsx(MetadataEditorField,{ref:forwardedRef,className:fieldClassName,description:field.description,disableForm,fieldNamePrefix,isAiSuggestionApplied:isSuggestionApplied||field.isExtracted,isExternallyOwned,confidenceScore:isConfidenceScoreReviewEnabled?field.confidenceScore:void 0,isMultilevelTaxonomyFieldEnabled,isTaxonomyPickerEnabled,createTaxonomyItemsService,label:field.displayName,onValueEdited:handleValueEdited,portalElement,taxonomyOptionsFetcher}),isSuggestionPending&&jsx(AiSuggestionField,{aiSuggestion,confidenceLevel:isConfidenceScoreReviewEnabled?aiSuggestionConfidenceScore?.level:void 0,isSameValue,onAiSuggestionAppend:()=>{handleApplyAiSuggestion([...new Set([value,aiSuggestion].flat().filter(Boolean))],!0)},onAiSuggestionIgnore:clearAiSuggestion,onAiSuggestionReplace:()=>handleApplyAiSuggestion(aiSuggestion,!0),type}),!isSuggestionPending&&isConfidenceScoreReviewNeeded&&jsx(LowConfidenceSuggestionField,{onAccept:handleAcceptConfidenceScore,onClear:handleClearLowConfidenceValue})]},field.key);return jsx(Tooltip,{content:formatMessage(messages.viewOnDocument),open:isClickable&&isTooltipOpen,children:fieldContent})}));export{MetadataEditorFieldWrapper};
|
package/dist/styles/utils.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.
|
|
1
|
+
._noAttributesText_yqroc_2{text-align:center}._fieldWrapper_yqroc_6{isolation:isolate;position:relative}._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>input,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>button,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>div[role=group]>div,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>div>div,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>div>input,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>input,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>button,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div[role=group]>div,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>div,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>input{border-bottom:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>input:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>button:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>div[role=group]>div:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>div>div:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11>div>input:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>input:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>button:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div[role=group]>div:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>div:not(:disabled,:focus-visible):hover,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>input:not(:disabled,:focus-visible):hover{border-bottom:none}:is(._fieldWrapper_yqroc_6._hasSuggestion_yqroc_11 :has(>input[role=combobox]),._fieldWrapper_yqroc_6._hasConfidenceReview_yqroc_16 :has(>input[role=combobox])){border-bottom:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}:is(._fieldWrapper_yqroc_6._hasSuggestion_yqroc_11 :has(>input[role=combobox]):not([data-disabled=true]):hover,._fieldWrapper_yqroc_6._hasConfidenceReview_yqroc_16 :has(>input[role=combobox]):not([data-disabled=true]):hover){border-bottom:none}._fieldWrapper_yqroc_6 ._hasSuggestion_yqroc_11 div[role=group]>div,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16 div[role=group]>div{margin-right:var(--bp-border-01);margin-left:var(--bp-border-01)}._fieldWrapper_yqroc_6 ._dateField_yqroc_55>div[role=group]>div{padding-inline:var(--bp-space-030);background:var(--bp-surface-input-surface)}._fieldWrapper_yqroc_6 ._aiApproved_yqroc_60>input,._fieldWrapper_yqroc_6 ._aiApproved_yqroc_60>button,._fieldWrapper_yqroc_6 ._aiApproved_yqroc_60>div[role=group]>div,._fieldWrapper_yqroc_6 ._aiApproved_yqroc_60>div>div,._fieldWrapper_yqroc_6 ._aiApproved_yqroc_60>div>input{outline:none;box-sizing:border-box!important;background-image:linear-gradient(white, white), var(--border-card-border-ai)!important;border:double var(--bp-border-01) transparent!important;background-origin:border-box!important;background-clip:padding-box,border-box!important}._fieldWrapper_yqroc_6._aiApproved_yqroc_60 :has(>input[role=combobox]){outline:none;box-sizing:border-box!important;background-image:linear-gradient(white, white), var(--border-card-border-ai)!important;border:double var(--bp-border-01) transparent!important;background-origin:border-box!important;background-clip:padding-box,border-box!important}._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>input,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>button,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div[role=group]>div,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>div,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>input{outline:none;box-sizing:border-box!important;background-image:linear-gradient(white, white), var(--border-card-border-ai)!important;border:double var(--bp-border-01) transparent!important;padding-top:var(--bp-border-01)!important;background-origin:border-box!important;background-clip:padding-box,border-box!important;border-bottom:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}._fieldWrapper_yqroc_6._hasConfidenceReview_yqroc_16 :has(>input[role=combobox]){outline:none;box-sizing:border-box!important;background-image:linear-gradient(white, white), var(--border-card-border-ai)!important;border:double var(--bp-border-01) transparent!important;background-origin:border-box!important;background-clip:padding-box,border-box!important;border-bottom:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>input:focus-visible,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>button:focus-visible,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div[role=group]>div:focus-within,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>div:focus-within,._fieldWrapper_yqroc_6 ._hasConfidenceReview_yqroc_16>div>input:focus-visible{outline:0;border-style:solid!important;border-width:.125rem!important;border-color:var(--bp-outline-focus-on-light)!important;background:#fff!important;border-bottom:none!important;padding-top:0!important}._fieldWrapper_yqroc_6._hasConfidenceReview_yqroc_16 :has(>input[role=combobox]:focus){outline:0;background-image:none!important;background-color:var(--surface-dropdown-surface-focus,white)!important;border-top:.125rem solid var(--outline-focus-on-light,var(--bp-outline-focus-on-light))!important;border-right:.125rem solid var(--outline-focus-on-light,var(--bp-outline-focus-on-light))!important;border-left:.125rem solid var(--outline-focus-on-light,var(--bp-outline-focus-on-light))!important;background-origin:padding-box!important;background-clip:border-box!important;border-bottom:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}._labelWrapper_yqroc_131{justify-content:space-between;align-items:baseline;gap:var(--bp-space-005);width:100%;display:flex}._labelWrapper_yqroc_131 ._labelText_yqroc_138{flex:unset!important}._labelWrapper_yqroc_131 ._labelTruncated_yqroc_141{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden;flex:0 auto!important}
|
|
@@ -39,3 +39,10 @@ export declare const templateInstanceSameValueAiSuggestionWithConfidence: Metada
|
|
|
39
39
|
export declare const templateInstanceAutoApplyWithLowConfidence: MetadataTemplateInstance;
|
|
40
40
|
/** Pending AI suggestion with high confidence — suggestion bar shown with "(High confidence)" */
|
|
41
41
|
export declare const templateInstanceAiSuggestionWithHighConfidence: MetadataTemplateInstance;
|
|
42
|
+
/** Taxonomy picker field with unaccepted low confidence — Needs review bar + LOW badge */
|
|
43
|
+
export declare const templateInstanceTaxonomyLowConfidence: MetadataTemplateInstance;
|
|
44
|
+
/**
|
|
45
|
+
* Taxonomy picker with pending AI suggestion + low confidence —
|
|
46
|
+
* suggestion bar takes priority over the Needs review bar.
|
|
47
|
+
*/
|
|
48
|
+
export declare const templateInstanceTaxonomyAiSuggestionWithLowConfidence: MetadataTemplateInstance;
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@box/metadata-editor",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.17",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@ariakit/react": "0.4.21",
|
|
6
|
-
"@box/blueprint-web": "^16.20.
|
|
7
|
-
"@box/blueprint-web-assets": "^5.7.
|
|
8
|
-
"@box/box-ai-agent-selector": "^2.2.
|
|
9
|
-
"@box/combobox-with-api": "^2.2.
|
|
10
|
-
"@box/metadata-taxonomy-picker": "^3.
|
|
11
|
-
"@box/metadata-template-browser": "^2.2.
|
|
6
|
+
"@box/blueprint-web": "^16.20.1",
|
|
7
|
+
"@box/blueprint-web-assets": "^5.7.8",
|
|
8
|
+
"@box/box-ai-agent-selector": "^2.2.17",
|
|
9
|
+
"@box/combobox-with-api": "^2.2.17",
|
|
10
|
+
"@box/metadata-taxonomy-picker": "^3.3.0",
|
|
11
|
+
"@box/metadata-template-browser": "^2.2.17",
|
|
12
12
|
"formik": "^2.0.3",
|
|
13
13
|
"lodash": "^4.17.15",
|
|
14
14
|
"react": "^17.0.0 || ^18.0.0",
|
|
@@ -17,12 +17,12 @@
|
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@ariakit/react": "0.4.21",
|
|
20
|
-
"@box/babel-plugin-target-attributes": "2.2.
|
|
21
|
-
"@box/blueprint-web": "^16.20.
|
|
22
|
-
"@box/blueprint-web-assets": "^5.7.
|
|
23
|
-
"@box/box-ai-agent-selector": "^2.2.
|
|
24
|
-
"@box/metadata-taxonomy-picker": "^3.
|
|
25
|
-
"@box/storybook-utils": "^1.2.
|
|
20
|
+
"@box/babel-plugin-target-attributes": "2.2.4",
|
|
21
|
+
"@box/blueprint-web": "^16.20.1",
|
|
22
|
+
"@box/blueprint-web-assets": "^5.7.8",
|
|
23
|
+
"@box/box-ai-agent-selector": "^2.2.17",
|
|
24
|
+
"@box/metadata-taxonomy-picker": "^3.3.0",
|
|
25
|
+
"@box/storybook-utils": "^1.2.17",
|
|
26
26
|
"@testing-library/react": "^15.0.6",
|
|
27
27
|
"react": "^18.3.0",
|
|
28
28
|
"react-dom": "^18.3.0",
|