box-ui-elements 23.4.0-beta.10 → 23.4.0-beta.11
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/preview.css +1 -1
- package/dist/preview.js +1 -1
- package/dist/preview.js.LICENSE.txt +0 -10
- package/dist/sidebar.css +1 -1
- package/dist/sidebar.js +1 -1
- package/dist/sidebar.js.LICENSE.txt +0 -10
- package/es/elements/content-sidebar/MetadataInstanceEditor.js +4 -2
- package/es/elements/content-sidebar/MetadataInstanceEditor.js.map +1 -1
- package/es/elements/content-sidebar/MetadataSidebarRedesign.js +4 -1
- package/es/elements/content-sidebar/MetadataSidebarRedesign.js.map +1 -1
- package/es/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.js +29 -0
- package/es/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.js.map +1 -1
- package/es/src/elements/content-sidebar/MetadataInstanceEditor.d.ts +1 -0
- package/es/src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.d.ts +1 -0
- package/i18n/ja-JP.js +1 -1
- package/i18n/ja-JP.properties +1 -1
- package/package.json +5 -5
- package/src/elements/content-sidebar/MetadataInstanceEditor.tsx +3 -0
- package/src/elements/content-sidebar/MetadataSidebarRedesign.tsx +3 -0
- package/src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.tsx +24 -0
- package/src/features/metadata-instance-editor/__tests__/CascadePolicy.test.js +7 -2
- package/src/features/metadata-instance-editor/__tests__/Instance.test.js +1 -1
- package/src/features/metadata-instance-editor/__tests__/Instances.test.js +3 -3
- package/src/features/metadata-instance-editor/__tests__/MetadataInstanceEditor.test.js +3 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "box-ui-elements",
|
|
3
|
-
"version": "23.4.0-beta.
|
|
3
|
+
"version": "23.4.0-beta.11",
|
|
4
4
|
"description": "Box UI Elements",
|
|
5
5
|
"author": "Box (https://www.box.com/)",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -125,14 +125,14 @@
|
|
|
125
125
|
"@babel/types": "^7.24.7",
|
|
126
126
|
"@box/blueprint-web": "^12.7.1",
|
|
127
127
|
"@box/blueprint-web-assets": "^4.48.4",
|
|
128
|
-
"@box/box-ai-agent-selector": "^0.
|
|
128
|
+
"@box/box-ai-agent-selector": "^0.41.10",
|
|
129
129
|
"@box/box-ai-content-answers": "^0.124.1",
|
|
130
130
|
"@box/cldr-data": "^34.2.0",
|
|
131
131
|
"@box/combobox-with-api": "^0.34.9",
|
|
132
132
|
"@box/frontend": "^11.0.1",
|
|
133
133
|
"@box/item-icon": "^0.9.83",
|
|
134
134
|
"@box/languages": "^1.0.0",
|
|
135
|
-
"@box/metadata-editor": "^0.
|
|
135
|
+
"@box/metadata-editor": "^0.110.1",
|
|
136
136
|
"@box/react-virtualized": "9.22.3-rc-box.9",
|
|
137
137
|
"@cfaester/enzyme-adapter-react-18": "^0.8.0",
|
|
138
138
|
"@chromatic-com/storybook": "^1.6.1",
|
|
@@ -297,12 +297,12 @@
|
|
|
297
297
|
"peerDependencies": {
|
|
298
298
|
"@box/blueprint-web": "^12.7.1",
|
|
299
299
|
"@box/blueprint-web-assets": "^4.48.4",
|
|
300
|
-
"@box/box-ai-agent-selector": "^0.
|
|
300
|
+
"@box/box-ai-agent-selector": "^0.41.10",
|
|
301
301
|
"@box/box-ai-content-answers": "^0.124.1",
|
|
302
302
|
"@box/cldr-data": ">=34.2.0",
|
|
303
303
|
"@box/combobox-with-api": "^0.34.9",
|
|
304
304
|
"@box/item-icon": "^0.9.83",
|
|
305
|
-
"@box/metadata-editor": "^0.
|
|
305
|
+
"@box/metadata-editor": "^0.110.1",
|
|
306
306
|
"@box/react-virtualized": "9.22.3-rc-box.9",
|
|
307
307
|
"@hapi/address": "^2.1.4",
|
|
308
308
|
"axios": "^0.30.0",
|
|
@@ -29,6 +29,7 @@ export interface MetadataInstanceEditorProps {
|
|
|
29
29
|
setIsUnsavedChangesModalOpen: (isUnsavedChangesModalOpen: boolean) => void;
|
|
30
30
|
taxonomyOptionsFetcher: TaxonomyOptionsFetcher;
|
|
31
31
|
template: MetadataTemplateInstance;
|
|
32
|
+
isAdvancedExtractAgentEnabled?: boolean;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
const MetadataInstanceEditor: React.FC<MetadataInstanceEditorProps> = ({
|
|
@@ -48,6 +49,7 @@ const MetadataInstanceEditor: React.FC<MetadataInstanceEditorProps> = ({
|
|
|
48
49
|
setIsUnsavedChangesModalOpen,
|
|
49
50
|
taxonomyOptionsFetcher,
|
|
50
51
|
template,
|
|
52
|
+
isAdvancedExtractAgentEnabled = false,
|
|
51
53
|
}) => {
|
|
52
54
|
return (
|
|
53
55
|
<MetadataInstanceForm
|
|
@@ -68,6 +70,7 @@ const MetadataInstanceEditor: React.FC<MetadataInstanceEditorProps> = ({
|
|
|
68
70
|
selectedTemplateInstance={template}
|
|
69
71
|
setIsUnsavedChangesModalOpen={setIsUnsavedChangesModalOpen}
|
|
70
72
|
taxonomyOptionsFetcher={taxonomyOptionsFetcher}
|
|
73
|
+
isAdvancedExtractAgentEnabled={isAdvancedExtractAgentEnabled}
|
|
71
74
|
/>
|
|
72
75
|
);
|
|
73
76
|
};
|
|
@@ -114,6 +114,7 @@ function MetadataSidebarRedesign({
|
|
|
114
114
|
const isBoxAiSuggestionsEnabled: boolean = useFeatureEnabled('metadata.aiSuggestions.enabled');
|
|
115
115
|
const isBetaLanguageEnabled: boolean = useFeatureEnabled('metadata.betaLanguage.enabled');
|
|
116
116
|
const isMetadataMultiLevelTaxonomyFieldEnabled: boolean = useFeatureEnabled('metadata.multilevelTaxonomy.enabled');
|
|
117
|
+
const isAdvancedExtractAgentEnabled: boolean = useFeatureEnabled('metadata.extractAdvancedAgents.enabled');
|
|
117
118
|
const isDeleteConfirmationModalCheckboxEnabled: boolean = useFeatureEnabled(
|
|
118
119
|
'metadata.deleteConfirmationModalCheckbox.enabled',
|
|
119
120
|
);
|
|
@@ -324,11 +325,13 @@ function MetadataSidebarRedesign({
|
|
|
324
325
|
setIsUnsavedChangesModalOpen={setIsUnsavedChangesModalOpen}
|
|
325
326
|
taxonomyOptionsFetcher={taxonomyOptionsFetcher}
|
|
326
327
|
template={editingTemplate}
|
|
328
|
+
isAdvancedExtractAgentEnabled={isAdvancedExtractAgentEnabled}
|
|
327
329
|
/>
|
|
328
330
|
)}
|
|
329
331
|
{showList && (
|
|
330
332
|
<MetadataInstanceList
|
|
331
333
|
areAiSuggestionsAvailable={areAiSuggestionsAvailable}
|
|
334
|
+
isAdvancedExtractAgentEnabled={isAdvancedExtractAgentEnabled}
|
|
332
335
|
isAiSuggestionsFeatureEnabled={isBoxAiSuggestionsEnabled}
|
|
333
336
|
isBetaLanguageEnabled={isBetaLanguageEnabled}
|
|
334
337
|
onEdit={templateInstance => {
|
package/src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.tsx
CHANGED
|
@@ -425,6 +425,30 @@ export const MetadataInstanceEditorAIEnabled: StoryObj<typeof MetadataSidebarRed
|
|
|
425
425
|
},
|
|
426
426
|
};
|
|
427
427
|
|
|
428
|
+
export const MetadataInstanceEditorAIEnabledAdvancedExtractAgent: StoryObj<typeof MetadataSidebarRedesign> = {
|
|
429
|
+
args: {
|
|
430
|
+
features: {
|
|
431
|
+
...mockFeatures,
|
|
432
|
+
'metadata.aiSuggestions.enabled': true,
|
|
433
|
+
'metadata.extractAdvancedAgents.enabled': true,
|
|
434
|
+
},
|
|
435
|
+
},
|
|
436
|
+
play: async ({ canvasElement }) => {
|
|
437
|
+
const canvas = within(canvasElement);
|
|
438
|
+
// Edit one instance
|
|
439
|
+
const editButton = await canvas.findByRole('button', { name: 'Edit My Template' });
|
|
440
|
+
await userEvent.click(editButton);
|
|
441
|
+
|
|
442
|
+
// Find the SplitButton
|
|
443
|
+
const splitButton = await canvas.findByRole('button', { name: /Autofill/ });
|
|
444
|
+
expect(splitButton).toBeVisible();
|
|
445
|
+
|
|
446
|
+
await userEvent.hover(splitButton);
|
|
447
|
+
const dropdownButton = await canvas.findByRole('button', { name: 'See agent options.' });
|
|
448
|
+
expect(dropdownButton).toBeVisible();
|
|
449
|
+
},
|
|
450
|
+
};
|
|
451
|
+
|
|
428
452
|
export const ShowErrorWhenAIAPIIsUnavailable: StoryObj<typeof MetadataSidebarRedesign> = {
|
|
429
453
|
args: {
|
|
430
454
|
features: {
|
|
@@ -7,6 +7,11 @@ import { screen, render, within } from '../../../test-utils/testing-library';
|
|
|
7
7
|
import CascadePolicy from '../CascadePolicy';
|
|
8
8
|
|
|
9
9
|
describe('features/metadata-instance-editor/CascadePolicy', () => {
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
// reset any previous tests that may have set localStorage
|
|
12
|
+
localStorage.removeItem('aiAgent');
|
|
13
|
+
});
|
|
14
|
+
|
|
10
15
|
test('should correctly render cascade policy read only mode', () => {
|
|
11
16
|
const wrapper = shallow(<CascadePolicy id="fakeId" isCascadingEnabled shouldShowCascadeOptions />);
|
|
12
17
|
expect(wrapper).toMatchSnapshot();
|
|
@@ -100,12 +105,12 @@ describe('features/metadata-instance-editor/CascadePolicy', () => {
|
|
|
100
105
|
shouldShowCascadeOptions
|
|
101
106
|
/>,
|
|
102
107
|
);
|
|
103
|
-
expect(screen.getByRole('
|
|
108
|
+
expect(screen.getByRole('combobox', { name: 'Basic' })).toBeInTheDocument();
|
|
104
109
|
});
|
|
105
110
|
|
|
106
111
|
test('should not render AI agent selector when canUseAIFolderExtractionAgentSelector is false', () => {
|
|
107
112
|
render(<CascadePolicy canEdit canUseAIFolderExtraction shouldShowCascadeOptions />);
|
|
108
|
-
expect(screen.queryByRole('
|
|
113
|
+
expect(screen.queryByRole('combobox', { name: 'Basic' })).not.toBeInTheDocument();
|
|
109
114
|
});
|
|
110
115
|
});
|
|
111
116
|
|
|
@@ -863,7 +863,7 @@ describe('Instance Component - React Testing Library', () => {
|
|
|
863
863
|
const editButton = screen.queryByRole('button', { name: 'Edit Metadata' });
|
|
864
864
|
if (editButton) await userEvent.click(editButton); // Enter edit mode to ensure CascadePolicy options are visible
|
|
865
865
|
|
|
866
|
-
expect(screen.getByRole('
|
|
866
|
+
expect(screen.getByRole('combobox', { name: 'Basic' })).toBeInTheDocument();
|
|
867
867
|
});
|
|
868
868
|
|
|
869
869
|
test('should pass isExistingAIExtractionCascadePolicy=true to CascadePolicy if policy is ai_extract', async () => {
|
|
@@ -265,7 +265,7 @@ describe('Instances component - canUseAIFolderExtractionAgentSelector prop', ()
|
|
|
265
265
|
const editButton = screen.getByRole('button', { name: 'Edit Metadata' });
|
|
266
266
|
await userEvent.click(editButton);
|
|
267
267
|
|
|
268
|
-
expect(screen.getByRole('
|
|
268
|
+
expect(screen.getByRole('combobox', { name: 'Basic' })).toBeInTheDocument();
|
|
269
269
|
});
|
|
270
270
|
|
|
271
271
|
test('should not show agent selector in child Instance if canUseAIFolderExtractionAgentSelector is false', async () => {
|
|
@@ -280,7 +280,7 @@ describe('Instances component - canUseAIFolderExtractionAgentSelector prop', ()
|
|
|
280
280
|
const editButton = screen.getByRole('button', { name: 'Edit Metadata' });
|
|
281
281
|
await userEvent.click(editButton);
|
|
282
282
|
|
|
283
|
-
expect(screen.queryByRole('
|
|
283
|
+
expect(screen.queryByRole('combobox', { name: 'Basic' })).not.toBeInTheDocument();
|
|
284
284
|
});
|
|
285
285
|
|
|
286
286
|
test('should not show agent selector in child Instance if canUseAIFolderExtractionAgentSelector is undefined', async () => {
|
|
@@ -291,6 +291,6 @@ describe('Instances component - canUseAIFolderExtractionAgentSelector prop', ()
|
|
|
291
291
|
const editButton = screen.getByRole('button', { name: 'Edit Metadata' });
|
|
292
292
|
await userEvent.click(editButton);
|
|
293
293
|
|
|
294
|
-
expect(screen.queryByRole('
|
|
294
|
+
expect(screen.queryByRole('combobox', { name: 'Basic' })).not.toBeInTheDocument();
|
|
295
295
|
});
|
|
296
296
|
});
|
|
@@ -547,7 +547,7 @@ describe('MetadataInstanceEditor - canUseAIFolderExtractionAgentSelector prop',
|
|
|
547
547
|
const editButton = await screen.findByRole('button', { name: 'Edit Metadata' }, { timeout: 3000 });
|
|
548
548
|
await userEvent.click(editButton);
|
|
549
549
|
|
|
550
|
-
expect(screen.getByRole('
|
|
550
|
+
expect(screen.getByRole('combobox', { name: 'Basic' })).toBeInTheDocument();
|
|
551
551
|
});
|
|
552
552
|
|
|
553
553
|
test('should not show agent selector if canUseAIFolderExtractionAgentSelector is false', async () => {
|
|
@@ -562,7 +562,7 @@ describe('MetadataInstanceEditor - canUseAIFolderExtractionAgentSelector prop',
|
|
|
562
562
|
const editButton = await screen.findByRole('button', { name: 'Edit Metadata' });
|
|
563
563
|
await userEvent.click(editButton);
|
|
564
564
|
|
|
565
|
-
expect(screen.queryByRole('
|
|
565
|
+
expect(screen.queryByRole('combobox', { name: 'Basic' })).not.toBeInTheDocument();
|
|
566
566
|
});
|
|
567
567
|
|
|
568
568
|
test('should not show agent selector if canUseAIFolderExtractionAgentSelector is undefined', async () => {
|
|
@@ -573,6 +573,6 @@ describe('MetadataInstanceEditor - canUseAIFolderExtractionAgentSelector prop',
|
|
|
573
573
|
const editButton = await screen.findByRole('button', { name: 'Edit Metadata' });
|
|
574
574
|
await userEvent.click(editButton);
|
|
575
575
|
|
|
576
|
-
expect(screen.queryByRole('
|
|
576
|
+
expect(screen.queryByRole('combobox', { name: 'Basic' })).not.toBeInTheDocument();
|
|
577
577
|
});
|
|
578
578
|
});
|