box-ui-elements 23.4.0-beta.3 → 23.4.0-beta.4
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/explorer.css +1 -1
- package/dist/explorer.js +1 -1
- package/dist/openwith.js +1 -1
- package/dist/picker.js +1 -1
- package/dist/preview.css +1 -1
- package/dist/preview.js +1 -1
- package/dist/sharing.js +1 -1
- package/dist/sidebar.css +1 -1
- package/dist/sidebar.js +1 -1
- package/dist/uploader.js +1 -1
- package/es/features/metadata-instance-editor/CascadePolicy.js +2 -15
- package/es/features/metadata-instance-editor/CascadePolicy.js.flow +7 -23
- package/es/features/metadata-instance-editor/CascadePolicy.js.map +1 -1
- package/es/features/metadata-instance-editor/CascadePolicy.scss +0 -4
- package/es/features/metadata-instance-editor/messages.js +0 -8
- package/es/features/metadata-instance-editor/messages.js.flow +0 -11
- package/es/features/metadata-instance-editor/messages.js.map +1 -1
- package/i18n/en-US.js +0 -2
- package/i18n/en-US.properties +0 -4
- package/package.json +1 -1
- package/src/features/metadata-instance-editor/CascadePolicy.js +7 -23
- package/src/features/metadata-instance-editor/CascadePolicy.scss +0 -4
- package/src/features/metadata-instance-editor/__tests__/CascadePolicy.test.js +2 -7
- package/src/features/metadata-instance-editor/messages.js +0 -11
|
@@ -2,7 +2,6 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { FormattedMessage } from 'react-intl';
|
|
4
4
|
import { BoxAiAgentSelector } from '@box/box-ai-agent-selector';
|
|
5
|
-
import { InlineNotice, TooltipProvider } from '@box/blueprint-web';
|
|
6
5
|
// $FlowFixMe
|
|
7
6
|
import BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';
|
|
8
7
|
import Toggle from '../../components/toggle';
|
|
@@ -13,7 +12,6 @@ import messages from './messages';
|
|
|
13
12
|
import './CascadePolicy.scss';
|
|
14
13
|
const COMMUNITY_LINK = 'https://support.box.com/hc/en-us/articles/360044195873-Cascading-metadata-in-folders';
|
|
15
14
|
const AI_LINK = 'https://www.box.com/ai';
|
|
16
|
-
const PRICING_LINK = 'https://www.box.com/pricing';
|
|
17
15
|
const agents = [{
|
|
18
16
|
id: '1',
|
|
19
17
|
name: 'Basic',
|
|
@@ -99,24 +97,13 @@ const CascadePolicy = ({
|
|
|
99
97
|
target: "_blank"
|
|
100
98
|
}, /*#__PURE__*/React.createElement(FormattedMessage, messages.aiAutofillLearnMore))), canUseAIFolderExtractionAgentSelector && /*#__PURE__*/React.createElement("div", {
|
|
101
99
|
className: "metadata-cascade-ai-agent-selector"
|
|
102
|
-
}, /*#__PURE__*/React.createElement(
|
|
100
|
+
}, /*#__PURE__*/React.createElement(BoxAiAgentSelector, {
|
|
103
101
|
agents: agents,
|
|
104
102
|
onErrorAction: () => {},
|
|
105
103
|
requestState: "success",
|
|
106
104
|
selectedAgent: agents[0],
|
|
107
105
|
variant: "sidebar"
|
|
108
|
-
})))
|
|
109
|
-
className: "metadata-cascade-ai-notice",
|
|
110
|
-
variant: "info"
|
|
111
|
-
}, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.aiAutofillNotice, {
|
|
112
|
-
values: {
|
|
113
|
-
pricingLink: /*#__PURE__*/React.createElement(Link, {
|
|
114
|
-
className: "cascade-policy-link",
|
|
115
|
-
href: PRICING_LINK,
|
|
116
|
-
target: "_blank"
|
|
117
|
-
}, /*#__PURE__*/React.createElement(FormattedMessage, messages.aiAutofillPricingDetails))
|
|
118
|
-
}
|
|
119
|
-
})))))) : readOnlyState;
|
|
106
|
+
}))))) : readOnlyState;
|
|
120
107
|
};
|
|
121
108
|
export default CascadePolicy;
|
|
122
109
|
//# sourceMappingURL=CascadePolicy.js.map
|
|
@@ -3,7 +3,6 @@ import * as React from 'react';
|
|
|
3
3
|
import { FormattedMessage } from 'react-intl';
|
|
4
4
|
|
|
5
5
|
import { BoxAiAgentSelector } from '@box/box-ai-agent-selector';
|
|
6
|
-
import { InlineNotice, TooltipProvider } from '@box/blueprint-web';
|
|
7
6
|
// $FlowFixMe
|
|
8
7
|
import BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';
|
|
9
8
|
|
|
@@ -16,7 +15,6 @@ import './CascadePolicy.scss';
|
|
|
16
15
|
|
|
17
16
|
const COMMUNITY_LINK = 'https://support.box.com/hc/en-us/articles/360044195873-Cascading-metadata-in-folders';
|
|
18
17
|
const AI_LINK = 'https://www.box.com/ai';
|
|
19
|
-
const PRICING_LINK = 'https://www.box.com/pricing';
|
|
20
18
|
|
|
21
19
|
const agents = [
|
|
22
20
|
{
|
|
@@ -149,29 +147,15 @@ const CascadePolicy = ({
|
|
|
149
147
|
</div>
|
|
150
148
|
{canUseAIFolderExtractionAgentSelector && (
|
|
151
149
|
<div className="metadata-cascade-ai-agent-selector">
|
|
152
|
-
<
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
/>
|
|
160
|
-
</TooltipProvider>
|
|
150
|
+
<BoxAiAgentSelector
|
|
151
|
+
agents={agents}
|
|
152
|
+
onErrorAction={() => {}}
|
|
153
|
+
requestState="success"
|
|
154
|
+
selectedAgent={agents[0]}
|
|
155
|
+
variant="sidebar"
|
|
156
|
+
/>
|
|
161
157
|
</div>
|
|
162
158
|
)}
|
|
163
|
-
<InlineNotice className="metadata-cascade-ai-notice" variant="info">
|
|
164
|
-
<FormattedMessage
|
|
165
|
-
{...messages.aiAutofillNotice}
|
|
166
|
-
values={{
|
|
167
|
-
pricingLink: (
|
|
168
|
-
<Link className="cascade-policy-link" href={PRICING_LINK} target="_blank">
|
|
169
|
-
<FormattedMessage {...messages.aiAutofillPricingDetails} />
|
|
170
|
-
</Link>
|
|
171
|
-
),
|
|
172
|
-
}}
|
|
173
|
-
/>
|
|
174
|
-
</InlineNotice>
|
|
175
159
|
</div>
|
|
176
160
|
</div>
|
|
177
161
|
)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CascadePolicy.js","names":["React","FormattedMessage","BoxAiAgentSelector","InlineNotice","TooltipProvider","BoxAiLogo","Toggle","RadioButton","RadioGroup","Link","IconAlertDefault","messages","COMMUNITY_LINK","AI_LINK","PRICING_LINK","agents","id","name","isEnterpriseDefault","CascadePolicy","canEdit","canUseAIFolderExtraction","canUseAIFolderExtractionAgentSelector","isCascadingEnabled","isCascadingOverwritten","isCustomMetadata","isAIFolderExtractionEnabled","isExistingAIExtractionCascadePolicy","onAIFolderExtractionToggle","onCascadeToggle","onCascadeModeChange","shouldShowCascadeOptions","readOnlyState","createElement","className","metadataCascadePolicyEnabledInfo","Fragment","_extends","tagName","enableCascadePolicy","isOn","label","onChange","e","target","checked","applyCascadePolicyText","href","cascadePolicyLearnMore","cannotApplyCascadePolicyText","cascadePolicyModeQuestion","operationNotImmediate","value","cascadePolicySkipMode","cascadePolicyOverwriteMode","width","height","enableAIAutofill","isDisabled","aiAutofillDescription","aiAutofillLearnMore","onErrorAction","requestState","selectedAgent","variant","aiAutofillNotice","values","pricingLink","aiAutofillPricingDetails"],"sources":["../../../src/features/metadata-instance-editor/CascadePolicy.js"],"sourcesContent":["// @flow\nimport * as React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nimport { BoxAiAgentSelector } from '@box/box-ai-agent-selector';\nimport { InlineNotice, TooltipProvider } from '@box/blueprint-web';\n// $FlowFixMe\nimport BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';\n\nimport Toggle from '../../components/toggle';\nimport { RadioButton, RadioGroup } from '../../components/radio';\nimport Link from '../../components/link/Link';\nimport IconAlertDefault from '../../icons/general/IconAlertDefault';\nimport messages from './messages';\nimport './CascadePolicy.scss';\n\nconst COMMUNITY_LINK = 'https://support.box.com/hc/en-us/articles/360044195873-Cascading-metadata-in-folders';\nconst AI_LINK = 'https://www.box.com/ai';\nconst PRICING_LINK = 'https://www.box.com/pricing';\n\nconst agents = [\n {\n id: '1',\n name: 'Basic',\n isEnterpriseDefault: true,\n },\n {\n id: '2',\n name: 'Enhanced (Gemini 2.5 Pro)',\n isEnterpriseDefault: false,\n },\n];\n\ntype Props = {\n canEdit: boolean,\n canUseAIFolderExtraction: boolean,\n canUseAIFolderExtractionAgentSelector: boolean,\n isAIFolderExtractionEnabled: boolean,\n isCascadingEnabled: boolean,\n isCascadingOverwritten: boolean,\n isCustomMetadata: boolean,\n isExistingAIExtractionCascadePolicy: boolean,\n onAIFolderExtractionToggle: (value: boolean) => void,\n onCascadeModeChange: (value: boolean) => void,\n onCascadeToggle: (value: boolean) => void,\n shouldShowCascadeOptions: boolean,\n};\n\nconst CascadePolicy = ({\n canEdit,\n canUseAIFolderExtraction,\n canUseAIFolderExtractionAgentSelector,\n isCascadingEnabled,\n isCascadingOverwritten,\n isCustomMetadata,\n isAIFolderExtractionEnabled,\n isExistingAIExtractionCascadePolicy,\n onAIFolderExtractionToggle,\n onCascadeToggle,\n onCascadeModeChange,\n shouldShowCascadeOptions,\n}: Props) => {\n const readOnlyState = isCascadingEnabled ? (\n <div className=\"metadata-cascade-notice\">\n <FormattedMessage {...messages.metadataCascadePolicyEnabledInfo} />\n </div>\n ) : null;\n\n return canEdit ? (\n <>\n <div className=\"metadata-cascade-editor\">\n <div className=\"metadata-cascade-enable\" data-testid=\"metadata-cascade-enable\">\n <div>\n <FormattedMessage tagName=\"strong\" {...messages.enableCascadePolicy} />\n {!isCustomMetadata && (\n <Toggle\n className={`metadata-cascade-toggle ${\n isCascadingEnabled ? 'cascade-on' : 'cascade-off'\n }`}\n isOn={isCascadingEnabled}\n label=\"\"\n onChange={e => onCascadeToggle(e.target.checked)}\n />\n )}\n </div>\n {!isCustomMetadata ? (\n <div className=\"cascade-policy-text\">\n <FormattedMessage {...messages.applyCascadePolicyText} />\n \n <Link className=\"cascade-policy-link\" href={COMMUNITY_LINK} target=\"_blank\">\n <FormattedMessage {...messages.cascadePolicyLearnMore} />\n </Link>\n </div>\n ) : (\n <div>\n <FormattedMessage {...messages.cannotApplyCascadePolicyText} />\n </div>\n )}\n </div>\n </div>\n {shouldShowCascadeOptions && (\n <div className=\"metadata-cascade-editor\">\n <div className=\"metadata-cascading-mode\">\n <FormattedMessage {...messages.cascadePolicyModeQuestion} />\n\n <div className=\"metadata-operation-not-immediate\">\n <IconAlertDefault />\n <span>\n <FormattedMessage {...messages.operationNotImmediate} />\n </span>\n </div>\n <RadioGroup\n className=\"metadata-cascading-options\"\n onChange={e => onCascadeModeChange(e.target.value === 'overwrite')}\n value={isCascadingOverwritten ? 'overwrite' : 'skip'}\n >\n <RadioButton\n label={<FormattedMessage {...messages.cascadePolicySkipMode} />}\n value=\"skip\"\n />\n <RadioButton\n label={<FormattedMessage {...messages.cascadePolicyOverwriteMode} />}\n value=\"overwrite\"\n />\n </RadioGroup>\n </div>\n </div>\n )}\n {shouldShowCascadeOptions && canUseAIFolderExtraction && (\n <div className=\"metadata-cascade-editor\" data-testid=\"ai-folder-extraction\">\n <div className=\"metadata-cascade-enable\">\n <div>\n <BoxAiLogo className=\"metadata-cascade-ai-logo\" width={16} height={16} />\n <FormattedMessage tagName=\"strong\" {...messages.enableAIAutofill} />\n <Toggle\n className=\"metadata-cascade-toggle\"\n isOn={isAIFolderExtractionEnabled}\n isDisabled={isExistingAIExtractionCascadePolicy}\n label=\"\"\n onChange={e => onAIFolderExtractionToggle(e.target.checked)}\n />\n </div>\n <div className=\"cascade-policy-text\">\n <FormattedMessage {...messages.aiAutofillDescription} />\n \n <Link className=\"cascade-policy-link\" href={AI_LINK} target=\"_blank\">\n <FormattedMessage {...messages.aiAutofillLearnMore} />\n </Link>\n </div>\n {canUseAIFolderExtractionAgentSelector && (\n <div className=\"metadata-cascade-ai-agent-selector\">\n <TooltipProvider>\n <BoxAiAgentSelector\n agents={agents}\n onErrorAction={() => {}}\n requestState=\"success\"\n selectedAgent={agents[0]}\n variant=\"sidebar\"\n />\n </TooltipProvider>\n </div>\n )}\n <InlineNotice className=\"metadata-cascade-ai-notice\" variant=\"info\">\n <FormattedMessage\n {...messages.aiAutofillNotice}\n values={{\n pricingLink: (\n <Link className=\"cascade-policy-link\" href={PRICING_LINK} target=\"_blank\">\n <FormattedMessage {...messages.aiAutofillPricingDetails} />\n </Link>\n ),\n }}\n />\n </InlineNotice>\n </div>\n </div>\n )}\n </>\n ) : (\n readOnlyState\n );\n};\n\nexport default CascadePolicy;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"CascadePolicy.js","names":["React","FormattedMessage","BoxAiAgentSelector","BoxAiLogo","Toggle","RadioButton","RadioGroup","Link","IconAlertDefault","messages","COMMUNITY_LINK","AI_LINK","agents","id","name","isEnterpriseDefault","CascadePolicy","canEdit","canUseAIFolderExtraction","canUseAIFolderExtractionAgentSelector","isCascadingEnabled","isCascadingOverwritten","isCustomMetadata","isAIFolderExtractionEnabled","isExistingAIExtractionCascadePolicy","onAIFolderExtractionToggle","onCascadeToggle","onCascadeModeChange","shouldShowCascadeOptions","readOnlyState","createElement","className","metadataCascadePolicyEnabledInfo","Fragment","_extends","tagName","enableCascadePolicy","isOn","label","onChange","e","target","checked","applyCascadePolicyText","href","cascadePolicyLearnMore","cannotApplyCascadePolicyText","cascadePolicyModeQuestion","operationNotImmediate","value","cascadePolicySkipMode","cascadePolicyOverwriteMode","width","height","enableAIAutofill","isDisabled","aiAutofillDescription","aiAutofillLearnMore","onErrorAction","requestState","selectedAgent","variant"],"sources":["../../../src/features/metadata-instance-editor/CascadePolicy.js"],"sourcesContent":["// @flow\nimport * as React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nimport { BoxAiAgentSelector } from '@box/box-ai-agent-selector';\n// $FlowFixMe\nimport BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';\n\nimport Toggle from '../../components/toggle';\nimport { RadioButton, RadioGroup } from '../../components/radio';\nimport Link from '../../components/link/Link';\nimport IconAlertDefault from '../../icons/general/IconAlertDefault';\nimport messages from './messages';\nimport './CascadePolicy.scss';\n\nconst COMMUNITY_LINK = 'https://support.box.com/hc/en-us/articles/360044195873-Cascading-metadata-in-folders';\nconst AI_LINK = 'https://www.box.com/ai';\n\nconst agents = [\n {\n id: '1',\n name: 'Basic',\n isEnterpriseDefault: true,\n },\n {\n id: '2',\n name: 'Enhanced (Gemini 2.5 Pro)',\n isEnterpriseDefault: false,\n },\n];\n\ntype Props = {\n canEdit: boolean,\n canUseAIFolderExtraction: boolean,\n canUseAIFolderExtractionAgentSelector: boolean,\n isAIFolderExtractionEnabled: boolean,\n isCascadingEnabled: boolean,\n isCascadingOverwritten: boolean,\n isCustomMetadata: boolean,\n isExistingAIExtractionCascadePolicy: boolean,\n onAIFolderExtractionToggle: (value: boolean) => void,\n onCascadeModeChange: (value: boolean) => void,\n onCascadeToggle: (value: boolean) => void,\n shouldShowCascadeOptions: boolean,\n};\n\nconst CascadePolicy = ({\n canEdit,\n canUseAIFolderExtraction,\n canUseAIFolderExtractionAgentSelector,\n isCascadingEnabled,\n isCascadingOverwritten,\n isCustomMetadata,\n isAIFolderExtractionEnabled,\n isExistingAIExtractionCascadePolicy,\n onAIFolderExtractionToggle,\n onCascadeToggle,\n onCascadeModeChange,\n shouldShowCascadeOptions,\n}: Props) => {\n const readOnlyState = isCascadingEnabled ? (\n <div className=\"metadata-cascade-notice\">\n <FormattedMessage {...messages.metadataCascadePolicyEnabledInfo} />\n </div>\n ) : null;\n\n return canEdit ? (\n <>\n <div className=\"metadata-cascade-editor\">\n <div className=\"metadata-cascade-enable\" data-testid=\"metadata-cascade-enable\">\n <div>\n <FormattedMessage tagName=\"strong\" {...messages.enableCascadePolicy} />\n {!isCustomMetadata && (\n <Toggle\n className={`metadata-cascade-toggle ${\n isCascadingEnabled ? 'cascade-on' : 'cascade-off'\n }`}\n isOn={isCascadingEnabled}\n label=\"\"\n onChange={e => onCascadeToggle(e.target.checked)}\n />\n )}\n </div>\n {!isCustomMetadata ? (\n <div className=\"cascade-policy-text\">\n <FormattedMessage {...messages.applyCascadePolicyText} />\n \n <Link className=\"cascade-policy-link\" href={COMMUNITY_LINK} target=\"_blank\">\n <FormattedMessage {...messages.cascadePolicyLearnMore} />\n </Link>\n </div>\n ) : (\n <div>\n <FormattedMessage {...messages.cannotApplyCascadePolicyText} />\n </div>\n )}\n </div>\n </div>\n {shouldShowCascadeOptions && (\n <div className=\"metadata-cascade-editor\">\n <div className=\"metadata-cascading-mode\">\n <FormattedMessage {...messages.cascadePolicyModeQuestion} />\n\n <div className=\"metadata-operation-not-immediate\">\n <IconAlertDefault />\n <span>\n <FormattedMessage {...messages.operationNotImmediate} />\n </span>\n </div>\n <RadioGroup\n className=\"metadata-cascading-options\"\n onChange={e => onCascadeModeChange(e.target.value === 'overwrite')}\n value={isCascadingOverwritten ? 'overwrite' : 'skip'}\n >\n <RadioButton\n label={<FormattedMessage {...messages.cascadePolicySkipMode} />}\n value=\"skip\"\n />\n <RadioButton\n label={<FormattedMessage {...messages.cascadePolicyOverwriteMode} />}\n value=\"overwrite\"\n />\n </RadioGroup>\n </div>\n </div>\n )}\n {shouldShowCascadeOptions && canUseAIFolderExtraction && (\n <div className=\"metadata-cascade-editor\" data-testid=\"ai-folder-extraction\">\n <div className=\"metadata-cascade-enable\">\n <div>\n <BoxAiLogo className=\"metadata-cascade-ai-logo\" width={16} height={16} />\n <FormattedMessage tagName=\"strong\" {...messages.enableAIAutofill} />\n <Toggle\n className=\"metadata-cascade-toggle\"\n isOn={isAIFolderExtractionEnabled}\n isDisabled={isExistingAIExtractionCascadePolicy}\n label=\"\"\n onChange={e => onAIFolderExtractionToggle(e.target.checked)}\n />\n </div>\n <div className=\"cascade-policy-text\">\n <FormattedMessage {...messages.aiAutofillDescription} />\n \n <Link className=\"cascade-policy-link\" href={AI_LINK} target=\"_blank\">\n <FormattedMessage {...messages.aiAutofillLearnMore} />\n </Link>\n </div>\n {canUseAIFolderExtractionAgentSelector && (\n <div className=\"metadata-cascade-ai-agent-selector\">\n <BoxAiAgentSelector\n agents={agents}\n onErrorAction={() => {}}\n requestState=\"success\"\n selectedAgent={agents[0]}\n variant=\"sidebar\"\n />\n </div>\n )}\n </div>\n </div>\n )}\n </>\n ) : (\n readOnlyState\n );\n};\n\nexport default CascadePolicy;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -136,18 +136,10 @@ const messages = defineMessages({
|
|
|
136
136
|
"id": "boxui.metadataInstanceEditor.aiAutofillDescription",
|
|
137
137
|
"defaultMessage": "Use Box AI to automatically extract metadata values."
|
|
138
138
|
},
|
|
139
|
-
aiAutofillNotice: {
|
|
140
|
-
"id": "boxui.metadataInstanceEditor.aiAutofillNotice",
|
|
141
|
-
"defaultMessage": "Enabling this feature may involve additional charges. Please review our {pricingLink} for more information."
|
|
142
|
-
},
|
|
143
139
|
aiAutofillLearnMore: {
|
|
144
140
|
"id": "boxui.metadataInstanceEditor.aiAutofillLearnMore",
|
|
145
141
|
"defaultMessage": "Learn more"
|
|
146
142
|
},
|
|
147
|
-
aiAutofillPricingDetails: {
|
|
148
|
-
"id": "boxui.metadataInstanceEditor.aiAutofillPricingDetails",
|
|
149
|
-
"defaultMessage": "pricing details"
|
|
150
|
-
},
|
|
151
143
|
applyCascadePolicyText: {
|
|
152
144
|
"id": "boxui.metadataInstanceEditor.applyCascadePolicyText",
|
|
153
145
|
"defaultMessage": "Apply template and its values to all new and existing items in this folder and its subfolders."
|
|
@@ -178,22 +178,11 @@ const messages = defineMessages({
|
|
|
178
178
|
description: 'Description for AI autofill toggle switch',
|
|
179
179
|
id: 'boxui.metadataInstanceEditor.aiAutofillDescription',
|
|
180
180
|
},
|
|
181
|
-
aiAutofillNotice: {
|
|
182
|
-
defaultMessage:
|
|
183
|
-
'Enabling this feature may involve additional charges. Please review our {pricingLink} for more information.',
|
|
184
|
-
description: 'Notice for AI autofill toggle switch',
|
|
185
|
-
id: 'boxui.metadataInstanceEditor.aiAutofillNotice',
|
|
186
|
-
},
|
|
187
181
|
aiAutofillLearnMore: {
|
|
188
182
|
defaultMessage: 'Learn more',
|
|
189
183
|
description: 'Learn more link for AI autofill',
|
|
190
184
|
id: 'boxui.metadataInstanceEditor.aiAutofillLearnMore',
|
|
191
185
|
},
|
|
192
|
-
aiAutofillPricingDetails: {
|
|
193
|
-
defaultMessage: 'pricing details',
|
|
194
|
-
description: 'Pricing details link for AI autofill',
|
|
195
|
-
id: 'boxui.metadataInstanceEditor.aiAutofillPricingDetails',
|
|
196
|
-
},
|
|
197
186
|
applyCascadePolicyText: {
|
|
198
187
|
defaultMessage:
|
|
199
188
|
'Apply template and its values to all new and existing items in this folder and its subfolders.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","names":["defineMessages","messages","customTitle","customAdd","customRemove","customKey","customKeyPlaceholder","customValue","customValuePlaceholder","customNewField","customNewFieldMessage","customErrorRequired","customErrorDuplicateKey","customErrorInternalKey","invalidInput","metadataEditTooltip","metadataRemoveTemplate","fileMetadataRemoveTemplateConfirm","folderMetadataRemoveTemplateConfirm","fileMetadataRemoveCustomTemplateConfirm","folderMetadataRemoveCustomTemplateConfirm","metadataTemplateSearchPlaceholder","metadataTemplateAdd","metadataTemplatesTitle","metadataTemplatesNoResults","metadataTemplatesFetchFailed","metadataTemplatesNoRemainingTemplates","metadataTemplatesServerHasNoTemplates","metadataSave","metadataCancel","metadataCascadePolicyEnabledInfo","noMetadata","noMetadataAddTemplate","enableCascadePolicy","enableAIAutofill","aiAutofillDescription","aiAutofillNotice","aiAutofillLearnMore","aiAutofillPricingDetails","applyCascadePolicyText","cannotApplyCascadePolicyText","cascadePolicyLearnMore","cascadePolicyModeQuestion","cascadePolicySkipMode","cascadePolicyOverwriteMode","allAttributesAreHidden","noAttributesForTemplate","operationNotImmediate"],"sources":["../../../src/features/metadata-instance-editor/messages.js"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n customTitle: {\n defaultMessage: 'Custom Metadata',\n description: 'title of the custom metadata card',\n id: 'boxui.metadataInstanceEditor.customTitle',\n },\n customAdd: {\n defaultMessage: 'Add',\n description: 'Label for the add button for custom metadata',\n id: 'boxui.metadataInstanceEditor.customAdd',\n },\n customRemove: {\n defaultMessage: 'Remove',\n description: 'Label for the remove button for custom metadata',\n id: 'boxui.metadataInstanceEditor.customRemove',\n },\n customKey: {\n defaultMessage: 'Key',\n description: 'Label for the key field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customKey',\n },\n customKeyPlaceholder: {\n defaultMessage: 'e.g. Order Number',\n description: 'Placeholder for the key field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customKeyPlaceholder',\n },\n customValue: {\n defaultMessage: 'Value',\n description: 'Label for the value field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customValue',\n },\n customValuePlaceholder: {\n defaultMessage: 'e.g. 42',\n description: 'Placeholder for the value field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customValuePlaceholder',\n },\n customNewField: {\n defaultMessage: 'New Field',\n description: 'Title for the new field section for custom metadata',\n id: 'boxui.metadataInstanceEditor.customNewField',\n },\n customNewFieldMessage: {\n defaultMessage: 'Add a custom metadata field. Other people will be able to see and search for this field.',\n description: 'Description for the new field section for custom metadata',\n id: 'boxui.metadataInstanceEditor.customNewFieldMessage',\n },\n customErrorRequired: {\n defaultMessage: 'A key is required.',\n description: 'Error enforcing required key for custom metadata',\n id: 'boxui.metadataInstanceEditor.customErrorRequired',\n },\n customErrorDuplicateKey: {\n defaultMessage: 'A field with that key already exists.',\n description: 'Error enforcing unique key for custom metadata',\n id: 'boxui.metadataInstanceEditor.customErrorDuplicateKey',\n },\n customErrorInternalKey: {\n defaultMessage: 'Keys cannot begin with a $.',\n description: 'Error enforcing non internal key for custom metadata',\n id: 'boxui.metadataInstanceEditor.customErrorInternalKey',\n },\n invalidInput: {\n defaultMessage: 'Invalid Input!',\n description: 'Error message displayed if the user enters a badly formatted value in metadata text box',\n id: 'boxui.metadataInstanceEditor.invalidValue',\n },\n metadataEditTooltip: {\n defaultMessage: 'Edit Metadata',\n description: 'Text that shows in a tooltip above the edit pencil button.',\n id: 'boxui.metadataInstanceEditor.editTooltip',\n },\n metadataRemoveTemplate: {\n defaultMessage: 'Remove',\n description: 'Label to remove a template',\n id: 'boxui.metadataInstanceEditor.removeTemplate',\n },\n fileMetadataRemoveTemplateConfirm: {\n defaultMessage: 'Are you sure you want to delete \"{metadataName}\" and all of its values from this file?',\n description:\n 'Message for users who may attempt to remove a metadata instance for a file, which is non-recoverable',\n id: 'boxui.metadataInstanceEditor.fileMetadataRemoveTemplateConfirm',\n },\n folderMetadataRemoveTemplateConfirm: {\n defaultMessage:\n 'Are you sure you want to delete \"{metadataName}\" and all of its values? Any metadata template values already applied to files in this folder will not be deleted.',\n description:\n 'Message for users who may attempt to remove a metadata instance for a folder, which is non-recoverable',\n id: 'boxui.metadataInstanceEditor.folderMetadataRemoveTemplateConfirm',\n },\n fileMetadataRemoveCustomTemplateConfirm: {\n defaultMessage: 'Are you sure you want to delete this custom metadata and all of its values from this file?',\n description:\n 'Message for users who may attempt to remove a custom metadata instance for a file. Also non-recoverable',\n id: 'boxui.metadataInstanceEditor.fileMetadataRemoveCustomTemplateConfirm',\n },\n folderMetadataRemoveCustomTemplateConfirm: {\n defaultMessage:\n 'Are you sure you want to delete this custom metadata and all of its values? Any metadata template values already applied to files in this folder will not be deleted.',\n description:\n 'Message for users who may attempt to remove a custom metadata instance for a folder. Also non-recoverable',\n id: 'boxui.metadataInstanceEditor.folderMetadataRemoveCustomTemplateConfirm',\n },\n metadataTemplateSearchPlaceholder: {\n defaultMessage: 'Search all templates',\n description: 'Placeholder to search for all templates',\n id: 'boxui.metadataInstanceEditor.templateSearchPlaceholder',\n },\n metadataTemplateAdd: {\n defaultMessage: 'Add',\n description: 'Label to add a template',\n id: 'boxui.metadataInstanceEditor.templateAdd',\n },\n metadataTemplatesTitle: {\n defaultMessage: 'Templates',\n description: 'Overall title of metadata',\n id: 'boxui.metadataInstanceEditor.templatesTitle',\n },\n metadataTemplatesNoResults: {\n defaultMessage: 'No Results',\n description: 'Text to indicate no templates found by searching',\n id: 'boxui.metadataInstanceEditor.templatesNoResults',\n },\n metadataTemplatesFetchFailed: {\n defaultMessage: 'Sorry! We could not fetch templates. Please contact your administrator',\n description: 'Text to indicate that we failed to fetch templates',\n id: 'boxui.metadataInstanceEditor.templatesFetchFailed',\n },\n metadataTemplatesNoRemainingTemplates: {\n defaultMessage: 'All templates have been added',\n description: 'Text to indicate that all the templates have been added',\n id: 'boxui.metadataInstanceEditor.templatesNoRemainingTemplates',\n },\n metadataTemplatesServerHasNoTemplates: {\n defaultMessage: 'Zero templates',\n description: 'Text to indicate that the server has no templates',\n id: 'boxui.metadataInstanceEditor.templatesServerHasNoTemplates',\n },\n metadataSave: {\n defaultMessage: 'Save',\n description: 'Label for save button',\n id: 'boxui.metadataInstanceEditor.metadataSave',\n },\n metadataCancel: {\n defaultMessage: 'Cancel',\n description: 'Label for cancel button',\n id: 'boxui.metadataInstanceEditor.metadataCancel',\n },\n metadataCascadePolicyEnabledInfo: {\n defaultMessage:\n 'This template and its values are being cascaded to all items in this folder and its subfolders.',\n description: 'Informational text shown in metadata modal when cascading is turned on for current folder',\n id: 'boxui.metadataInstanceEditor.metadataCascadePolicyEnabledInfo',\n },\n noMetadata: {\n defaultMessage: 'No Metadata Applied',\n description: 'Text to display when no metadata is applied to folder',\n id: 'boxui.metadataInstanceEditor.noMetadata',\n },\n noMetadataAddTemplate: {\n defaultMessage: \"Click 'Add' in the top right to add metadata to this item\",\n description: 'Instructions to create metadata for the selected folder',\n id: 'boxui.metadataInstanceEditor.noMetadataAddTemplate',\n },\n enableCascadePolicy: {\n defaultMessage: 'Enable Cascade Policy',\n description: 'Label for enable cascade policy toggle switch',\n id: 'boxui.metadataInstanceEditor.enableCascadePolicy',\n },\n enableAIAutofill: {\n defaultMessage: 'Box AI Autofill',\n description: 'Label for enable AI autofill toggle switch',\n id: 'boxui.metadataInstanceEditor.enableAIAutofill',\n },\n aiAutofillDescription: {\n defaultMessage: 'Use Box AI to automatically extract metadata values.',\n description: 'Description for AI autofill toggle switch',\n id: 'boxui.metadataInstanceEditor.aiAutofillDescription',\n },\n aiAutofillNotice: {\n defaultMessage:\n 'Enabling this feature may involve additional charges. Please review our {pricingLink} for more information.',\n description: 'Notice for AI autofill toggle switch',\n id: 'boxui.metadataInstanceEditor.aiAutofillNotice',\n },\n aiAutofillLearnMore: {\n defaultMessage: 'Learn more',\n description: 'Learn more link for AI autofill',\n id: 'boxui.metadataInstanceEditor.aiAutofillLearnMore',\n },\n aiAutofillPricingDetails: {\n defaultMessage: 'pricing details',\n description: 'Pricing details link for AI autofill',\n id: 'boxui.metadataInstanceEditor.aiAutofillPricingDetails',\n },\n applyCascadePolicyText: {\n defaultMessage:\n 'Apply template and its values to all new and existing items in this folder and its subfolders.',\n description: 'Informational text below enable cascade policy toggle switch',\n id: 'boxui.metadataInstanceEditor.applyCascadePolicyText',\n },\n cannotApplyCascadePolicyText: {\n defaultMessage: 'Cascade policy cannot be applied to custom metadata at this time.',\n description:\n 'Informational text below enable cascade policy toggle switch indicating that cascade policy cannot be applied',\n id: 'boxui.metadataInstanceEditor.cannotApplyCascadePolicyText',\n },\n cascadePolicyLearnMore: {\n defaultMessage: 'Learn more',\n description: 'Tooltip text a user can use to learn more about cascading metadata policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicyLearnMore',\n },\n cascadePolicyModeQuestion: {\n defaultMessage:\n 'In the case of conflicts when applying this template and its values to existing items, what would you like to do? This is a one time action.',\n description:\n 'Tooltip text that asks the user what they want to do when applying cascading to their metadata policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicyModeQuestion',\n },\n cascadePolicySkipMode: {\n defaultMessage: 'Skip and keep all existing template values',\n description: 'Label for radio button that selects skip mode for cascading policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicySkipMode',\n },\n cascadePolicyOverwriteMode: {\n defaultMessage: 'Overwrite all existing template values',\n description: 'Label for radio button that selects overwrite mode for cascading policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicyOverwriteMode',\n },\n allAttributesAreHidden: {\n defaultMessage: 'All attributes in this template have been hidden.',\n description:\n 'Informational text below collapsible header indicating that all fields for this template are hidden',\n id: 'boxui.metadataInstanceEditor.allAttributesAreHidden',\n },\n noAttributesForTemplate: {\n defaultMessage: 'There are no attributes in this template.',\n description:\n 'Informational text below collapsible header indicating that there are no attributes for this template',\n id: 'boxui.metadataInstanceEditor.noAttributesForTemplate',\n },\n operationNotImmediate: {\n defaultMessage: 'This operation is not immediate and may take some time.',\n description:\n 'Informational text below cascade policy description and explains to the user that the policy will take some time to take effect.',\n id: 'boxui.metadataInstanceEditor.operationNotImmediate',\n },\n});\n\nexport default messages;\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,YAAY;AAE3C,MAAMC,QAAQ,GAAGD,cAAc,CAAC;EAC5BE,WAAW;IAAA;IAAA;EAAA,CAIV;EACDC,SAAS;IAAA;IAAA;EAAA,CAIR;EACDC,YAAY;IAAA;IAAA;EAAA,CAIX;EACDC,SAAS;IAAA;IAAA;EAAA,CAIR;EACDC,oBAAoB;IAAA;IAAA;EAAA,CAInB;EACDC,WAAW;IAAA;IAAA;EAAA,CAIV;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,cAAc;IAAA;IAAA;EAAA,CAIb;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,uBAAuB;IAAA;IAAA;EAAA,CAItB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,YAAY;IAAA;IAAA;EAAA,CAIX;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,iCAAiC;IAAA;IAAA;EAAA,CAKhC;EACDC,mCAAmC;IAAA;IAAA;EAAA,CAMlC;EACDC,uCAAuC;IAAA;IAAA;EAAA,CAKtC;EACDC,yCAAyC;IAAA;IAAA;EAAA,CAMxC;EACDC,iCAAiC;IAAA;IAAA;EAAA,CAIhC;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,0BAA0B;IAAA;IAAA;EAAA,CAIzB;EACDC,4BAA4B;IAAA;IAAA;EAAA,CAI3B;EACDC,qCAAqC;IAAA;IAAA;EAAA,CAIpC;EACDC,qCAAqC;IAAA;IAAA;EAAA,CAIpC;EACDC,YAAY;IAAA;IAAA;EAAA,CAIX;EACDC,cAAc;IAAA;IAAA;EAAA,CAIb;EACDC,gCAAgC;IAAA;IAAA;EAAA,CAK/B;EACDC,UAAU;IAAA;IAAA;EAAA,CAIT;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,gBAAgB;IAAA;IAAA;EAAA,CAIf;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,gBAAgB;IAAA;IAAA;EAAA,CAKf;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,wBAAwB;IAAA;IAAA;EAAA,CAIvB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAKrB;EACDC,4BAA4B;IAAA;IAAA;EAAA,CAK3B;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,yBAAyB;IAAA;IAAA;EAAA,CAMxB;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,0BAA0B;IAAA;IAAA;EAAA,CAIzB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAKrB;EACDC,uBAAuB;IAAA;IAAA;EAAA,CAKtB;EACDC,qBAAqB;IAAA;IAAA;EAAA;AAMzB,CAAC,CAAC;AAEF,eAAe9C,QAAQ","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"messages.js","names":["defineMessages","messages","customTitle","customAdd","customRemove","customKey","customKeyPlaceholder","customValue","customValuePlaceholder","customNewField","customNewFieldMessage","customErrorRequired","customErrorDuplicateKey","customErrorInternalKey","invalidInput","metadataEditTooltip","metadataRemoveTemplate","fileMetadataRemoveTemplateConfirm","folderMetadataRemoveTemplateConfirm","fileMetadataRemoveCustomTemplateConfirm","folderMetadataRemoveCustomTemplateConfirm","metadataTemplateSearchPlaceholder","metadataTemplateAdd","metadataTemplatesTitle","metadataTemplatesNoResults","metadataTemplatesFetchFailed","metadataTemplatesNoRemainingTemplates","metadataTemplatesServerHasNoTemplates","metadataSave","metadataCancel","metadataCascadePolicyEnabledInfo","noMetadata","noMetadataAddTemplate","enableCascadePolicy","enableAIAutofill","aiAutofillDescription","aiAutofillLearnMore","applyCascadePolicyText","cannotApplyCascadePolicyText","cascadePolicyLearnMore","cascadePolicyModeQuestion","cascadePolicySkipMode","cascadePolicyOverwriteMode","allAttributesAreHidden","noAttributesForTemplate","operationNotImmediate"],"sources":["../../../src/features/metadata-instance-editor/messages.js"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n customTitle: {\n defaultMessage: 'Custom Metadata',\n description: 'title of the custom metadata card',\n id: 'boxui.metadataInstanceEditor.customTitle',\n },\n customAdd: {\n defaultMessage: 'Add',\n description: 'Label for the add button for custom metadata',\n id: 'boxui.metadataInstanceEditor.customAdd',\n },\n customRemove: {\n defaultMessage: 'Remove',\n description: 'Label for the remove button for custom metadata',\n id: 'boxui.metadataInstanceEditor.customRemove',\n },\n customKey: {\n defaultMessage: 'Key',\n description: 'Label for the key field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customKey',\n },\n customKeyPlaceholder: {\n defaultMessage: 'e.g. Order Number',\n description: 'Placeholder for the key field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customKeyPlaceholder',\n },\n customValue: {\n defaultMessage: 'Value',\n description: 'Label for the value field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customValue',\n },\n customValuePlaceholder: {\n defaultMessage: 'e.g. 42',\n description: 'Placeholder for the value field for custom metadata',\n id: 'boxui.metadataInstanceEditor.customValuePlaceholder',\n },\n customNewField: {\n defaultMessage: 'New Field',\n description: 'Title for the new field section for custom metadata',\n id: 'boxui.metadataInstanceEditor.customNewField',\n },\n customNewFieldMessage: {\n defaultMessage: 'Add a custom metadata field. Other people will be able to see and search for this field.',\n description: 'Description for the new field section for custom metadata',\n id: 'boxui.metadataInstanceEditor.customNewFieldMessage',\n },\n customErrorRequired: {\n defaultMessage: 'A key is required.',\n description: 'Error enforcing required key for custom metadata',\n id: 'boxui.metadataInstanceEditor.customErrorRequired',\n },\n customErrorDuplicateKey: {\n defaultMessage: 'A field with that key already exists.',\n description: 'Error enforcing unique key for custom metadata',\n id: 'boxui.metadataInstanceEditor.customErrorDuplicateKey',\n },\n customErrorInternalKey: {\n defaultMessage: 'Keys cannot begin with a $.',\n description: 'Error enforcing non internal key for custom metadata',\n id: 'boxui.metadataInstanceEditor.customErrorInternalKey',\n },\n invalidInput: {\n defaultMessage: 'Invalid Input!',\n description: 'Error message displayed if the user enters a badly formatted value in metadata text box',\n id: 'boxui.metadataInstanceEditor.invalidValue',\n },\n metadataEditTooltip: {\n defaultMessage: 'Edit Metadata',\n description: 'Text that shows in a tooltip above the edit pencil button.',\n id: 'boxui.metadataInstanceEditor.editTooltip',\n },\n metadataRemoveTemplate: {\n defaultMessage: 'Remove',\n description: 'Label to remove a template',\n id: 'boxui.metadataInstanceEditor.removeTemplate',\n },\n fileMetadataRemoveTemplateConfirm: {\n defaultMessage: 'Are you sure you want to delete \"{metadataName}\" and all of its values from this file?',\n description:\n 'Message for users who may attempt to remove a metadata instance for a file, which is non-recoverable',\n id: 'boxui.metadataInstanceEditor.fileMetadataRemoveTemplateConfirm',\n },\n folderMetadataRemoveTemplateConfirm: {\n defaultMessage:\n 'Are you sure you want to delete \"{metadataName}\" and all of its values? Any metadata template values already applied to files in this folder will not be deleted.',\n description:\n 'Message for users who may attempt to remove a metadata instance for a folder, which is non-recoverable',\n id: 'boxui.metadataInstanceEditor.folderMetadataRemoveTemplateConfirm',\n },\n fileMetadataRemoveCustomTemplateConfirm: {\n defaultMessage: 'Are you sure you want to delete this custom metadata and all of its values from this file?',\n description:\n 'Message for users who may attempt to remove a custom metadata instance for a file. Also non-recoverable',\n id: 'boxui.metadataInstanceEditor.fileMetadataRemoveCustomTemplateConfirm',\n },\n folderMetadataRemoveCustomTemplateConfirm: {\n defaultMessage:\n 'Are you sure you want to delete this custom metadata and all of its values? Any metadata template values already applied to files in this folder will not be deleted.',\n description:\n 'Message for users who may attempt to remove a custom metadata instance for a folder. Also non-recoverable',\n id: 'boxui.metadataInstanceEditor.folderMetadataRemoveCustomTemplateConfirm',\n },\n metadataTemplateSearchPlaceholder: {\n defaultMessage: 'Search all templates',\n description: 'Placeholder to search for all templates',\n id: 'boxui.metadataInstanceEditor.templateSearchPlaceholder',\n },\n metadataTemplateAdd: {\n defaultMessage: 'Add',\n description: 'Label to add a template',\n id: 'boxui.metadataInstanceEditor.templateAdd',\n },\n metadataTemplatesTitle: {\n defaultMessage: 'Templates',\n description: 'Overall title of metadata',\n id: 'boxui.metadataInstanceEditor.templatesTitle',\n },\n metadataTemplatesNoResults: {\n defaultMessage: 'No Results',\n description: 'Text to indicate no templates found by searching',\n id: 'boxui.metadataInstanceEditor.templatesNoResults',\n },\n metadataTemplatesFetchFailed: {\n defaultMessage: 'Sorry! We could not fetch templates. Please contact your administrator',\n description: 'Text to indicate that we failed to fetch templates',\n id: 'boxui.metadataInstanceEditor.templatesFetchFailed',\n },\n metadataTemplatesNoRemainingTemplates: {\n defaultMessage: 'All templates have been added',\n description: 'Text to indicate that all the templates have been added',\n id: 'boxui.metadataInstanceEditor.templatesNoRemainingTemplates',\n },\n metadataTemplatesServerHasNoTemplates: {\n defaultMessage: 'Zero templates',\n description: 'Text to indicate that the server has no templates',\n id: 'boxui.metadataInstanceEditor.templatesServerHasNoTemplates',\n },\n metadataSave: {\n defaultMessage: 'Save',\n description: 'Label for save button',\n id: 'boxui.metadataInstanceEditor.metadataSave',\n },\n metadataCancel: {\n defaultMessage: 'Cancel',\n description: 'Label for cancel button',\n id: 'boxui.metadataInstanceEditor.metadataCancel',\n },\n metadataCascadePolicyEnabledInfo: {\n defaultMessage:\n 'This template and its values are being cascaded to all items in this folder and its subfolders.',\n description: 'Informational text shown in metadata modal when cascading is turned on for current folder',\n id: 'boxui.metadataInstanceEditor.metadataCascadePolicyEnabledInfo',\n },\n noMetadata: {\n defaultMessage: 'No Metadata Applied',\n description: 'Text to display when no metadata is applied to folder',\n id: 'boxui.metadataInstanceEditor.noMetadata',\n },\n noMetadataAddTemplate: {\n defaultMessage: \"Click 'Add' in the top right to add metadata to this item\",\n description: 'Instructions to create metadata for the selected folder',\n id: 'boxui.metadataInstanceEditor.noMetadataAddTemplate',\n },\n enableCascadePolicy: {\n defaultMessage: 'Enable Cascade Policy',\n description: 'Label for enable cascade policy toggle switch',\n id: 'boxui.metadataInstanceEditor.enableCascadePolicy',\n },\n enableAIAutofill: {\n defaultMessage: 'Box AI Autofill',\n description: 'Label for enable AI autofill toggle switch',\n id: 'boxui.metadataInstanceEditor.enableAIAutofill',\n },\n aiAutofillDescription: {\n defaultMessage: 'Use Box AI to automatically extract metadata values.',\n description: 'Description for AI autofill toggle switch',\n id: 'boxui.metadataInstanceEditor.aiAutofillDescription',\n },\n aiAutofillLearnMore: {\n defaultMessage: 'Learn more',\n description: 'Learn more link for AI autofill',\n id: 'boxui.metadataInstanceEditor.aiAutofillLearnMore',\n },\n applyCascadePolicyText: {\n defaultMessage:\n 'Apply template and its values to all new and existing items in this folder and its subfolders.',\n description: 'Informational text below enable cascade policy toggle switch',\n id: 'boxui.metadataInstanceEditor.applyCascadePolicyText',\n },\n cannotApplyCascadePolicyText: {\n defaultMessage: 'Cascade policy cannot be applied to custom metadata at this time.',\n description:\n 'Informational text below enable cascade policy toggle switch indicating that cascade policy cannot be applied',\n id: 'boxui.metadataInstanceEditor.cannotApplyCascadePolicyText',\n },\n cascadePolicyLearnMore: {\n defaultMessage: 'Learn more',\n description: 'Tooltip text a user can use to learn more about cascading metadata policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicyLearnMore',\n },\n cascadePolicyModeQuestion: {\n defaultMessage:\n 'In the case of conflicts when applying this template and its values to existing items, what would you like to do? This is a one time action.',\n description:\n 'Tooltip text that asks the user what they want to do when applying cascading to their metadata policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicyModeQuestion',\n },\n cascadePolicySkipMode: {\n defaultMessage: 'Skip and keep all existing template values',\n description: 'Label for radio button that selects skip mode for cascading policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicySkipMode',\n },\n cascadePolicyOverwriteMode: {\n defaultMessage: 'Overwrite all existing template values',\n description: 'Label for radio button that selects overwrite mode for cascading policy',\n id: 'boxui.metadataInstanceEditor.cascadePolicyOverwriteMode',\n },\n allAttributesAreHidden: {\n defaultMessage: 'All attributes in this template have been hidden.',\n description:\n 'Informational text below collapsible header indicating that all fields for this template are hidden',\n id: 'boxui.metadataInstanceEditor.allAttributesAreHidden',\n },\n noAttributesForTemplate: {\n defaultMessage: 'There are no attributes in this template.',\n description:\n 'Informational text below collapsible header indicating that there are no attributes for this template',\n id: 'boxui.metadataInstanceEditor.noAttributesForTemplate',\n },\n operationNotImmediate: {\n defaultMessage: 'This operation is not immediate and may take some time.',\n description:\n 'Informational text below cascade policy description and explains to the user that the policy will take some time to take effect.',\n id: 'boxui.metadataInstanceEditor.operationNotImmediate',\n },\n});\n\nexport default messages;\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,YAAY;AAE3C,MAAMC,QAAQ,GAAGD,cAAc,CAAC;EAC5BE,WAAW;IAAA;IAAA;EAAA,CAIV;EACDC,SAAS;IAAA;IAAA;EAAA,CAIR;EACDC,YAAY;IAAA;IAAA;EAAA,CAIX;EACDC,SAAS;IAAA;IAAA;EAAA,CAIR;EACDC,oBAAoB;IAAA;IAAA;EAAA,CAInB;EACDC,WAAW;IAAA;IAAA;EAAA,CAIV;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,cAAc;IAAA;IAAA;EAAA,CAIb;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,uBAAuB;IAAA;IAAA;EAAA,CAItB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,YAAY;IAAA;IAAA;EAAA,CAIX;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,iCAAiC;IAAA;IAAA;EAAA,CAKhC;EACDC,mCAAmC;IAAA;IAAA;EAAA,CAMlC;EACDC,uCAAuC;IAAA;IAAA;EAAA,CAKtC;EACDC,yCAAyC;IAAA;IAAA;EAAA,CAMxC;EACDC,iCAAiC;IAAA;IAAA;EAAA,CAIhC;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,0BAA0B;IAAA;IAAA;EAAA,CAIzB;EACDC,4BAA4B;IAAA;IAAA;EAAA,CAI3B;EACDC,qCAAqC;IAAA;IAAA;EAAA,CAIpC;EACDC,qCAAqC;IAAA;IAAA;EAAA,CAIpC;EACDC,YAAY;IAAA;IAAA;EAAA,CAIX;EACDC,cAAc;IAAA;IAAA;EAAA,CAIb;EACDC,gCAAgC;IAAA;IAAA;EAAA,CAK/B;EACDC,UAAU;IAAA;IAAA;EAAA,CAIT;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,gBAAgB;IAAA;IAAA;EAAA,CAIf;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,mBAAmB;IAAA;IAAA;EAAA,CAIlB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAKrB;EACDC,4BAA4B;IAAA;IAAA;EAAA,CAK3B;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAIrB;EACDC,yBAAyB;IAAA;IAAA;EAAA,CAMxB;EACDC,qBAAqB;IAAA;IAAA;EAAA,CAIpB;EACDC,0BAA0B;IAAA;IAAA;EAAA,CAIzB;EACDC,sBAAsB;IAAA;IAAA;EAAA,CAKrB;EACDC,uBAAuB;IAAA;IAAA;EAAA,CAKtB;EACDC,qBAAqB;IAAA;IAAA;EAAA;AAMzB,CAAC,CAAC;AAEF,eAAe5C,QAAQ","ignoreList":[]}
|
package/i18n/en-US.js
CHANGED
|
@@ -607,8 +607,6 @@ export default {
|
|
|
607
607
|
"boxui.media.menuButtonArialLabel": "Options",
|
|
608
608
|
"boxui.metadataInstanceEditor.aiAutofillDescription": "Use Box AI to automatically extract metadata values.",
|
|
609
609
|
"boxui.metadataInstanceEditor.aiAutofillLearnMore": "Learn more",
|
|
610
|
-
"boxui.metadataInstanceEditor.aiAutofillNotice": "Enabling this feature may involve additional charges. Please review our {pricingLink} for more information.",
|
|
611
|
-
"boxui.metadataInstanceEditor.aiAutofillPricingDetails": "pricing details",
|
|
612
610
|
"boxui.metadataInstanceEditor.allAttributesAreHidden": "All attributes in this template have been hidden.",
|
|
613
611
|
"boxui.metadataInstanceEditor.applyCascadePolicyText": "Apply template and its values to all new and existing items in this folder and its subfolders.",
|
|
614
612
|
"boxui.metadataInstanceEditor.cannotApplyCascadePolicyText": "Cascade policy cannot be applied to custom metadata at this time.",
|
package/i18n/en-US.properties
CHANGED
|
@@ -1214,10 +1214,6 @@ boxui.media.menuButtonArialLabel = Options
|
|
|
1214
1214
|
boxui.metadataInstanceEditor.aiAutofillDescription = Use Box AI to automatically extract metadata values.
|
|
1215
1215
|
# Learn more link for AI autofill
|
|
1216
1216
|
boxui.metadataInstanceEditor.aiAutofillLearnMore = Learn more
|
|
1217
|
-
# Notice for AI autofill toggle switch
|
|
1218
|
-
boxui.metadataInstanceEditor.aiAutofillNotice = Enabling this feature may involve additional charges. Please review our {pricingLink} for more information.
|
|
1219
|
-
# Pricing details link for AI autofill
|
|
1220
|
-
boxui.metadataInstanceEditor.aiAutofillPricingDetails = pricing details
|
|
1221
1217
|
# Informational text below collapsible header indicating that all fields for this template are hidden
|
|
1222
1218
|
boxui.metadataInstanceEditor.allAttributesAreHidden = All attributes in this template have been hidden.
|
|
1223
1219
|
# Informational text below enable cascade policy toggle switch
|
package/package.json
CHANGED
|
@@ -3,7 +3,6 @@ import * as React from 'react';
|
|
|
3
3
|
import { FormattedMessage } from 'react-intl';
|
|
4
4
|
|
|
5
5
|
import { BoxAiAgentSelector } from '@box/box-ai-agent-selector';
|
|
6
|
-
import { InlineNotice, TooltipProvider } from '@box/blueprint-web';
|
|
7
6
|
// $FlowFixMe
|
|
8
7
|
import BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';
|
|
9
8
|
|
|
@@ -16,7 +15,6 @@ import './CascadePolicy.scss';
|
|
|
16
15
|
|
|
17
16
|
const COMMUNITY_LINK = 'https://support.box.com/hc/en-us/articles/360044195873-Cascading-metadata-in-folders';
|
|
18
17
|
const AI_LINK = 'https://www.box.com/ai';
|
|
19
|
-
const PRICING_LINK = 'https://www.box.com/pricing';
|
|
20
18
|
|
|
21
19
|
const agents = [
|
|
22
20
|
{
|
|
@@ -149,29 +147,15 @@ const CascadePolicy = ({
|
|
|
149
147
|
</div>
|
|
150
148
|
{canUseAIFolderExtractionAgentSelector && (
|
|
151
149
|
<div className="metadata-cascade-ai-agent-selector">
|
|
152
|
-
<
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
/>
|
|
160
|
-
</TooltipProvider>
|
|
150
|
+
<BoxAiAgentSelector
|
|
151
|
+
agents={agents}
|
|
152
|
+
onErrorAction={() => {}}
|
|
153
|
+
requestState="success"
|
|
154
|
+
selectedAgent={agents[0]}
|
|
155
|
+
variant="sidebar"
|
|
156
|
+
/>
|
|
161
157
|
</div>
|
|
162
158
|
)}
|
|
163
|
-
<InlineNotice className="metadata-cascade-ai-notice" variant="info">
|
|
164
|
-
<FormattedMessage
|
|
165
|
-
{...messages.aiAutofillNotice}
|
|
166
|
-
values={{
|
|
167
|
-
pricingLink: (
|
|
168
|
-
<Link className="cascade-policy-link" href={PRICING_LINK} target="_blank">
|
|
169
|
-
<FormattedMessage {...messages.aiAutofillPricingDetails} />
|
|
170
|
-
</Link>
|
|
171
|
-
),
|
|
172
|
-
}}
|
|
173
|
-
/>
|
|
174
|
-
</InlineNotice>
|
|
175
159
|
</div>
|
|
176
160
|
</div>
|
|
177
161
|
)}
|
|
@@ -77,8 +77,8 @@ describe('features/metadata-instance-editor/CascadePolicy', () => {
|
|
|
77
77
|
},
|
|
78
78
|
);
|
|
79
79
|
|
|
80
|
-
describe('AI Autofill
|
|
81
|
-
test('should render AI
|
|
80
|
+
describe('AI Autofill Learn More Link', () => {
|
|
81
|
+
test('should render AI learn more link when AI features are enabled', () => {
|
|
82
82
|
render(<CascadePolicy canEdit canUseAIFolderExtraction shouldShowCascadeOptions />);
|
|
83
83
|
|
|
84
84
|
// Find link within the AI autofill section since there are two links with the same text in the component
|
|
@@ -87,11 +87,6 @@ describe('features/metadata-instance-editor/CascadePolicy', () => {
|
|
|
87
87
|
expect(aiLink).toBeInTheDocument();
|
|
88
88
|
expect(aiLink.closest('a')).toHaveAttribute('href', 'https://www.box.com/ai');
|
|
89
89
|
expect(aiLink.closest('a')).toHaveAttribute('target', '_blank');
|
|
90
|
-
|
|
91
|
-
const pricingLink = screen.getByText('pricing details');
|
|
92
|
-
expect(pricingLink).toBeInTheDocument();
|
|
93
|
-
expect(pricingLink.closest('a')).toHaveAttribute('href', 'https://www.box.com/pricing');
|
|
94
|
-
expect(pricingLink.closest('a')).toHaveAttribute('target', '_blank');
|
|
95
90
|
});
|
|
96
91
|
});
|
|
97
92
|
|
|
@@ -178,22 +178,11 @@ const messages = defineMessages({
|
|
|
178
178
|
description: 'Description for AI autofill toggle switch',
|
|
179
179
|
id: 'boxui.metadataInstanceEditor.aiAutofillDescription',
|
|
180
180
|
},
|
|
181
|
-
aiAutofillNotice: {
|
|
182
|
-
defaultMessage:
|
|
183
|
-
'Enabling this feature may involve additional charges. Please review our {pricingLink} for more information.',
|
|
184
|
-
description: 'Notice for AI autofill toggle switch',
|
|
185
|
-
id: 'boxui.metadataInstanceEditor.aiAutofillNotice',
|
|
186
|
-
},
|
|
187
181
|
aiAutofillLearnMore: {
|
|
188
182
|
defaultMessage: 'Learn more',
|
|
189
183
|
description: 'Learn more link for AI autofill',
|
|
190
184
|
id: 'boxui.metadataInstanceEditor.aiAutofillLearnMore',
|
|
191
185
|
},
|
|
192
|
-
aiAutofillPricingDetails: {
|
|
193
|
-
defaultMessage: 'pricing details',
|
|
194
|
-
description: 'Pricing details link for AI autofill',
|
|
195
|
-
id: 'boxui.metadataInstanceEditor.aiAutofillPricingDetails',
|
|
196
|
-
},
|
|
197
186
|
applyCascadePolicyText: {
|
|
198
187
|
defaultMessage:
|
|
199
188
|
'Apply template and its values to all new and existing items in this folder and its subfolders.',
|