box-ui-elements 23.3.0-beta.7 → 23.3.0
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.css +1 -1
- package/dist/picker.js +1 -1
- package/dist/preview.css +1 -1
- package/dist/preview.js +1 -1
- package/dist/sidebar.css +1 -1
- package/dist/sidebar.js +1 -1
- package/dist/uploader.css +1 -1
- package/dist/uploader.js +1 -1
- package/es/components/flyout/Flyout.js +3 -2
- package/es/components/flyout/Flyout.js.flow +3 -2
- package/es/components/flyout/Flyout.js.map +1 -1
- package/es/elements/content-explorer/stories/tests/MetadataView-visual.stories.js +2 -1
- package/es/elements/content-explorer/stories/tests/MetadataView-visual.stories.js.map +1 -1
- package/es/elements/content-sidebar/MetadataInstanceEditor.js.map +1 -1
- package/es/elements/content-sidebar/SidebarNav.js +2 -0
- package/es/elements/content-sidebar/SidebarNav.js.flow +2 -0
- package/es/elements/content-sidebar/SidebarNav.js.map +1 -1
- package/es/elements/content-sidebar/stories/MetadataSidebarRedesign.stories.js +2 -1
- package/es/elements/content-sidebar/stories/MetadataSidebarRedesign.stories.js.map +1 -1
- package/es/elements/content-sidebar/stories/tests/BoxAISidebar-visual.stories.js +2 -1
- package/es/elements/content-sidebar/stories/tests/BoxAISidebar-visual.stories.js.map +1 -1
- package/es/elements/content-sidebar/stories/tests/ContentSidebar-e2e.stories.js +2 -1
- package/es/elements/content-sidebar/stories/tests/ContentSidebar-e2e.stories.js.map +1 -1
- package/es/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.js +2 -1
- package/es/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.js.map +1 -1
- package/es/elements/content-uploader/IconInProgress.js +3 -2
- package/es/elements/content-uploader/IconInProgress.js.map +1 -1
- package/es/elements/content-uploader/ItemAction.js +4 -4
- package/es/elements/content-uploader/ItemAction.js.map +1 -1
- package/es/features/metadata-instance-editor/CascadePolicy.js +1 -0
- package/es/features/metadata-instance-editor/CascadePolicy.js.flow +1 -0
- package/es/features/metadata-instance-editor/CascadePolicy.js.map +1 -1
- package/es/icons/file-icon/FileIcon.js.map +1 -1
- package/es/src/elements/content-explorer/stories/tests/MetadataView-visual.stories.d.ts +7 -58
- package/es/src/elements/content-sidebar/MetadataInstanceEditor.d.ts +1 -1
- package/es/src/elements/content-sidebar/stories/MetadataSidebarRedesign.stories.d.ts +6 -22
- package/es/src/elements/content-sidebar/stories/__mocks__/TaxonomyMocks.d.ts +2 -1
- package/es/src/elements/content-sidebar/stories/tests/BoxAISidebar-visual.stories.d.ts +6 -50
- package/es/src/elements/content-sidebar/stories/tests/ContentSidebar-e2e.stories.d.ts +6 -21
- package/es/src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.d.ts +6 -25
- package/es/src/elements/content-uploader/IconInProgress.d.ts +2 -2
- package/package.json +5 -5
- package/src/components/flyout/Flyout.js +3 -2
- package/src/components/flyout/__tests__/Flyout.test.js +31 -20
- package/src/elements/content-explorer/stories/tests/MetadataView-visual.stories.tsx +8 -3
- package/src/elements/content-sidebar/MetadataInstanceEditor.tsx +1 -1
- package/src/elements/content-sidebar/SidebarNav.js +2 -0
- package/src/elements/content-sidebar/additional-tabs/__tests__/__snapshots__/AdditionalTab.test.js.snap +1 -1
- package/src/elements/content-sidebar/stories/MetadataSidebarRedesign.stories.tsx +5 -2
- package/src/elements/content-sidebar/stories/__mocks__/TaxonomyMocks.ts +2 -1
- package/src/elements/content-sidebar/stories/tests/BoxAISidebar-visual.stories.tsx +5 -2
- package/src/elements/content-sidebar/stories/tests/ContentSidebar-e2e.stories.tsx +5 -1
- package/src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.tsx +5 -2
- package/src/elements/content-uploader/IconInProgress.tsx +13 -9
- package/src/elements/content-uploader/ItemAction.tsx +9 -6
- package/src/features/metadata-instance-editor/CascadePolicy.js +1 -0
- package/src/icons/file-icon/FileIcon.tsx +4 -1
package/es/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataSidebarRedesign-visual.stories.js","names":["act","http","HttpResponse","expect","userEvent","waitFor","within","fn","screen","ContentSidebar","aiSuggestionForDateField","aiSuggestionsForMyAttribute","fileIdWithMetadata","fileIdWithoutMetadata","mockEmptyMetadataInstances","mockEnterpriseMetadataTemplates","mockErrorDeleteMyTemplateMetadataRequest","mockFileRequest","mockFileRequestWithoutMetadata","mockGlobalMetadataTemplates","mockMetadataInstances","mockUserRequest","mockMetadataTemplatesWithMultilevelTaxonomy","mockMetadataTemplatesWithSinglelevelTaxonomy","taxonomyMockHandlers","token","global","TOKEN","defaultMetadataArgs","fileId","isFeatureEnabled","onError","onSuccess","defaultMetadataSidebarProps","mockFeatures","mockLogger","onReadyMetric","endMarkName","console","log","AddTemplateDropdownMenuOn","play","canvasElement","canvas","addTemplateButton","findByRole","name","timeout","toBeInTheDocument","click","customMetadataOption","getByRole","toHaveAttribute","AddTemplateDropdownMenuOnEmpty","args","metadataSidebarProps","isBoxAiSuggestionsEnabled","isBetaLanguageEnabled","options","getAllByRole","toHaveLength","forEach","option","not","FilterInstancesDropdown","filterInstancesButton","firstOption","secondOption","thirdOption","headlines","findAllByRole","level","textContent","toEqual","defaultMockHandlers","get","url","json","response","AddingNewMetadataTemplate","templateHeader","UnsavedChangesModalWhenChoosingDifferentTemplate","myTemplateOption","unsavedChangesModal","EmptyStateWithBoxAiEnabled","_objectSpread","features","EmptyStateWithBoxAiDisabled","MetadataInstanceEditorWithDefinedTemplate","MetadataInstanceEditorWithCustomTemplate","MetadataInstanceEditorCancelChanges","editButton","map","heading","arrayContaining","cancelButton","DeleteButtonIsDisabledWhenAddingNewMetadataTemplate","deleteButton","toBeDisabled","DeleteButtonIsEnabledWhenEditingMetadataTemplateInstance","editMetadataInstanceButton","toBeEnabled","MetadataInstanceEditorAddTemplateAgainAfterCancel","templateMetadataOption","templateMetadataOptionDisabled","templateMetadataOptionEnabled","SwitchEditingTemplateInstances","input","type","templateMetadataOptionA","templateMetadataOptionB","unsavedChangesModalDiscardButton","newTemplateHeader","templateMetadataOptionAAfterSwitch","templateMetadataOptionBAfterSwitch","MetadataInstanceEditorAIEnabled","autofillWithBoxAI","autofillButton","ShowErrorWhenAIAPIIsUnavailable","parameters","msw","handlers","post","status","test","dangerouslyIgnoreUnhandledErrors","errorAlert","findByText","SuggestionsWhenAIAPIResponses","suggestion","replaceButton","getByLabelText","toHaveValue","SuggestionForNewlyCreatedTemplateInstance","ShowErrorOnDelete","delete","confirmModal","confirmInput","confirmButton","ViewMultilevelTaxonomy","multilevelOptionButton","multilevelDialog","ViewSinglelevelTaxonomy","singlelevelOptionButton","singlelevelDialog","EditMultilevelTaxonomy","multilevelInput","optionChip","listbox","expandButtons","hokkaidoOption","getByText","sapporoOption","sapporoSelection","EditSinglelevelTaxonomy","singlelevelInput","blueSelection","blueOption","redOption","greenOption","redSelection","title","component","hasMetadata","logger"],"sources":["../../../../../src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.tsx"],"sourcesContent":["import { act, type ComponentProps } from 'react';\nimport { http, HttpResponse } from 'msw';\nimport { expect, userEvent, waitFor, within, fn, screen } from '@storybook/test';\nimport { type StoryObj } from '@storybook/react';\nimport ContentSidebar from '../../ContentSidebar';\nimport MetadataSidebarRedesign from '../../MetadataSidebarRedesign';\nimport {\n aiSuggestionForDateField,\n aiSuggestionsForMyAttribute,\n fileIdWithMetadata,\n fileIdWithoutMetadata,\n mockEmptyMetadataInstances,\n mockEnterpriseMetadataTemplates,\n mockErrorDeleteMyTemplateMetadataRequest,\n mockFileRequest,\n mockFileRequestWithoutMetadata,\n mockGlobalMetadataTemplates,\n mockMetadataInstances,\n} from '../__mocks__/MetadataSidebarRedesignedMocks';\nimport { mockUserRequest } from '../../../common/__mocks__/mockRequests';\nimport {\n mockMetadataTemplatesWithMultilevelTaxonomy,\n mockMetadataTemplatesWithSinglelevelTaxonomy,\n taxonomyMockHandlers,\n} from '../__mocks__/TaxonomyMocks';\n\nconst token = global.TOKEN;\n\nconst defaultMetadataArgs = {\n fileId: fileIdWithMetadata,\n isFeatureEnabled: true,\n onError: fn(),\n onSuccess: fn(),\n};\nconst defaultMetadataSidebarProps: ComponentProps<typeof MetadataSidebarRedesign> = {\n isFeatureEnabled: true,\n onError: fn(),\n onSuccess: fn(),\n};\nconst mockFeatures = {\n 'metadata.redesign.enabled': true,\n};\nconst mockLogger = {\n onReadyMetric: ({ endMarkName }) => {\n // eslint-disable-next-line no-console\n console.log(`Logger: onReadyMetric called with endMarkName: ${endMarkName}`);\n },\n};\n\nexport const AddTemplateDropdownMenuOn = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' }, { timeout: 2000 });\n\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Custom Metadata' });\n expect(customMetadataOption).toBeInTheDocument();\n expect(customMetadataOption).toHaveAttribute('aria-disabled');\n },\n};\n\nexport const AddTemplateDropdownMenuOnEmpty = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: {\n isBoxAiSuggestionsEnabled: true,\n isBetaLanguageEnabled: false,\n isFeatureEnabled: true,\n onError: fn(),\n onSuccess: fn(),\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' }, { timeout: 2000 });\n\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const options = canvas.getAllByRole('option');\n expect(options).toHaveLength(5);\n options.forEach(option => {\n expect(option).not.toHaveAttribute('disabled');\n });\n },\n};\n\nexport const FilterInstancesDropdown = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n await waitFor(\n async () => {\n const filterInstancesButton = await canvas.findByRole('combobox');\n\n expect(filterInstancesButton).toBeInTheDocument();\n await userEvent.click(filterInstancesButton);\n\n const firstOption = canvas.getByRole('option', { name: 'My Template' });\n expect(firstOption).toBeInTheDocument();\n const secondOption = canvas.getByRole('option', { name: 'Select Dropdowns' });\n expect(secondOption).toBeInTheDocument();\n const thirdOption = canvas.getByRole('option', { name: 'Custom Metadata' });\n expect(thirdOption).toBeInTheDocument();\n\n await userEvent.click(firstOption);\n\n const headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(1);\n expect(headlines[0].textContent).toEqual('My Template');\n },\n { timeout: 2000 },\n );\n },\n};\n\nconst defaultMockHandlers = [\n http.get(mockUserRequest.url, () => {\n return HttpResponse.json(mockUserRequest.response);\n }),\n http.get(mockFileRequest.url, () => {\n return HttpResponse.json(mockFileRequest.response);\n }),\n http.get(mockFileRequestWithoutMetadata.url, () => {\n return HttpResponse.json(mockFileRequestWithoutMetadata.response);\n }),\n http.get(mockMetadataInstances.url, () => {\n return HttpResponse.json(mockMetadataInstances.response);\n }),\n http.get(mockGlobalMetadataTemplates.url, () => {\n return HttpResponse.json(mockGlobalMetadataTemplates.response);\n }),\n http.get(mockEmptyMetadataInstances.url, () => {\n return HttpResponse.json(mockEmptyMetadataInstances.response);\n }),\n http.get(mockEnterpriseMetadataTemplates.url, () => {\n return HttpResponse.json(mockEnterpriseMetadataTemplates.response);\n }),\n];\n\nexport const AddingNewMetadataTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Virus Scan' });\n expect(customMetadataOption).toBeInTheDocument();\n await userEvent.click(customMetadataOption);\n\n const templateHeader = await canvas.findByRole('heading', { name: 'Virus Scan' });\n expect(templateHeader).toBeInTheDocument();\n },\n};\n\nexport const UnsavedChangesModalWhenChoosingDifferentTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Virus Scan' });\n expect(customMetadataOption).toBeInTheDocument();\n await userEvent.click(customMetadataOption);\n\n await userEvent.click(addTemplateButton);\n const myTemplateOption = canvas.getByRole('option', { name: 'My Template' });\n expect(myTemplateOption).toBeInTheDocument();\n await userEvent.click(myTemplateOption);\n\n const unsavedChangesModal = await screen.findByRole(\n 'heading',\n { level: 2, name: 'Unsaved Changes' },\n { timeout: 5000 },\n );\n expect(unsavedChangesModal).toBeInTheDocument();\n },\n};\n\nexport const EmptyStateWithBoxAiEnabled: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: {\n ...defaultMetadataSidebarProps,\n },\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n};\n\nexport const EmptyStateWithBoxAiDisabled: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: {\n ...defaultMetadataSidebarProps,\n isBoxAiSuggestionsEnabled: false,\n isBetaLanguageEnabled: false,\n },\n },\n};\n\nexport const MetadataInstanceEditorWithDefinedTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'My Template' });\n await userEvent.click(customMetadataOption);\n },\n};\n\nexport const MetadataInstanceEditorWithCustomTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' }, { timeout: 2000 });\n await act(async () => {\n await userEvent.click(addTemplateButton);\n });\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Custom Metadata' });\n await act(async () => {\n await userEvent.click(customMetadataOption);\n });\n },\n};\n\nexport const MetadataInstanceEditorCancelChanges: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n // Edit buttons contains also template name\n const editButton = await canvas.findByRole('button', { name: 'Edit My Template' });\n expect(editButton).toBeInTheDocument();\n\n let headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(3);\n expect(headlines.map(heading => heading.textContent)).toEqual(\n expect.arrayContaining(['My Template', 'Select Dropdowns', 'Custom Metadata']),\n );\n\n // go to edit mode - only edited template is visible\n await userEvent.click(editButton);\n\n headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(1);\n expect(headlines.map(heading => heading.textContent)).toEqual(expect.arrayContaining(['My Template']));\n\n // cancel editing - back to list view\n const cancelButton = await canvas.findByRole('button', { name: 'Cancel' });\n await userEvent.click(cancelButton);\n\n headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(3);\n expect(headlines.map(heading => heading.textContent)).toEqual(\n expect.arrayContaining(['My Template', 'Select Dropdowns', 'Custom Metadata']),\n );\n },\n};\n\nexport const DeleteButtonIsDisabledWhenAddingNewMetadataTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await act(async () => {\n await userEvent.click(addTemplateButton);\n });\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Virus Scan' });\n expect(customMetadataOption).toBeInTheDocument();\n await act(async () => {\n await userEvent.click(customMetadataOption);\n });\n\n const deleteButton = await canvas.findByRole('button', { name: 'Delete' });\n expect(deleteButton).toBeDisabled();\n },\n};\n\nexport const DeleteButtonIsEnabledWhenEditingMetadataTemplateInstance: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editMetadataInstanceButton = await canvas.findByRole('button', { name: 'Edit My Template' });\n expect(editMetadataInstanceButton).toBeInTheDocument();\n await userEvent.click(editMetadataInstanceButton);\n\n const deleteButton = await canvas.findByRole('button', { name: 'Delete' });\n expect(deleteButton).toBeEnabled();\n },\n};\n\nexport const MetadataInstanceEditorAddTemplateAgainAfterCancel: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOption = canvas.getByRole('option', { name: 'My Template' });\n expect(templateMetadataOption).not.toHaveAttribute('aria-disabled');\n await userEvent.click(templateMetadataOption);\n\n // Check if currently open template is disabled in dropdown\n await userEvent.click(addTemplateButton);\n const templateMetadataOptionDisabled = canvas.getByRole('option', { name: 'My Template' });\n expect(templateMetadataOptionDisabled).toHaveAttribute('aria-disabled');\n\n // Check if template available again after cancelling\n const cancelButton = await canvas.findByRole('button', { name: 'Cancel' });\n await userEvent.click(cancelButton);\n await userEvent.click(addTemplateButton);\n const templateMetadataOptionEnabled = canvas.getByRole('option', { name: 'My Template' });\n expect(templateMetadataOptionEnabled).not.toHaveAttribute('aria-disabled');\n },\n};\n\nexport const SwitchEditingTemplateInstances: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: '416047501580',\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n // open and edit a new template\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOption = canvas.getByRole('option', { name: 'My Template' });\n\n await userEvent.click(templateMetadataOption);\n\n const input = await canvas.findByRole('textbox');\n\n await userEvent.type(input, 'Lorem ipsum dolor.');\n\n // open another template while editing the first one (with discarding changes)\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOptionA = canvas.getByRole('option', { name: 'My Template' });\n const templateMetadataOptionB = canvas.getByRole('option', { name: 'Virus Scan' });\n\n expect(templateMetadataOptionA).toHaveAttribute('aria-disabled');\n expect(templateMetadataOptionB).not.toHaveAttribute('aria-disabled');\n\n await userEvent.click(templateMetadataOptionB);\n\n const unsavedChangesModal = await screen.findByRole(\n 'heading',\n { level: 2, name: 'Unsaved Changes' },\n { timeout: 5000 },\n );\n expect(unsavedChangesModal).toBeInTheDocument();\n\n const unsavedChangesModalDiscardButton = await screen.findByRole('button', { name: 'Discard Changes' });\n\n await userEvent.click(unsavedChangesModalDiscardButton);\n\n const newTemplateHeader = await canvas.findByRole('heading', { name: 'Virus Scan' });\n expect(newTemplateHeader).toBeInTheDocument();\n\n // check if template buttons disabled correctly after switching editors\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOptionAAfterSwitch = canvas.getByRole('option', { name: 'My Template' });\n const templateMetadataOptionBAfterSwitch = canvas.getByRole('option', { name: 'Virus Scan' });\n\n expect(templateMetadataOptionAAfterSwitch).not.toHaveAttribute('aria-disabled');\n expect(templateMetadataOptionBAfterSwitch).toHaveAttribute('aria-disabled');\n },\n};\n\nexport const MetadataInstanceEditorAIEnabled: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const autofillWithBoxAI = await canvas.findAllByRole('button', { name: /Autofill .+ with Box AI/ });\n expect(autofillWithBoxAI).toHaveLength(2);\n\n const editButton = await canvas.findByRole('button', { name: 'Edit My Template' });\n await userEvent.click(editButton);\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill' });\n expect(autofillButton).toBeInTheDocument();\n },\n};\n\nexport const ShowErrorWhenAIAPIIsUnavailable: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.post(aiSuggestionsForMyAttribute.url, () => {\n return new HttpResponse('Not Found', { status: 404 });\n }),\n ],\n },\n test: {\n dangerouslyIgnoreUnhandledErrors: true,\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill My Template with Box AI' });\n await userEvent.click(autofillButton);\n\n const errorAlert = await canvas.findByText('We’re sorry, something went wrong.');\n expect(errorAlert).toBeInTheDocument();\n },\n};\n\nexport const SuggestionsWhenAIAPIResponses: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.post(aiSuggestionsForMyAttribute.url, () =>\n HttpResponse.json(aiSuggestionsForMyAttribute.response),\n ),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill My Template with Box AI' });\n userEvent.click(autofillButton);\n\n const suggestion = await canvas.findByText('it works fine');\n expect(suggestion).toBeInTheDocument();\n\n const replaceButton = await canvas.findByRole('button', { name: 'Clear and Replace' });\n expect(replaceButton).toBeInTheDocument();\n\n await userEvent.click(replaceButton);\n\n const input = canvas.getByLabelText('My Attribute');\n expect(input).toHaveValue('it works fine');\n },\n};\n\nexport const SuggestionForNewlyCreatedTemplateInstance: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.post(aiSuggestionsForMyAttribute.url, () => HttpResponse.json(aiSuggestionForDateField.response)),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Date Template' });\n expect(customMetadataOption).toBeInTheDocument();\n await userEvent.click(customMetadataOption);\n\n const templateHeader = await canvas.findByRole('heading', { name: 'Date Template' });\n expect(templateHeader).toBeInTheDocument();\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill' });\n userEvent.click(autofillButton);\n\n const suggestion = await canvas.findByText('4/1/2024');\n expect(suggestion).toBeInTheDocument();\n },\n};\n\nexport const ShowErrorOnDelete: StoryObj<typeof MetadataSidebarRedesign> = {\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.delete(mockErrorDeleteMyTemplateMetadataRequest.url, () => {\n return HttpResponse.json(mockErrorDeleteMyTemplateMetadataRequest.response, { status: 404 });\n }),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editButton = await canvas.findByRole('button', { name: 'Edit My Template' }, { timeout: 2000 });\n await userEvent.click(editButton);\n\n const deleteButton = await canvas.findByRole('button', { name: 'Delete' });\n await userEvent.click(deleteButton);\n\n const confirmModal = await screen.findByRole('dialog', { name: /delete.+/i }, { timeout: 2000 });\n\n const confirmInput = within(confirmModal).getByRole('textbox');\n await userEvent.type(confirmInput, 'My Template');\n\n const confirmButton = within(confirmModal).getByRole('button', { name: 'Confirm' });\n await userEvent.click(confirmButton);\n\n const errorAlert = await canvas.findByText(\n 'An error has occurred while updating metadata. Please refresh the page and try again.',\n );\n expect(errorAlert).toBeInTheDocument();\n },\n};\n\nexport const ViewMultilevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.multilevelTaxonomy.enabled': true,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...taxonomyMockHandlers,\n http.get(mockMetadataTemplatesWithMultilevelTaxonomy.url, () => {\n return HttpResponse.json(mockMetadataTemplatesWithMultilevelTaxonomy.response);\n }),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n await waitFor(async () => {\n const multilevelOptionButton = canvas.getByRole('button', { name: 'London' });\n\n expect(multilevelOptionButton).toBeInTheDocument();\n\n await userEvent.click(multilevelOptionButton);\n\n const multilevelDialog = screen.getByRole('dialog');\n\n expect(multilevelDialog).toBeInTheDocument();\n });\n },\n};\n\nexport const ViewSinglelevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n parameters: {\n msw: {\n handlers: [\n ...taxonomyMockHandlers,\n http.get(mockMetadataTemplatesWithSinglelevelTaxonomy.url, () => {\n return HttpResponse.json(mockMetadataTemplatesWithSinglelevelTaxonomy.response);\n }),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n await waitFor(async () => {\n const singlelevelOptionButton = canvas.getByRole('button', { name: 'Blue' });\n\n expect(singlelevelOptionButton).toBeInTheDocument();\n\n await userEvent.click(singlelevelOptionButton);\n\n const singlelevelDialog = screen.getByRole('dialog');\n\n expect(singlelevelDialog).toBeInTheDocument();\n });\n },\n};\n\nexport const EditMultilevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n ...ViewMultilevelTaxonomy,\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editButton = await waitFor(() => canvas.getByRole('button', { name: 'Edit My Taxonomy' }));\n\n await userEvent.click(editButton);\n\n const multilevelInput = canvas.getByRole('combobox');\n const optionChip = canvas.getByRole('button', { name: 'London' });\n\n expect(multilevelInput).toBeInTheDocument();\n expect(optionChip).toBeInTheDocument();\n\n await userEvent.click(multilevelInput);\n\n const listbox = await waitFor(() => canvas.getByRole('listbox'));\n expect(listbox).toBeInTheDocument();\n\n let expandButtons = await waitFor(() => canvas.getAllByRole('button', { name: 'Expand branch' }));\n\n await userEvent.click(expandButtons[1]);\n\n const hokkaidoOption = await waitFor(() => canvas.getByText('Hokkaido'));\n expect(hokkaidoOption).toBeInTheDocument();\n\n expandButtons = await waitFor(() => screen.getAllByRole('button', { name: 'Expand branch' }));\n\n await userEvent.click(expandButtons[2]);\n\n const sapporoOption = await waitFor(() => canvas.getByRole('treeitem', { name: 'Sapporo' }));\n\n expect(sapporoOption).toBeInTheDocument();\n expect(sapporoOption).toHaveAttribute('aria-selected', 'false');\n\n await userEvent.click(sapporoOption);\n\n const sapporoSelection = await waitFor(() => canvas.getByRole('gridcell', { name: 'Sapporo' }));\n\n expect(sapporoOption).toBeInTheDocument();\n expect(sapporoOption).toHaveAttribute('aria-selected', 'true');\n expect(sapporoSelection).toBeInTheDocument();\n },\n};\n\nexport const EditSinglelevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n ...ViewSinglelevelTaxonomy,\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editButton = await waitFor(() => canvas.getByRole('button', { name: 'Edit My Taxonomy' }));\n\n await userEvent.click(editButton);\n\n const singlelevelInput = canvas.getByRole('combobox');\n const blueSelection = canvas.getByRole('gridcell', { name: 'Blue' });\n\n expect(singlelevelInput).toBeInTheDocument();\n expect(blueSelection).toBeInTheDocument();\n\n await userEvent.click(singlelevelInput);\n\n const listbox = await waitFor(() => canvas.getByRole('listbox'));\n expect(listbox).toBeInTheDocument();\n\n const blueOption = await waitFor(() => canvas.getByRole('option', { name: 'Blue' }));\n const redOption = await waitFor(() => canvas.getByRole('option', { name: 'Red' }));\n const greenOption = await waitFor(() => canvas.getByRole('option', { name: 'Green' }));\n\n expect(blueOption).toBeInTheDocument();\n expect(redOption).toBeInTheDocument();\n expect(greenOption).toBeInTheDocument();\n expect(blueOption).toHaveAttribute('aria-selected', 'true');\n expect(redOption).toHaveAttribute('aria-selected', 'false');\n expect(greenOption).toHaveAttribute('aria-selected', 'false');\n\n await userEvent.click(redOption);\n\n const redSelection = await waitFor(() => canvas.getByRole('gridcell', { name: 'Red' }));\n\n expect(redSelection).toBeInTheDocument();\n expect(blueSelection).toBeInTheDocument();\n expect(blueOption).toBeInTheDocument();\n expect(redOption).toBeInTheDocument();\n expect(greenOption).toBeInTheDocument();\n expect(blueOption).toHaveAttribute('aria-selected', 'true');\n expect(redOption).toHaveAttribute('aria-selected', 'true');\n expect(greenOption).toHaveAttribute('aria-selected', 'false');\n },\n};\n\nexport default {\n title: 'Elements/ContentSidebar/MetadataSidebarRedesign/tests/visual-regression-tests',\n component: ContentSidebar,\n args: {\n token,\n metadataSidebarProps: {\n ...defaultMetadataArgs,\n },\n hasMetadata: true,\n features: mockFeatures,\n fileId: fileIdWithMetadata,\n logger: mockLogger,\n },\n parameters: {\n msw: {\n handlers: defaultMockHandlers,\n },\n },\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"MetadataSidebarRedesign-visual.stories.js","names":["act","http","HttpResponse","expect","userEvent","waitFor","within","fn","screen","ContentSidebar","aiSuggestionForDateField","aiSuggestionsForMyAttribute","fileIdWithMetadata","fileIdWithoutMetadata","mockEmptyMetadataInstances","mockEnterpriseMetadataTemplates","mockErrorDeleteMyTemplateMetadataRequest","mockFileRequest","mockFileRequestWithoutMetadata","mockGlobalMetadataTemplates","mockMetadataInstances","mockUserRequest","mockMetadataTemplatesWithMultilevelTaxonomy","mockMetadataTemplatesWithSinglelevelTaxonomy","taxonomyMockHandlers","token","global","TOKEN","defaultMetadataArgs","fileId","isFeatureEnabled","onError","onSuccess","defaultMetadataSidebarProps","mockFeatures","mockLogger","onReadyMetric","endMarkName","console","log","AddTemplateDropdownMenuOn","play","canvasElement","canvas","addTemplateButton","findByRole","name","timeout","toBeInTheDocument","click","customMetadataOption","getByRole","toHaveAttribute","AddTemplateDropdownMenuOnEmpty","args","metadataSidebarProps","isBoxAiSuggestionsEnabled","isBetaLanguageEnabled","options","getAllByRole","toHaveLength","forEach","option","not","FilterInstancesDropdown","filterInstancesButton","firstOption","secondOption","thirdOption","headlines","findAllByRole","level","textContent","toEqual","defaultMockHandlers","get","url","json","response","AddingNewMetadataTemplate","templateHeader","UnsavedChangesModalWhenChoosingDifferentTemplate","myTemplateOption","unsavedChangesModal","EmptyStateWithBoxAiEnabled","_objectSpread","features","EmptyStateWithBoxAiDisabled","MetadataInstanceEditorWithDefinedTemplate","MetadataInstanceEditorWithCustomTemplate","MetadataInstanceEditorCancelChanges","editButton","map","heading","arrayContaining","cancelButton","DeleteButtonIsDisabledWhenAddingNewMetadataTemplate","deleteButton","toBeDisabled","DeleteButtonIsEnabledWhenEditingMetadataTemplateInstance","editMetadataInstanceButton","toBeEnabled","MetadataInstanceEditorAddTemplateAgainAfterCancel","templateMetadataOption","templateMetadataOptionDisabled","templateMetadataOptionEnabled","SwitchEditingTemplateInstances","input","type","templateMetadataOptionA","templateMetadataOptionB","unsavedChangesModalDiscardButton","newTemplateHeader","templateMetadataOptionAAfterSwitch","templateMetadataOptionBAfterSwitch","MetadataInstanceEditorAIEnabled","autofillWithBoxAI","autofillButton","ShowErrorWhenAIAPIIsUnavailable","parameters","msw","handlers","post","status","test","dangerouslyIgnoreUnhandledErrors","errorAlert","findByText","SuggestionsWhenAIAPIResponses","suggestion","replaceButton","getByLabelText","toHaveValue","SuggestionForNewlyCreatedTemplateInstance","ShowErrorOnDelete","delete","confirmModal","confirmInput","confirmButton","ViewMultilevelTaxonomy","multilevelOptionButton","multilevelDialog","ViewSinglelevelTaxonomy","singlelevelOptionButton","singlelevelDialog","EditMultilevelTaxonomy","multilevelInput","optionChip","listbox","expandButtons","hokkaidoOption","getByText","sapporoOption","sapporoSelection","EditSinglelevelTaxonomy","singlelevelInput","blueSelection","blueOption","redOption","greenOption","redSelection","meta","title","component","hasMetadata","logger"],"sources":["../../../../../src/elements/content-sidebar/stories/tests/MetadataSidebarRedesign-visual.stories.tsx"],"sourcesContent":["import { act, type ComponentProps } from 'react';\nimport { http, HttpResponse } from 'msw';\nimport { expect, userEvent, waitFor, within, fn, screen } from '@storybook/test';\nimport { type StoryObj, Meta } from '@storybook/react';\nimport type { HttpHandler } from 'msw';\nimport ContentSidebar from '../../ContentSidebar';\nimport MetadataSidebarRedesign from '../../MetadataSidebarRedesign';\nimport {\n aiSuggestionForDateField,\n aiSuggestionsForMyAttribute,\n fileIdWithMetadata,\n fileIdWithoutMetadata,\n mockEmptyMetadataInstances,\n mockEnterpriseMetadataTemplates,\n mockErrorDeleteMyTemplateMetadataRequest,\n mockFileRequest,\n mockFileRequestWithoutMetadata,\n mockGlobalMetadataTemplates,\n mockMetadataInstances,\n} from '../__mocks__/MetadataSidebarRedesignedMocks';\nimport { mockUserRequest } from '../../../common/__mocks__/mockRequests';\nimport {\n mockMetadataTemplatesWithMultilevelTaxonomy,\n mockMetadataTemplatesWithSinglelevelTaxonomy,\n taxonomyMockHandlers,\n} from '../__mocks__/TaxonomyMocks';\n\nconst token = global.TOKEN;\n\nconst defaultMetadataArgs = {\n fileId: fileIdWithMetadata,\n isFeatureEnabled: true,\n onError: fn(),\n onSuccess: fn(),\n};\nconst defaultMetadataSidebarProps: ComponentProps<typeof MetadataSidebarRedesign> = {\n isFeatureEnabled: true,\n onError: fn(),\n onSuccess: fn(),\n};\nconst mockFeatures = {\n 'metadata.redesign.enabled': true,\n};\nconst mockLogger = {\n onReadyMetric: ({ endMarkName }) => {\n // eslint-disable-next-line no-console\n console.log(`Logger: onReadyMetric called with endMarkName: ${endMarkName}`);\n },\n};\n\nexport const AddTemplateDropdownMenuOn = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' }, { timeout: 2000 });\n\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Custom Metadata' });\n expect(customMetadataOption).toBeInTheDocument();\n expect(customMetadataOption).toHaveAttribute('aria-disabled');\n },\n};\n\nexport const AddTemplateDropdownMenuOnEmpty = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: {\n isBoxAiSuggestionsEnabled: true,\n isBetaLanguageEnabled: false,\n isFeatureEnabled: true,\n onError: fn(),\n onSuccess: fn(),\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' }, { timeout: 2000 });\n\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const options = canvas.getAllByRole('option');\n expect(options).toHaveLength(5);\n options.forEach(option => {\n expect(option).not.toHaveAttribute('disabled');\n });\n },\n};\n\nexport const FilterInstancesDropdown = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n await waitFor(\n async () => {\n const filterInstancesButton = await canvas.findByRole('combobox');\n\n expect(filterInstancesButton).toBeInTheDocument();\n await userEvent.click(filterInstancesButton);\n\n const firstOption = canvas.getByRole('option', { name: 'My Template' });\n expect(firstOption).toBeInTheDocument();\n const secondOption = canvas.getByRole('option', { name: 'Select Dropdowns' });\n expect(secondOption).toBeInTheDocument();\n const thirdOption = canvas.getByRole('option', { name: 'Custom Metadata' });\n expect(thirdOption).toBeInTheDocument();\n\n await userEvent.click(firstOption);\n\n const headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(1);\n expect(headlines[0].textContent).toEqual('My Template');\n },\n { timeout: 2000 },\n );\n },\n};\n\nconst defaultMockHandlers = [\n http.get(mockUserRequest.url, () => {\n return HttpResponse.json(mockUserRequest.response);\n }),\n http.get(mockFileRequest.url, () => {\n return HttpResponse.json(mockFileRequest.response);\n }),\n http.get(mockFileRequestWithoutMetadata.url, () => {\n return HttpResponse.json(mockFileRequestWithoutMetadata.response);\n }),\n http.get(mockMetadataInstances.url, () => {\n return HttpResponse.json(mockMetadataInstances.response);\n }),\n http.get(mockGlobalMetadataTemplates.url, () => {\n return HttpResponse.json(mockGlobalMetadataTemplates.response);\n }),\n http.get(mockEmptyMetadataInstances.url, () => {\n return HttpResponse.json(mockEmptyMetadataInstances.response);\n }),\n http.get(mockEnterpriseMetadataTemplates.url, () => {\n return HttpResponse.json(mockEnterpriseMetadataTemplates.response);\n }),\n];\n\nexport const AddingNewMetadataTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Virus Scan' });\n expect(customMetadataOption).toBeInTheDocument();\n await userEvent.click(customMetadataOption);\n\n const templateHeader = await canvas.findByRole('heading', { name: 'Virus Scan' });\n expect(templateHeader).toBeInTheDocument();\n },\n};\n\nexport const UnsavedChangesModalWhenChoosingDifferentTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Virus Scan' });\n expect(customMetadataOption).toBeInTheDocument();\n await userEvent.click(customMetadataOption);\n\n await userEvent.click(addTemplateButton);\n const myTemplateOption = canvas.getByRole('option', { name: 'My Template' });\n expect(myTemplateOption).toBeInTheDocument();\n await userEvent.click(myTemplateOption);\n\n const unsavedChangesModal = await screen.findByRole(\n 'heading',\n { level: 2, name: 'Unsaved Changes' },\n { timeout: 5000 },\n );\n expect(unsavedChangesModal).toBeInTheDocument();\n },\n};\n\nexport const EmptyStateWithBoxAiEnabled: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: {\n ...defaultMetadataSidebarProps,\n },\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n};\n\nexport const EmptyStateWithBoxAiDisabled: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: {\n ...defaultMetadataSidebarProps,\n isBoxAiSuggestionsEnabled: false,\n isBetaLanguageEnabled: false,\n },\n },\n};\n\nexport const MetadataInstanceEditorWithDefinedTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'My Template' });\n await userEvent.click(customMetadataOption);\n },\n};\n\nexport const MetadataInstanceEditorWithCustomTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' }, { timeout: 2000 });\n await act(async () => {\n await userEvent.click(addTemplateButton);\n });\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Custom Metadata' });\n await act(async () => {\n await userEvent.click(customMetadataOption);\n });\n },\n};\n\nexport const MetadataInstanceEditorCancelChanges: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n // Edit buttons contains also template name\n const editButton = await canvas.findByRole('button', { name: 'Edit My Template' });\n expect(editButton).toBeInTheDocument();\n\n let headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(3);\n expect(headlines.map(heading => heading.textContent)).toEqual(\n expect.arrayContaining(['My Template', 'Select Dropdowns', 'Custom Metadata']),\n );\n\n // go to edit mode - only edited template is visible\n await userEvent.click(editButton);\n\n headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(1);\n expect(headlines.map(heading => heading.textContent)).toEqual(expect.arrayContaining(['My Template']));\n\n // cancel editing - back to list view\n const cancelButton = await canvas.findByRole('button', { name: 'Cancel' });\n await userEvent.click(cancelButton);\n\n headlines = await canvas.findAllByRole('heading', { level: 4 });\n expect(headlines).toHaveLength(3);\n expect(headlines.map(heading => heading.textContent)).toEqual(\n expect.arrayContaining(['My Template', 'Select Dropdowns', 'Custom Metadata']),\n );\n },\n};\n\nexport const DeleteButtonIsDisabledWhenAddingNewMetadataTemplate: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await act(async () => {\n await userEvent.click(addTemplateButton);\n });\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Virus Scan' });\n expect(customMetadataOption).toBeInTheDocument();\n await act(async () => {\n await userEvent.click(customMetadataOption);\n });\n\n const deleteButton = await canvas.findByRole('button', { name: 'Delete' });\n expect(deleteButton).toBeDisabled();\n },\n};\n\nexport const DeleteButtonIsEnabledWhenEditingMetadataTemplateInstance: StoryObj<typeof MetadataSidebarRedesign> = {\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editMetadataInstanceButton = await canvas.findByRole('button', { name: 'Edit My Template' });\n expect(editMetadataInstanceButton).toBeInTheDocument();\n await userEvent.click(editMetadataInstanceButton);\n\n const deleteButton = await canvas.findByRole('button', { name: 'Delete' });\n expect(deleteButton).toBeEnabled();\n },\n};\n\nexport const MetadataInstanceEditorAddTemplateAgainAfterCancel: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: fileIdWithoutMetadata,\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOption = canvas.getByRole('option', { name: 'My Template' });\n expect(templateMetadataOption).not.toHaveAttribute('aria-disabled');\n await userEvent.click(templateMetadataOption);\n\n // Check if currently open template is disabled in dropdown\n await userEvent.click(addTemplateButton);\n const templateMetadataOptionDisabled = canvas.getByRole('option', { name: 'My Template' });\n expect(templateMetadataOptionDisabled).toHaveAttribute('aria-disabled');\n\n // Check if template available again after cancelling\n const cancelButton = await canvas.findByRole('button', { name: 'Cancel' });\n await userEvent.click(cancelButton);\n await userEvent.click(addTemplateButton);\n const templateMetadataOptionEnabled = canvas.getByRole('option', { name: 'My Template' });\n expect(templateMetadataOptionEnabled).not.toHaveAttribute('aria-disabled');\n },\n};\n\nexport const SwitchEditingTemplateInstances: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n fileId: '416047501580',\n metadataSidebarProps: defaultMetadataSidebarProps,\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n // open and edit a new template\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOption = canvas.getByRole('option', { name: 'My Template' });\n\n await userEvent.click(templateMetadataOption);\n\n const input = await canvas.findByRole('textbox');\n\n await userEvent.type(input, 'Lorem ipsum dolor.');\n\n // open another template while editing the first one (with discarding changes)\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOptionA = canvas.getByRole('option', { name: 'My Template' });\n const templateMetadataOptionB = canvas.getByRole('option', { name: 'Virus Scan' });\n\n expect(templateMetadataOptionA).toHaveAttribute('aria-disabled');\n expect(templateMetadataOptionB).not.toHaveAttribute('aria-disabled');\n\n await userEvent.click(templateMetadataOptionB);\n\n const unsavedChangesModal = await screen.findByRole(\n 'heading',\n { level: 2, name: 'Unsaved Changes' },\n { timeout: 5000 },\n );\n expect(unsavedChangesModal).toBeInTheDocument();\n\n const unsavedChangesModalDiscardButton = await screen.findByRole('button', { name: 'Discard Changes' });\n\n await userEvent.click(unsavedChangesModalDiscardButton);\n\n const newTemplateHeader = await canvas.findByRole('heading', { name: 'Virus Scan' });\n expect(newTemplateHeader).toBeInTheDocument();\n\n // check if template buttons disabled correctly after switching editors\n await userEvent.click(addTemplateButton);\n\n const templateMetadataOptionAAfterSwitch = canvas.getByRole('option', { name: 'My Template' });\n const templateMetadataOptionBAfterSwitch = canvas.getByRole('option', { name: 'Virus Scan' });\n\n expect(templateMetadataOptionAAfterSwitch).not.toHaveAttribute('aria-disabled');\n expect(templateMetadataOptionBAfterSwitch).toHaveAttribute('aria-disabled');\n },\n};\n\nexport const MetadataInstanceEditorAIEnabled: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const autofillWithBoxAI = await canvas.findAllByRole('button', { name: /Autofill .+ with Box AI/ });\n expect(autofillWithBoxAI).toHaveLength(2);\n\n const editButton = await canvas.findByRole('button', { name: 'Edit My Template' });\n await userEvent.click(editButton);\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill' });\n expect(autofillButton).toBeInTheDocument();\n },\n};\n\nexport const ShowErrorWhenAIAPIIsUnavailable: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.post(aiSuggestionsForMyAttribute.url, () => {\n return new HttpResponse('Not Found', { status: 404 });\n }),\n ],\n },\n test: {\n dangerouslyIgnoreUnhandledErrors: true,\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill My Template with Box AI' });\n await userEvent.click(autofillButton);\n\n const errorAlert = await canvas.findByText('We’re sorry, something went wrong.');\n expect(errorAlert).toBeInTheDocument();\n },\n};\n\nexport const SuggestionsWhenAIAPIResponses: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.post(aiSuggestionsForMyAttribute.url, () =>\n HttpResponse.json(aiSuggestionsForMyAttribute.response),\n ),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill My Template with Box AI' });\n userEvent.click(autofillButton);\n\n const suggestion = await canvas.findByText('it works fine');\n expect(suggestion).toBeInTheDocument();\n\n const replaceButton = await canvas.findByRole('button', { name: 'Clear and Replace' });\n expect(replaceButton).toBeInTheDocument();\n\n await userEvent.click(replaceButton);\n\n const input = canvas.getByLabelText('My Attribute');\n expect(input).toHaveValue('it works fine');\n },\n};\n\nexport const SuggestionForNewlyCreatedTemplateInstance: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.aiSuggestions.enabled': true,\n 'metadata.betalanguage.enabled': false,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.post(aiSuggestionsForMyAttribute.url, () => HttpResponse.json(aiSuggestionForDateField.response)),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const addTemplateButton = await canvas.findByRole('button', { name: 'Add template' });\n expect(addTemplateButton).toBeInTheDocument();\n await userEvent.click(addTemplateButton);\n\n const customMetadataOption = canvas.getByRole('option', { name: 'Date Template' });\n expect(customMetadataOption).toBeInTheDocument();\n await userEvent.click(customMetadataOption);\n\n const templateHeader = await canvas.findByRole('heading', { name: 'Date Template' });\n expect(templateHeader).toBeInTheDocument();\n\n const autofillButton = await canvas.findByRole('button', { name: 'Autofill' });\n userEvent.click(autofillButton);\n\n const suggestion = await canvas.findByText('4/1/2024');\n expect(suggestion).toBeInTheDocument();\n },\n};\n\nexport const ShowErrorOnDelete: StoryObj<typeof MetadataSidebarRedesign> = {\n parameters: {\n msw: {\n handlers: [\n ...defaultMockHandlers,\n http.delete(mockErrorDeleteMyTemplateMetadataRequest.url, () => {\n return HttpResponse.json(mockErrorDeleteMyTemplateMetadataRequest.response, { status: 404 });\n }),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editButton = await canvas.findByRole('button', { name: 'Edit My Template' }, { timeout: 2000 });\n await userEvent.click(editButton);\n\n const deleteButton = await canvas.findByRole('button', { name: 'Delete' });\n await userEvent.click(deleteButton);\n\n const confirmModal = await screen.findByRole('dialog', { name: /delete.+/i }, { timeout: 2000 });\n\n const confirmInput = within(confirmModal).getByRole('textbox');\n await userEvent.type(confirmInput, 'My Template');\n\n const confirmButton = within(confirmModal).getByRole('button', { name: 'Confirm' });\n await userEvent.click(confirmButton);\n\n const errorAlert = await canvas.findByText(\n 'An error has occurred while updating metadata. Please refresh the page and try again.',\n );\n expect(errorAlert).toBeInTheDocument();\n },\n};\n\nexport const ViewMultilevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n args: {\n features: {\n ...mockFeatures,\n 'metadata.multilevelTaxonomy.enabled': true,\n },\n },\n parameters: {\n msw: {\n handlers: [\n ...taxonomyMockHandlers,\n http.get(mockMetadataTemplatesWithMultilevelTaxonomy.url, () => {\n return HttpResponse.json(mockMetadataTemplatesWithMultilevelTaxonomy.response);\n }),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n await waitFor(async () => {\n const multilevelOptionButton = canvas.getByRole('button', { name: 'London' });\n\n expect(multilevelOptionButton).toBeInTheDocument();\n\n await userEvent.click(multilevelOptionButton);\n\n const multilevelDialog = screen.getByRole('dialog');\n\n expect(multilevelDialog).toBeInTheDocument();\n });\n },\n};\n\nexport const ViewSinglelevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n parameters: {\n msw: {\n handlers: [\n ...taxonomyMockHandlers,\n http.get(mockMetadataTemplatesWithSinglelevelTaxonomy.url, () => {\n return HttpResponse.json(mockMetadataTemplatesWithSinglelevelTaxonomy.response);\n }),\n ],\n },\n },\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n await waitFor(async () => {\n const singlelevelOptionButton = canvas.getByRole('button', { name: 'Blue' });\n\n expect(singlelevelOptionButton).toBeInTheDocument();\n\n await userEvent.click(singlelevelOptionButton);\n\n const singlelevelDialog = screen.getByRole('dialog');\n\n expect(singlelevelDialog).toBeInTheDocument();\n });\n },\n};\n\nexport const EditMultilevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n ...ViewMultilevelTaxonomy,\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editButton = await waitFor(() => canvas.getByRole('button', { name: 'Edit My Taxonomy' }));\n\n await userEvent.click(editButton);\n\n const multilevelInput = canvas.getByRole('combobox');\n const optionChip = canvas.getByRole('button', { name: 'London' });\n\n expect(multilevelInput).toBeInTheDocument();\n expect(optionChip).toBeInTheDocument();\n\n await userEvent.click(multilevelInput);\n\n const listbox = await waitFor(() => canvas.getByRole('listbox'));\n expect(listbox).toBeInTheDocument();\n\n let expandButtons = await waitFor(() => canvas.getAllByRole('button', { name: 'Expand branch' }));\n\n await userEvent.click(expandButtons[1]);\n\n const hokkaidoOption = await waitFor(() => canvas.getByText('Hokkaido'));\n expect(hokkaidoOption).toBeInTheDocument();\n\n expandButtons = await waitFor(() => screen.getAllByRole('button', { name: 'Expand branch' }));\n\n await userEvent.click(expandButtons[2]);\n\n const sapporoOption = await waitFor(() => canvas.getByRole('treeitem', { name: 'Sapporo' }));\n\n expect(sapporoOption).toBeInTheDocument();\n expect(sapporoOption).toHaveAttribute('aria-selected', 'false');\n\n await userEvent.click(sapporoOption);\n\n const sapporoSelection = await waitFor(() => canvas.getByRole('gridcell', { name: 'Sapporo' }));\n\n expect(sapporoOption).toBeInTheDocument();\n expect(sapporoOption).toHaveAttribute('aria-selected', 'true');\n expect(sapporoSelection).toBeInTheDocument();\n },\n};\n\nexport const EditSinglelevelTaxonomy: StoryObj<typeof MetadataSidebarRedesign> = {\n ...ViewSinglelevelTaxonomy,\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n\n const editButton = await waitFor(() => canvas.getByRole('button', { name: 'Edit My Taxonomy' }));\n\n await userEvent.click(editButton);\n\n const singlelevelInput = canvas.getByRole('combobox');\n const blueSelection = canvas.getByRole('gridcell', { name: 'Blue' });\n\n expect(singlelevelInput).toBeInTheDocument();\n expect(blueSelection).toBeInTheDocument();\n\n await userEvent.click(singlelevelInput);\n\n const listbox = await waitFor(() => canvas.getByRole('listbox'));\n expect(listbox).toBeInTheDocument();\n\n const blueOption = await waitFor(() => canvas.getByRole('option', { name: 'Blue' }));\n const redOption = await waitFor(() => canvas.getByRole('option', { name: 'Red' }));\n const greenOption = await waitFor(() => canvas.getByRole('option', { name: 'Green' }));\n\n expect(blueOption).toBeInTheDocument();\n expect(redOption).toBeInTheDocument();\n expect(greenOption).toBeInTheDocument();\n expect(blueOption).toHaveAttribute('aria-selected', 'true');\n expect(redOption).toHaveAttribute('aria-selected', 'false');\n expect(greenOption).toHaveAttribute('aria-selected', 'false');\n\n await userEvent.click(redOption);\n\n const redSelection = await waitFor(() => canvas.getByRole('gridcell', { name: 'Red' }));\n\n expect(redSelection).toBeInTheDocument();\n expect(blueSelection).toBeInTheDocument();\n expect(blueOption).toBeInTheDocument();\n expect(redOption).toBeInTheDocument();\n expect(greenOption).toBeInTheDocument();\n expect(blueOption).toHaveAttribute('aria-selected', 'true');\n expect(redOption).toHaveAttribute('aria-selected', 'true');\n expect(greenOption).toHaveAttribute('aria-selected', 'false');\n },\n};\n\nconst meta: Meta<typeof ContentSidebar> & { parameters: { msw: { handlers: HttpHandler[] } } } = {\n title: 'Elements/ContentSidebar/MetadataSidebarRedesign/tests/visual-regression-tests',\n component: ContentSidebar,\n args: {\n token,\n metadataSidebarProps: {\n ...defaultMetadataArgs,\n },\n hasMetadata: true,\n features: mockFeatures,\n fileId: fileIdWithMetadata,\n logger: mockLogger,\n },\n parameters: {\n msw: {\n handlers: defaultMockHandlers,\n },\n },\n};\n\nexport default meta;\n"],"mappings":";;;;;AAAA,SAASA,GAAG,QAA6B,OAAO;AAChD,SAASC,IAAI,EAAEC,YAAY,QAAQ,KAAK;AACxC,SAASC,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,MAAM,EAAEC,EAAE,EAAEC,MAAM,QAAQ,iBAAiB;AAGhF,OAAOC,cAAc,MAAM,sBAAsB;AAEjD,SACIC,wBAAwB,EACxBC,2BAA2B,EAC3BC,kBAAkB,EAClBC,qBAAqB,EACrBC,0BAA0B,EAC1BC,+BAA+B,EAC/BC,wCAAwC,EACxCC,eAAe,EACfC,8BAA8B,EAC9BC,2BAA2B,EAC3BC,qBAAqB,QAClB,6CAA6C;AACpD,SAASC,eAAe,QAAQ,wCAAwC;AACxE,SACIC,2CAA2C,EAC3CC,4CAA4C,EAC5CC,oBAAoB,QACjB,4BAA4B;AAEnC,MAAMC,KAAK,GAAGC,MAAM,CAACC,KAAK;AAE1B,MAAMC,mBAAmB,GAAG;EACxBC,MAAM,EAAEjB,kBAAkB;EAC1BkB,gBAAgB,EAAE,IAAI;EACtBC,OAAO,EAAExB,EAAE,CAAC,CAAC;EACbyB,SAAS,EAAEzB,EAAE,CAAC;AAClB,CAAC;AACD,MAAM0B,2BAA2E,GAAG;EAChFH,gBAAgB,EAAE,IAAI;EACtBC,OAAO,EAAExB,EAAE,CAAC,CAAC;EACbyB,SAAS,EAAEzB,EAAE,CAAC;AAClB,CAAC;AACD,MAAM2B,YAAY,GAAG;EACjB,2BAA2B,EAAE;AACjC,CAAC;AACD,MAAMC,UAAU,GAAG;EACfC,aAAa,EAAEA,CAAC;IAAEC;EAAY,CAAC,KAAK;IAChC;IACAC,OAAO,CAACC,GAAG,CAAC,kDAAkDF,WAAW,EAAE,CAAC;EAChF;AACJ,CAAC;AAED,OAAO,MAAMG,yBAAyB,GAAG;EACrCC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,EAAE;MAAEC,OAAO,EAAE;IAAK,CAAC,CAAC;IAExG5C,MAAM,CAACyC,iBAAiB,CAAC,CAACI,iBAAiB,CAAC,CAAC;IAC7C,MAAM5C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAkB,CAAC,CAAC;IACpF3C,MAAM,CAAC+C,oBAAoB,CAAC,CAACF,iBAAiB,CAAC,CAAC;IAChD7C,MAAM,CAAC+C,oBAAoB,CAAC,CAACE,eAAe,CAAC,eAAe,CAAC;EACjE;AACJ,CAAC;AAED,OAAO,MAAMC,8BAA8B,GAAG;EAC1CC,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAE;MAClBC,yBAAyB,EAAE,IAAI;MAC/BC,qBAAqB,EAAE,KAAK;MAC5B3B,gBAAgB,EAAE,IAAI;MACtBC,OAAO,EAAExB,EAAE,CAAC,CAAC;MACbyB,SAAS,EAAEzB,EAAE,CAAC;IAClB;EACJ,CAAC;EACDkC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IACpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,EAAE;MAAEC,OAAO,EAAE;IAAK,CAAC,CAAC;IAExG5C,MAAM,CAACyC,iBAAiB,CAAC,CAACI,iBAAiB,CAAC,CAAC;IAC7C,MAAM5C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMc,OAAO,GAAGf,MAAM,CAACgB,YAAY,CAAC,QAAQ,CAAC;IAC7CxD,MAAM,CAACuD,OAAO,CAAC,CAACE,YAAY,CAAC,CAAC,CAAC;IAC/BF,OAAO,CAACG,OAAO,CAACC,MAAM,IAAI;MACtB3D,MAAM,CAAC2D,MAAM,CAAC,CAACC,GAAG,CAACX,eAAe,CAAC,UAAU,CAAC;IAClD,CAAC,CAAC;EACN;AACJ,CAAC;AAED,OAAO,MAAMY,uBAAuB,GAAG;EACnCvB,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAMrC,OAAO,CACT,YAAY;MACR,MAAM4D,qBAAqB,GAAG,MAAMtB,MAAM,CAACE,UAAU,CAAC,UAAU,CAAC;MAEjE1C,MAAM,CAAC8D,qBAAqB,CAAC,CAACjB,iBAAiB,CAAC,CAAC;MACjD,MAAM5C,SAAS,CAAC6C,KAAK,CAACgB,qBAAqB,CAAC;MAE5C,MAAMC,WAAW,GAAGvB,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;QAAEL,IAAI,EAAE;MAAc,CAAC,CAAC;MACvE3C,MAAM,CAAC+D,WAAW,CAAC,CAAClB,iBAAiB,CAAC,CAAC;MACvC,MAAMmB,YAAY,GAAGxB,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;QAAEL,IAAI,EAAE;MAAmB,CAAC,CAAC;MAC7E3C,MAAM,CAACgE,YAAY,CAAC,CAACnB,iBAAiB,CAAC,CAAC;MACxC,MAAMoB,WAAW,GAAGzB,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;QAAEL,IAAI,EAAE;MAAkB,CAAC,CAAC;MAC3E3C,MAAM,CAACiE,WAAW,CAAC,CAACpB,iBAAiB,CAAC,CAAC;MAEvC,MAAM5C,SAAS,CAAC6C,KAAK,CAACiB,WAAW,CAAC;MAElC,MAAMG,SAAS,GAAG,MAAM1B,MAAM,CAAC2B,aAAa,CAAC,SAAS,EAAE;QAAEC,KAAK,EAAE;MAAE,CAAC,CAAC;MACrEpE,MAAM,CAACkE,SAAS,CAAC,CAACT,YAAY,CAAC,CAAC,CAAC;MACjCzD,MAAM,CAACkE,SAAS,CAAC,CAAC,CAAC,CAACG,WAAW,CAAC,CAACC,OAAO,CAAC,aAAa,CAAC;IAC3D,CAAC,EACD;MAAE1B,OAAO,EAAE;IAAK,CACpB,CAAC;EACL;AACJ,CAAC;AAED,MAAM2B,mBAAmB,GAAG,CACxBzE,IAAI,CAAC0E,GAAG,CAACtD,eAAe,CAACuD,GAAG,EAAE,MAAM;EAChC,OAAO1E,YAAY,CAAC2E,IAAI,CAACxD,eAAe,CAACyD,QAAQ,CAAC;AACtD,CAAC,CAAC,EACF7E,IAAI,CAAC0E,GAAG,CAAC1D,eAAe,CAAC2D,GAAG,EAAE,MAAM;EAChC,OAAO1E,YAAY,CAAC2E,IAAI,CAAC5D,eAAe,CAAC6D,QAAQ,CAAC;AACtD,CAAC,CAAC,EACF7E,IAAI,CAAC0E,GAAG,CAACzD,8BAA8B,CAAC0D,GAAG,EAAE,MAAM;EAC/C,OAAO1E,YAAY,CAAC2E,IAAI,CAAC3D,8BAA8B,CAAC4D,QAAQ,CAAC;AACrE,CAAC,CAAC,EACF7E,IAAI,CAAC0E,GAAG,CAACvD,qBAAqB,CAACwD,GAAG,EAAE,MAAM;EACtC,OAAO1E,YAAY,CAAC2E,IAAI,CAACzD,qBAAqB,CAAC0D,QAAQ,CAAC;AAC5D,CAAC,CAAC,EACF7E,IAAI,CAAC0E,GAAG,CAACxD,2BAA2B,CAACyD,GAAG,EAAE,MAAM;EAC5C,OAAO1E,YAAY,CAAC2E,IAAI,CAAC1D,2BAA2B,CAAC2D,QAAQ,CAAC;AAClE,CAAC,CAAC,EACF7E,IAAI,CAAC0E,GAAG,CAAC7D,0BAA0B,CAAC8D,GAAG,EAAE,MAAM;EAC3C,OAAO1E,YAAY,CAAC2E,IAAI,CAAC/D,0BAA0B,CAACgE,QAAQ,CAAC;AACjE,CAAC,CAAC,EACF7E,IAAI,CAAC0E,GAAG,CAAC5D,+BAA+B,CAAC6D,GAAG,EAAE,MAAM;EAChD,OAAO1E,YAAY,CAAC2E,IAAI,CAAC9D,+BAA+B,CAAC+D,QAAQ,CAAC;AACtE,CAAC,CAAC,CACL;AAED,OAAO,MAAMC,yBAAmE,GAAG;EAC/EtC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IACrF3C,MAAM,CAACyC,iBAAiB,CAAC,CAACI,iBAAiB,CAAC,CAAC;IAC7C,MAAM5C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAa,CAAC,CAAC;IAC/E3C,MAAM,CAAC+C,oBAAoB,CAAC,CAACF,iBAAiB,CAAC,CAAC;IAChD,MAAM5C,SAAS,CAAC6C,KAAK,CAACC,oBAAoB,CAAC;IAE3C,MAAM8B,cAAc,GAAG,MAAMrC,MAAM,CAACE,UAAU,CAAC,SAAS,EAAE;MAAEC,IAAI,EAAE;IAAa,CAAC,CAAC;IACjF3C,MAAM,CAAC6E,cAAc,CAAC,CAAChC,iBAAiB,CAAC,CAAC;EAC9C;AACJ,CAAC;AAED,OAAO,MAAMiC,gDAA0F,GAAG;EACtG3B,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAEtB;EAC1B,CAAC;EACDQ,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IACrF3C,MAAM,CAACyC,iBAAiB,CAAC,CAACI,iBAAiB,CAAC,CAAC;IAC7C,MAAM5C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAa,CAAC,CAAC;IAC/E3C,MAAM,CAAC+C,oBAAoB,CAAC,CAACF,iBAAiB,CAAC,CAAC;IAChD,MAAM5C,SAAS,CAAC6C,KAAK,CAACC,oBAAoB,CAAC;IAE3C,MAAM9C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IACxC,MAAMsC,gBAAgB,GAAGvC,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IAC5E3C,MAAM,CAAC+E,gBAAgB,CAAC,CAAClC,iBAAiB,CAAC,CAAC;IAC5C,MAAM5C,SAAS,CAAC6C,KAAK,CAACiC,gBAAgB,CAAC;IAEvC,MAAMC,mBAAmB,GAAG,MAAM3E,MAAM,CAACqC,UAAU,CAC/C,SAAS,EACT;MAAE0B,KAAK,EAAE,CAAC;MAAEzB,IAAI,EAAE;IAAkB,CAAC,EACrC;MAAEC,OAAO,EAAE;IAAK,CACpB,CAAC;IACD5C,MAAM,CAACgF,mBAAmB,CAAC,CAACnC,iBAAiB,CAAC,CAAC;EACnD;AACJ,CAAC;AAED,OAAO,MAAMoC,0BAAoE,GAAG;EAChF9B,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAA8B,aAAA,KACbpD,2BAA2B,CACjC;IACDqD,QAAQ,EAAAD,aAAA,CAAAA,aAAA,KACDnD,YAAY;MACf,gCAAgC,EAAE,IAAI;MACtC,+BAA+B,EAAE;IAAK;EAE9C;AACJ,CAAC;AAED,OAAO,MAAMqD,2BAAqE,GAAG;EACjFjC,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAA8B,aAAA,CAAAA,aAAA,KACbpD,2BAA2B;MAC9BuB,yBAAyB,EAAE,KAAK;MAChCC,qBAAqB,EAAE;IAAK;EAEpC;AACJ,CAAC;AAED,OAAO,MAAM+B,yCAAmF,GAAG;EAC/FlC,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAEtB;EAC1B,CAAC;EACDQ,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IACrF,MAAM1C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IAChF,MAAM1C,SAAS,CAAC6C,KAAK,CAACC,oBAAoB,CAAC;EAC/C;AACJ,CAAC;AAED,OAAO,MAAMuC,wCAAkF,GAAG;EAC9FnC,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAEtB;EAC1B,CAAC;EACDQ,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,EAAE;MAAEC,OAAO,EAAE;IAAK,CAAC,CAAC;IACxG,MAAM/C,GAAG,CAAC,YAAY;MAClB,MAAMI,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAC5C,CAAC,CAAC;IAEF,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAkB,CAAC,CAAC;IACpF,MAAM9C,GAAG,CAAC,YAAY;MAClB,MAAMI,SAAS,CAAC6C,KAAK,CAACC,oBAAoB,CAAC;IAC/C,CAAC,CAAC;EACN;AACJ,CAAC;AAED,OAAO,MAAMwC,mCAA6E,GAAG;EACzFjD,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;;IAEpC;IACA,MAAMiD,UAAU,GAAG,MAAMhD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAmB,CAAC,CAAC;IAClF3C,MAAM,CAACwF,UAAU,CAAC,CAAC3C,iBAAiB,CAAC,CAAC;IAEtC,IAAIqB,SAAS,GAAG,MAAM1B,MAAM,CAAC2B,aAAa,CAAC,SAAS,EAAE;MAAEC,KAAK,EAAE;IAAE,CAAC,CAAC;IACnEpE,MAAM,CAACkE,SAAS,CAAC,CAACT,YAAY,CAAC,CAAC,CAAC;IACjCzD,MAAM,CAACkE,SAAS,CAACuB,GAAG,CAACC,OAAO,IAAIA,OAAO,CAACrB,WAAW,CAAC,CAAC,CAACC,OAAO,CACzDtE,MAAM,CAAC2F,eAAe,CAAC,CAAC,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CACjF,CAAC;;IAED;IACA,MAAM1F,SAAS,CAAC6C,KAAK,CAAC0C,UAAU,CAAC;IAEjCtB,SAAS,GAAG,MAAM1B,MAAM,CAAC2B,aAAa,CAAC,SAAS,EAAE;MAAEC,KAAK,EAAE;IAAE,CAAC,CAAC;IAC/DpE,MAAM,CAACkE,SAAS,CAAC,CAACT,YAAY,CAAC,CAAC,CAAC;IACjCzD,MAAM,CAACkE,SAAS,CAACuB,GAAG,CAACC,OAAO,IAAIA,OAAO,CAACrB,WAAW,CAAC,CAAC,CAACC,OAAO,CAACtE,MAAM,CAAC2F,eAAe,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;;IAEtG;IACA,MAAMC,YAAY,GAAG,MAAMpD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC1E,MAAM1C,SAAS,CAAC6C,KAAK,CAAC8C,YAAY,CAAC;IAEnC1B,SAAS,GAAG,MAAM1B,MAAM,CAAC2B,aAAa,CAAC,SAAS,EAAE;MAAEC,KAAK,EAAE;IAAE,CAAC,CAAC;IAC/DpE,MAAM,CAACkE,SAAS,CAAC,CAACT,YAAY,CAAC,CAAC,CAAC;IACjCzD,MAAM,CAACkE,SAAS,CAACuB,GAAG,CAACC,OAAO,IAAIA,OAAO,CAACrB,WAAW,CAAC,CAAC,CAACC,OAAO,CACzDtE,MAAM,CAAC2F,eAAe,CAAC,CAAC,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CACjF,CAAC;EACL;AACJ,CAAC;AAED,OAAO,MAAME,mDAA6F,GAAG;EACzGvD,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IACrF3C,MAAM,CAACyC,iBAAiB,CAAC,CAACI,iBAAiB,CAAC,CAAC;IAC7C,MAAMhD,GAAG,CAAC,YAAY;MAClB,MAAMI,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAC5C,CAAC,CAAC;IAEF,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAa,CAAC,CAAC;IAC/E3C,MAAM,CAAC+C,oBAAoB,CAAC,CAACF,iBAAiB,CAAC,CAAC;IAChD,MAAMhD,GAAG,CAAC,YAAY;MAClB,MAAMI,SAAS,CAAC6C,KAAK,CAACC,oBAAoB,CAAC;IAC/C,CAAC,CAAC;IAEF,MAAM+C,YAAY,GAAG,MAAMtD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC1E3C,MAAM,CAAC8F,YAAY,CAAC,CAACC,YAAY,CAAC,CAAC;EACvC;AACJ,CAAC;AAED,OAAO,MAAMC,wDAAkG,GAAG;EAC9G1D,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAM0D,0BAA0B,GAAG,MAAMzD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAmB,CAAC,CAAC;IAClG3C,MAAM,CAACiG,0BAA0B,CAAC,CAACpD,iBAAiB,CAAC,CAAC;IACtD,MAAM5C,SAAS,CAAC6C,KAAK,CAACmD,0BAA0B,CAAC;IAEjD,MAAMH,YAAY,GAAG,MAAMtD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC1E3C,MAAM,CAAC8F,YAAY,CAAC,CAACI,WAAW,CAAC,CAAC;EACtC;AACJ,CAAC;AAED,OAAO,MAAMC,iDAA2F,GAAG;EACvGhD,IAAI,EAAE;IACFzB,MAAM,EAAEhB,qBAAqB;IAC7B0C,oBAAoB,EAAEtB;EAC1B,CAAC;EACDQ,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IAErF,MAAM1C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAM2D,sBAAsB,GAAG5D,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IAClF3C,MAAM,CAACoG,sBAAsB,CAAC,CAACxC,GAAG,CAACX,eAAe,CAAC,eAAe,CAAC;IACnE,MAAMhD,SAAS,CAAC6C,KAAK,CAACsD,sBAAsB,CAAC;;IAE7C;IACA,MAAMnG,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IACxC,MAAM4D,8BAA8B,GAAG7D,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IAC1F3C,MAAM,CAACqG,8BAA8B,CAAC,CAACpD,eAAe,CAAC,eAAe,CAAC;;IAEvE;IACA,MAAM2C,YAAY,GAAG,MAAMpD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC1E,MAAM1C,SAAS,CAAC6C,KAAK,CAAC8C,YAAY,CAAC;IACnC,MAAM3F,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IACxC,MAAM6D,6BAA6B,GAAG9D,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IACzF3C,MAAM,CAACsG,6BAA6B,CAAC,CAAC1C,GAAG,CAACX,eAAe,CAAC,eAAe,CAAC;EAC9E;AACJ,CAAC;AAED,OAAO,MAAMsD,8BAAwE,GAAG;EACpFpD,IAAI,EAAE;IACFzB,MAAM,EAAE,cAAc;IACtB0B,oBAAoB,EAAEtB;EAC1B,CAAC;EACDQ,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IACpC;IACA,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IAErF,MAAM1C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAM2D,sBAAsB,GAAG5D,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IAElF,MAAM1C,SAAS,CAAC6C,KAAK,CAACsD,sBAAsB,CAAC;IAE7C,MAAMI,KAAK,GAAG,MAAMhE,MAAM,CAACE,UAAU,CAAC,SAAS,CAAC;IAEhD,MAAMzC,SAAS,CAACwG,IAAI,CAACD,KAAK,EAAE,oBAAoB,CAAC;;IAEjD;IACA,MAAMvG,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMiE,uBAAuB,GAAGlE,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IACnF,MAAMgE,uBAAuB,GAAGnE,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAa,CAAC,CAAC;IAElF3C,MAAM,CAAC0G,uBAAuB,CAAC,CAACzD,eAAe,CAAC,eAAe,CAAC;IAChEjD,MAAM,CAAC2G,uBAAuB,CAAC,CAAC/C,GAAG,CAACX,eAAe,CAAC,eAAe,CAAC;IAEpE,MAAMhD,SAAS,CAAC6C,KAAK,CAAC6D,uBAAuB,CAAC;IAE9C,MAAM3B,mBAAmB,GAAG,MAAM3E,MAAM,CAACqC,UAAU,CAC/C,SAAS,EACT;MAAE0B,KAAK,EAAE,CAAC;MAAEzB,IAAI,EAAE;IAAkB,CAAC,EACrC;MAAEC,OAAO,EAAE;IAAK,CACpB,CAAC;IACD5C,MAAM,CAACgF,mBAAmB,CAAC,CAACnC,iBAAiB,CAAC,CAAC;IAE/C,MAAM+D,gCAAgC,GAAG,MAAMvG,MAAM,CAACqC,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAkB,CAAC,CAAC;IAEvG,MAAM1C,SAAS,CAAC6C,KAAK,CAAC8D,gCAAgC,CAAC;IAEvD,MAAMC,iBAAiB,GAAG,MAAMrE,MAAM,CAACE,UAAU,CAAC,SAAS,EAAE;MAAEC,IAAI,EAAE;IAAa,CAAC,CAAC;IACpF3C,MAAM,CAAC6G,iBAAiB,CAAC,CAAChE,iBAAiB,CAAC,CAAC;;IAE7C;IACA,MAAM5C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMqE,kCAAkC,GAAGtE,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAc,CAAC,CAAC;IAC9F,MAAMoE,kCAAkC,GAAGvE,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAa,CAAC,CAAC;IAE7F3C,MAAM,CAAC8G,kCAAkC,CAAC,CAAClD,GAAG,CAACX,eAAe,CAAC,eAAe,CAAC;IAC/EjD,MAAM,CAAC+G,kCAAkC,CAAC,CAAC9D,eAAe,CAAC,eAAe,CAAC;EAC/E;AACJ,CAAC;AAED,OAAO,MAAM+D,+BAAyE,GAAG;EACrF7D,IAAI,EAAE;IACFgC,QAAQ,EAAAD,aAAA,CAAAA,aAAA,KACDnD,YAAY;MACf,gCAAgC,EAAE,IAAI;MACtC,+BAA+B,EAAE;IAAK;EAE9C,CAAC;EACDO,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAM0E,iBAAiB,GAAG,MAAMzE,MAAM,CAAC2B,aAAa,CAAC,QAAQ,EAAE;MAAExB,IAAI,EAAE;IAA0B,CAAC,CAAC;IACnG3C,MAAM,CAACiH,iBAAiB,CAAC,CAACxD,YAAY,CAAC,CAAC,CAAC;IAEzC,MAAM+B,UAAU,GAAG,MAAMhD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAmB,CAAC,CAAC;IAClF,MAAM1C,SAAS,CAAC6C,KAAK,CAAC0C,UAAU,CAAC;IAEjC,MAAM0B,cAAc,GAAG,MAAM1E,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAW,CAAC,CAAC;IAC9E3C,MAAM,CAACkH,cAAc,CAAC,CAACrE,iBAAiB,CAAC,CAAC;EAC9C;AACJ,CAAC;AAED,OAAO,MAAMsE,+BAAyE,GAAG;EACrFhE,IAAI,EAAE;IACFgC,QAAQ,EAAAD,aAAA,CAAAA,aAAA,KACDnD,YAAY;MACf,gCAAgC,EAAE,IAAI;MACtC,+BAA+B,EAAE;IAAK;EAE9C,CAAC;EACDqF,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE,CACN,GAAG/C,mBAAmB,EACtBzE,IAAI,CAACyH,IAAI,CAAC/G,2BAA2B,CAACiE,GAAG,EAAE,MAAM;QAC7C,OAAO,IAAI1E,YAAY,CAAC,WAAW,EAAE;UAAEyH,MAAM,EAAE;QAAI,CAAC,CAAC;MACzD,CAAC,CAAC;IAEV,CAAC;IACDC,IAAI,EAAE;MACFC,gCAAgC,EAAE;IACtC;EACJ,CAAC;EACDpF,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAM2E,cAAc,GAAG,MAAM1E,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAmC,CAAC,CAAC;IACtG,MAAM1C,SAAS,CAAC6C,KAAK,CAACoE,cAAc,CAAC;IAErC,MAAMS,UAAU,GAAG,MAAMnF,MAAM,CAACoF,UAAU,CAAC,oCAAoC,CAAC;IAChF5H,MAAM,CAAC2H,UAAU,CAAC,CAAC9E,iBAAiB,CAAC,CAAC;EAC1C;AACJ,CAAC;AAED,OAAO,MAAMgF,6BAAuE,GAAG;EACnF1E,IAAI,EAAE;IACFgC,QAAQ,EAAAD,aAAA,CAAAA,aAAA,KACDnD,YAAY;MACf,gCAAgC,EAAE,IAAI;MACtC,+BAA+B,EAAE;IAAK;EAE9C,CAAC;EACDqF,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE,CACN,GAAG/C,mBAAmB,EACtBzE,IAAI,CAACyH,IAAI,CAAC/G,2BAA2B,CAACiE,GAAG,EAAE,MACvC1E,YAAY,CAAC2E,IAAI,CAAClE,2BAA2B,CAACmE,QAAQ,CAC1D,CAAC;IAET;EACJ,CAAC;EACDrC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAM2E,cAAc,GAAG,MAAM1E,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAmC,CAAC,CAAC;IACtG1C,SAAS,CAAC6C,KAAK,CAACoE,cAAc,CAAC;IAE/B,MAAMY,UAAU,GAAG,MAAMtF,MAAM,CAACoF,UAAU,CAAC,eAAe,CAAC;IAC3D5H,MAAM,CAAC8H,UAAU,CAAC,CAACjF,iBAAiB,CAAC,CAAC;IAEtC,MAAMkF,aAAa,GAAG,MAAMvF,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAoB,CAAC,CAAC;IACtF3C,MAAM,CAAC+H,aAAa,CAAC,CAAClF,iBAAiB,CAAC,CAAC;IAEzC,MAAM5C,SAAS,CAAC6C,KAAK,CAACiF,aAAa,CAAC;IAEpC,MAAMvB,KAAK,GAAGhE,MAAM,CAACwF,cAAc,CAAC,cAAc,CAAC;IACnDhI,MAAM,CAACwG,KAAK,CAAC,CAACyB,WAAW,CAAC,eAAe,CAAC;EAC9C;AACJ,CAAC;AAED,OAAO,MAAMC,yCAAmF,GAAG;EAC/F/E,IAAI,EAAE;IACFgC,QAAQ,EAAAD,aAAA,CAAAA,aAAA,KACDnD,YAAY;MACf,gCAAgC,EAAE,IAAI;MACtC,+BAA+B,EAAE;IAAK;EAE9C,CAAC;EACDqF,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE,CACN,GAAG/C,mBAAmB,EACtBzE,IAAI,CAACyH,IAAI,CAAC/G,2BAA2B,CAACiE,GAAG,EAAE,MAAM1E,YAAY,CAAC2E,IAAI,CAACnE,wBAAwB,CAACoE,QAAQ,CAAC,CAAC;IAE9G;EACJ,CAAC;EACDrC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAME,iBAAiB,GAAG,MAAMD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAe,CAAC,CAAC;IACrF3C,MAAM,CAACyC,iBAAiB,CAAC,CAACI,iBAAiB,CAAC,CAAC;IAC7C,MAAM5C,SAAS,CAAC6C,KAAK,CAACL,iBAAiB,CAAC;IAExC,MAAMM,oBAAoB,GAAGP,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAgB,CAAC,CAAC;IAClF3C,MAAM,CAAC+C,oBAAoB,CAAC,CAACF,iBAAiB,CAAC,CAAC;IAChD,MAAM5C,SAAS,CAAC6C,KAAK,CAACC,oBAAoB,CAAC;IAE3C,MAAM8B,cAAc,GAAG,MAAMrC,MAAM,CAACE,UAAU,CAAC,SAAS,EAAE;MAAEC,IAAI,EAAE;IAAgB,CAAC,CAAC;IACpF3C,MAAM,CAAC6E,cAAc,CAAC,CAAChC,iBAAiB,CAAC,CAAC;IAE1C,MAAMqE,cAAc,GAAG,MAAM1E,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAW,CAAC,CAAC;IAC9E1C,SAAS,CAAC6C,KAAK,CAACoE,cAAc,CAAC;IAE/B,MAAMY,UAAU,GAAG,MAAMtF,MAAM,CAACoF,UAAU,CAAC,UAAU,CAAC;IACtD5H,MAAM,CAAC8H,UAAU,CAAC,CAACjF,iBAAiB,CAAC,CAAC;EAC1C;AACJ,CAAC;AAED,OAAO,MAAMsF,iBAA2D,GAAG;EACvEf,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE,CACN,GAAG/C,mBAAmB,EACtBzE,IAAI,CAACsI,MAAM,CAACvH,wCAAwC,CAAC4D,GAAG,EAAE,MAAM;QAC5D,OAAO1E,YAAY,CAAC2E,IAAI,CAAC7D,wCAAwC,CAAC8D,QAAQ,EAAE;UAAE6C,MAAM,EAAE;QAAI,CAAC,CAAC;MAChG,CAAC,CAAC;IAEV;EACJ,CAAC;EACDlF,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAMiD,UAAU,GAAG,MAAMhD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAmB,CAAC,EAAE;MAAEC,OAAO,EAAE;IAAK,CAAC,CAAC;IACrG,MAAM3C,SAAS,CAAC6C,KAAK,CAAC0C,UAAU,CAAC;IAEjC,MAAMM,YAAY,GAAG,MAAMtD,MAAM,CAACE,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC1E,MAAM1C,SAAS,CAAC6C,KAAK,CAACgD,YAAY,CAAC;IAEnC,MAAMuC,YAAY,GAAG,MAAMhI,MAAM,CAACqC,UAAU,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAY,CAAC,EAAE;MAAEC,OAAO,EAAE;IAAK,CAAC,CAAC;IAEhG,MAAM0F,YAAY,GAAGnI,MAAM,CAACkI,YAAY,CAAC,CAACrF,SAAS,CAAC,SAAS,CAAC;IAC9D,MAAM/C,SAAS,CAACwG,IAAI,CAAC6B,YAAY,EAAE,aAAa,CAAC;IAEjD,MAAMC,aAAa,GAAGpI,MAAM,CAACkI,YAAY,CAAC,CAACrF,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAU,CAAC,CAAC;IACnF,MAAM1C,SAAS,CAAC6C,KAAK,CAACyF,aAAa,CAAC;IAEpC,MAAMZ,UAAU,GAAG,MAAMnF,MAAM,CAACoF,UAAU,CACtC,uFACJ,CAAC;IACD5H,MAAM,CAAC2H,UAAU,CAAC,CAAC9E,iBAAiB,CAAC,CAAC;EAC1C;AACJ,CAAC;AAED,OAAO,MAAM2F,sBAAgE,GAAG;EAC5ErF,IAAI,EAAE;IACFgC,QAAQ,EAAAD,aAAA,CAAAA,aAAA,KACDnD,YAAY;MACf,qCAAqC,EAAE;IAAI;EAEnD,CAAC;EACDqF,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE,CACN,GAAGjG,oBAAoB,EACvBvB,IAAI,CAAC0E,GAAG,CAACrD,2CAA2C,CAACsD,GAAG,EAAE,MAAM;QAC5D,OAAO1E,YAAY,CAAC2E,IAAI,CAACvD,2CAA2C,CAACwD,QAAQ,CAAC;MAClF,CAAC,CAAC;IAEV;EACJ,CAAC;EACDrC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAMrC,OAAO,CAAC,YAAY;MACtB,MAAMuI,sBAAsB,GAAGjG,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;QAAEL,IAAI,EAAE;MAAS,CAAC,CAAC;MAE7E3C,MAAM,CAACyI,sBAAsB,CAAC,CAAC5F,iBAAiB,CAAC,CAAC;MAElD,MAAM5C,SAAS,CAAC6C,KAAK,CAAC2F,sBAAsB,CAAC;MAE7C,MAAMC,gBAAgB,GAAGrI,MAAM,CAAC2C,SAAS,CAAC,QAAQ,CAAC;MAEnDhD,MAAM,CAAC0I,gBAAgB,CAAC,CAAC7F,iBAAiB,CAAC,CAAC;IAChD,CAAC,CAAC;EACN;AACJ,CAAC;AAED,OAAO,MAAM8F,uBAAiE,GAAG;EAC7EvB,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE,CACN,GAAGjG,oBAAoB,EACvBvB,IAAI,CAAC0E,GAAG,CAACpD,4CAA4C,CAACqD,GAAG,EAAE,MAAM;QAC7D,OAAO1E,YAAY,CAAC2E,IAAI,CAACtD,4CAA4C,CAACuD,QAAQ,CAAC;MACnF,CAAC,CAAC;IAEV;EACJ,CAAC;EACDrC,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAMrC,OAAO,CAAC,YAAY;MACtB,MAAM0I,uBAAuB,GAAGpG,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;QAAEL,IAAI,EAAE;MAAO,CAAC,CAAC;MAE5E3C,MAAM,CAAC4I,uBAAuB,CAAC,CAAC/F,iBAAiB,CAAC,CAAC;MAEnD,MAAM5C,SAAS,CAAC6C,KAAK,CAAC8F,uBAAuB,CAAC;MAE9C,MAAMC,iBAAiB,GAAGxI,MAAM,CAAC2C,SAAS,CAAC,QAAQ,CAAC;MAEpDhD,MAAM,CAAC6I,iBAAiB,CAAC,CAAChG,iBAAiB,CAAC,CAAC;IACjD,CAAC,CAAC;EACN;AACJ,CAAC;AAED,OAAO,MAAMiG,sBAAgE,GAAA5D,aAAA,CAAAA,aAAA,KACtEsD,sBAAsB;EACzBlG,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAMiD,UAAU,GAAG,MAAMtF,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAmB,CAAC,CAAC,CAAC;IAEhG,MAAM1C,SAAS,CAAC6C,KAAK,CAAC0C,UAAU,CAAC;IAEjC,MAAMuD,eAAe,GAAGvG,MAAM,CAACQ,SAAS,CAAC,UAAU,CAAC;IACpD,MAAMgG,UAAU,GAAGxG,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAS,CAAC,CAAC;IAEjE3C,MAAM,CAAC+I,eAAe,CAAC,CAAClG,iBAAiB,CAAC,CAAC;IAC3C7C,MAAM,CAACgJ,UAAU,CAAC,CAACnG,iBAAiB,CAAC,CAAC;IAEtC,MAAM5C,SAAS,CAAC6C,KAAK,CAACiG,eAAe,CAAC;IAEtC,MAAME,OAAO,GAAG,MAAM/I,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,SAAS,CAAC,CAAC;IAChEhD,MAAM,CAACiJ,OAAO,CAAC,CAACpG,iBAAiB,CAAC,CAAC;IAEnC,IAAIqG,aAAa,GAAG,MAAMhJ,OAAO,CAAC,MAAMsC,MAAM,CAACgB,YAAY,CAAC,QAAQ,EAAE;MAAEb,IAAI,EAAE;IAAgB,CAAC,CAAC,CAAC;IAEjG,MAAM1C,SAAS,CAAC6C,KAAK,CAACoG,aAAa,CAAC,CAAC,CAAC,CAAC;IAEvC,MAAMC,cAAc,GAAG,MAAMjJ,OAAO,CAAC,MAAMsC,MAAM,CAAC4G,SAAS,CAAC,UAAU,CAAC,CAAC;IACxEpJ,MAAM,CAACmJ,cAAc,CAAC,CAACtG,iBAAiB,CAAC,CAAC;IAE1CqG,aAAa,GAAG,MAAMhJ,OAAO,CAAC,MAAMG,MAAM,CAACmD,YAAY,CAAC,QAAQ,EAAE;MAAEb,IAAI,EAAE;IAAgB,CAAC,CAAC,CAAC;IAE7F,MAAM1C,SAAS,CAAC6C,KAAK,CAACoG,aAAa,CAAC,CAAC,CAAC,CAAC;IAEvC,MAAMG,aAAa,GAAG,MAAMnJ,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,UAAU,EAAE;MAAEL,IAAI,EAAE;IAAU,CAAC,CAAC,CAAC;IAE5F3C,MAAM,CAACqJ,aAAa,CAAC,CAACxG,iBAAiB,CAAC,CAAC;IACzC7C,MAAM,CAACqJ,aAAa,CAAC,CAACpG,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC;IAE/D,MAAMhD,SAAS,CAAC6C,KAAK,CAACuG,aAAa,CAAC;IAEpC,MAAMC,gBAAgB,GAAG,MAAMpJ,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,UAAU,EAAE;MAAEL,IAAI,EAAE;IAAU,CAAC,CAAC,CAAC;IAE/F3C,MAAM,CAACqJ,aAAa,CAAC,CAACxG,iBAAiB,CAAC,CAAC;IACzC7C,MAAM,CAACqJ,aAAa,CAAC,CAACpG,eAAe,CAAC,eAAe,EAAE,MAAM,CAAC;IAC9DjD,MAAM,CAACsJ,gBAAgB,CAAC,CAACzG,iBAAiB,CAAC,CAAC;EAChD;AAAC,EACJ;AAED,OAAO,MAAM0G,uBAAiE,GAAArE,aAAA,CAAAA,aAAA,KACvEyD,uBAAuB;EAC1BrG,IAAI,EAAE,MAAAA,CAAO;IAAEC;EAAc,CAAC,KAAK;IAC/B,MAAMC,MAAM,GAAGrC,MAAM,CAACoC,aAAa,CAAC;IAEpC,MAAMiD,UAAU,GAAG,MAAMtF,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAmB,CAAC,CAAC,CAAC;IAEhG,MAAM1C,SAAS,CAAC6C,KAAK,CAAC0C,UAAU,CAAC;IAEjC,MAAMgE,gBAAgB,GAAGhH,MAAM,CAACQ,SAAS,CAAC,UAAU,CAAC;IACrD,MAAMyG,aAAa,GAAGjH,MAAM,CAACQ,SAAS,CAAC,UAAU,EAAE;MAAEL,IAAI,EAAE;IAAO,CAAC,CAAC;IAEpE3C,MAAM,CAACwJ,gBAAgB,CAAC,CAAC3G,iBAAiB,CAAC,CAAC;IAC5C7C,MAAM,CAACyJ,aAAa,CAAC,CAAC5G,iBAAiB,CAAC,CAAC;IAEzC,MAAM5C,SAAS,CAAC6C,KAAK,CAAC0G,gBAAgB,CAAC;IAEvC,MAAMP,OAAO,GAAG,MAAM/I,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,SAAS,CAAC,CAAC;IAChEhD,MAAM,CAACiJ,OAAO,CAAC,CAACpG,iBAAiB,CAAC,CAAC;IAEnC,MAAM6G,UAAU,GAAG,MAAMxJ,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAO,CAAC,CAAC,CAAC;IACpF,MAAMgH,SAAS,GAAG,MAAMzJ,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAM,CAAC,CAAC,CAAC;IAClF,MAAMiH,WAAW,GAAG,MAAM1J,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,QAAQ,EAAE;MAAEL,IAAI,EAAE;IAAQ,CAAC,CAAC,CAAC;IAEtF3C,MAAM,CAAC0J,UAAU,CAAC,CAAC7G,iBAAiB,CAAC,CAAC;IACtC7C,MAAM,CAAC2J,SAAS,CAAC,CAAC9G,iBAAiB,CAAC,CAAC;IACrC7C,MAAM,CAAC4J,WAAW,CAAC,CAAC/G,iBAAiB,CAAC,CAAC;IACvC7C,MAAM,CAAC0J,UAAU,CAAC,CAACzG,eAAe,CAAC,eAAe,EAAE,MAAM,CAAC;IAC3DjD,MAAM,CAAC2J,SAAS,CAAC,CAAC1G,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC;IAC3DjD,MAAM,CAAC4J,WAAW,CAAC,CAAC3G,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC;IAE7D,MAAMhD,SAAS,CAAC6C,KAAK,CAAC6G,SAAS,CAAC;IAEhC,MAAME,YAAY,GAAG,MAAM3J,OAAO,CAAC,MAAMsC,MAAM,CAACQ,SAAS,CAAC,UAAU,EAAE;MAAEL,IAAI,EAAE;IAAM,CAAC,CAAC,CAAC;IAEvF3C,MAAM,CAAC6J,YAAY,CAAC,CAAChH,iBAAiB,CAAC,CAAC;IACxC7C,MAAM,CAACyJ,aAAa,CAAC,CAAC5G,iBAAiB,CAAC,CAAC;IACzC7C,MAAM,CAAC0J,UAAU,CAAC,CAAC7G,iBAAiB,CAAC,CAAC;IACtC7C,MAAM,CAAC2J,SAAS,CAAC,CAAC9G,iBAAiB,CAAC,CAAC;IACrC7C,MAAM,CAAC4J,WAAW,CAAC,CAAC/G,iBAAiB,CAAC,CAAC;IACvC7C,MAAM,CAAC0J,UAAU,CAAC,CAACzG,eAAe,CAAC,eAAe,EAAE,MAAM,CAAC;IAC3DjD,MAAM,CAAC2J,SAAS,CAAC,CAAC1G,eAAe,CAAC,eAAe,EAAE,MAAM,CAAC;IAC1DjD,MAAM,CAAC4J,WAAW,CAAC,CAAC3G,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC;EACjE;AAAC,EACJ;AAED,MAAM6G,IAAwF,GAAG;EAC7FC,KAAK,EAAE,+EAA+E;EACtFC,SAAS,EAAE1J,cAAc;EACzB6C,IAAI,EAAE;IACF7B,KAAK;IACL8B,oBAAoB,EAAA8B,aAAA,KACbzD,mBAAmB,CACzB;IACDwI,WAAW,EAAE,IAAI;IACjB9E,QAAQ,EAAEpD,YAAY;IACtBL,MAAM,EAAEjB,kBAAkB;IAC1ByJ,MAAM,EAAElI;EACZ,CAAC;EACDoF,UAAU,EAAE;IACRC,GAAG,EAAE;MACDC,QAAQ,EAAE/C;IACd;EACJ;AACJ,CAAC;AAED,eAAeuF,IAAI","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ import { LoadingIndicator } from '@box/blueprint-web';
|
|
|
4
4
|
import { IconCtaIconHover, Size5 } from '@box/blueprint-web-assets/tokens/tokens';
|
|
5
5
|
import { XMark } from '@box/blueprint-web-assets/icons/Fill';
|
|
6
6
|
import messages from '../common/messages';
|
|
7
|
-
const IconInProgress = () => {
|
|
7
|
+
const IconInProgress = /*#__PURE__*/React.forwardRef(() => {
|
|
8
8
|
const {
|
|
9
9
|
formatMessage
|
|
10
10
|
} = useIntl();
|
|
@@ -18,6 +18,7 @@ const IconInProgress = () => {
|
|
|
18
18
|
"aria-label": formatMessage(messages.loading),
|
|
19
19
|
className: "bcu-IconInProgress-loading"
|
|
20
20
|
}));
|
|
21
|
-
};
|
|
21
|
+
});
|
|
22
|
+
IconInProgress.displayName = 'IconInProgress';
|
|
22
23
|
export default IconInProgress;
|
|
23
24
|
//# sourceMappingURL=IconInProgress.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconInProgress.js","names":["React","useIntl","LoadingIndicator","IconCtaIconHover","Size5","XMark","messages","IconInProgress","formatMessage","createElement","className","color","height","width","loading"],"sources":["../../../src/elements/content-uploader/IconInProgress.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useIntl } from 'react-intl';\nimport { LoadingIndicator } from '@box/blueprint-web';\nimport { IconCtaIconHover, Size5 } from '@box/blueprint-web-assets/tokens/tokens';\nimport { XMark } from '@box/blueprint-web-assets/icons/Fill';\nimport messages from '../common/messages';\n\nconst IconInProgress
|
|
1
|
+
{"version":3,"file":"IconInProgress.js","names":["React","useIntl","LoadingIndicator","IconCtaIconHover","Size5","XMark","messages","IconInProgress","forwardRef","formatMessage","createElement","className","color","height","width","loading","displayName"],"sources":["../../../src/elements/content-uploader/IconInProgress.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { ForwardRefExoticComponent, RefAttributes, SVGProps } from 'react';\nimport { useIntl } from 'react-intl';\nimport { LoadingIndicator } from '@box/blueprint-web';\nimport { IconCtaIconHover, Size5 } from '@box/blueprint-web-assets/tokens/tokens';\nimport { XMark } from '@box/blueprint-web-assets/icons/Fill';\nimport messages from '../common/messages';\n\nconst IconInProgress: ForwardRefExoticComponent<SVGProps<SVGSVGElement> & RefAttributes<SVGSVGElement>> =\n React.forwardRef(() => {\n const { formatMessage } = useIntl();\n\n return (\n <div className=\"bcu-IconInProgress\">\n <XMark color={IconCtaIconHover} height={Size5} width={Size5} />\n <LoadingIndicator aria-label={formatMessage(messages.loading)} className=\"bcu-IconInProgress-loading\" />\n </div>\n );\n });\n\nIconInProgress.displayName = 'IconInProgress';\n\nexport default IconInProgress;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,OAAO,QAAQ,YAAY;AACpC,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,gBAAgB,EAAEC,KAAK,QAAQ,yCAAyC;AACjF,SAASC,KAAK,QAAQ,sCAAsC;AAC5D,OAAOC,QAAQ,MAAM,oBAAoB;AAEzC,MAAMC,cAAiG,gBACnGP,KAAK,CAACQ,UAAU,CAAC,MAAM;EACnB,MAAM;IAAEC;EAAc,CAAC,GAAGR,OAAO,CAAC,CAAC;EAEnC,oBACID,KAAA,CAAAU,aAAA;IAAKC,SAAS,EAAC;EAAoB,gBAC/BX,KAAA,CAAAU,aAAA,CAACL,KAAK;IAACO,KAAK,EAAET,gBAAiB;IAACU,MAAM,EAAET,KAAM;IAACU,KAAK,EAAEV;EAAM,CAAE,CAAC,eAC/DJ,KAAA,CAAAU,aAAA,CAACR,gBAAgB;IAAC,cAAYO,aAAa,CAACH,QAAQ,CAACS,OAAO,CAAE;IAACJ,SAAS,EAAC;EAA4B,CAAE,CACtG,CAAC;AAEd,CAAC,CAAC;AAENJ,cAAc,CAACS,WAAW,GAAG,gBAAgB;AAE7C,eAAeT,cAAc","ignoreList":[]}
|
|
@@ -21,10 +21,10 @@ const ItemAction = ({
|
|
|
21
21
|
const {
|
|
22
22
|
code
|
|
23
23
|
} = error || {};
|
|
24
|
-
const LoadingIndicatorIcon = () => /*#__PURE__*/React.createElement(LoadingIndicator, {
|
|
24
|
+
const LoadingIndicatorIcon = /*#__PURE__*/React.forwardRef(() => /*#__PURE__*/React.createElement(LoadingIndicator, {
|
|
25
25
|
"aria-label": formatMessage(messages.loading),
|
|
26
26
|
className: "bcu-ItemAction-loading"
|
|
27
|
-
});
|
|
27
|
+
}));
|
|
28
28
|
let Icon = XMark;
|
|
29
29
|
let tooltip;
|
|
30
30
|
if (isFolder && status !== STATUS_PENDING) {
|
|
@@ -32,12 +32,12 @@ const ItemAction = ({
|
|
|
32
32
|
}
|
|
33
33
|
switch (status) {
|
|
34
34
|
case STATUS_COMPLETE:
|
|
35
|
-
Icon = () => /*#__PURE__*/React.createElement(Checkmark, {
|
|
35
|
+
Icon = /*#__PURE__*/React.forwardRef(() => /*#__PURE__*/React.createElement(Checkmark, {
|
|
36
36
|
"aria-label": formatMessage(messages.complete),
|
|
37
37
|
color: SurfaceStatusSurfaceSuccess,
|
|
38
38
|
height: Size5,
|
|
39
39
|
width: Size5
|
|
40
|
-
});
|
|
40
|
+
}));
|
|
41
41
|
if (!isResumableUploadsEnabled) {
|
|
42
42
|
tooltip = messages.remove;
|
|
43
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemAction.js","names":["React","useIntl","Button","IconButton","LoadingIndicator","Tooltip","ArrowCurveForward","Checkmark","XMark","Size5","SurfaceStatusSurfaceSuccess","IconInProgress","ERROR_CODE_UPLOAD_FILE_SIZE_LIMIT_EXCEEDED","STATUS_COMPLETE","STATUS_ERROR","STATUS_IN_PROGRESS","STATUS_PENDING","STATUS_STAGED","messages","ItemAction","error","isFolder","isResumableUploadsEnabled","onClick","onUpgradeCTAClick","status","formatMessage","code","LoadingIndicatorIcon","createElement","loading","className","Icon","tooltip","complete","color","height","width","remove","resume","retry","uploadsCancelButtonTooltip","variant","uploadsFileSizeLimitExceededUpgradeMessageForUpgradeCta","isDisabled","tooltipText","content","disabled","icon"],"sources":["../../../src/elements/content-uploader/ItemAction.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useIntl } from 'react-intl';\nimport { AxiosError } from 'axios';\nimport { Button, IconButton, LoadingIndicator, Tooltip } from '@box/blueprint-web';\nimport { ArrowCurveForward, Checkmark, XMark } from '@box/blueprint-web-assets/icons/Fill';\nimport { Size5, SurfaceStatusSurfaceSuccess } from '@box/blueprint-web-assets/tokens/tokens';\nimport IconInProgress from './IconInProgress';\n\nimport {\n ERROR_CODE_UPLOAD_FILE_SIZE_LIMIT_EXCEEDED,\n STATUS_COMPLETE,\n STATUS_ERROR,\n STATUS_IN_PROGRESS,\n STATUS_PENDING,\n STATUS_STAGED,\n} from '../../constants';\n\nimport messages from '../common/messages';\n\nimport type { UploadStatus } from '../../common/types/upload';\n\nimport './ItemAction.scss';\n\nexport interface ItemActionProps {\n error?: Partial<AxiosError>;\n isFolder?: boolean;\n isResumableUploadsEnabled: boolean;\n onClick: React.MouseEventHandler<HTMLButtonElement>;\n onUpgradeCTAClick?: () => void;\n status: UploadStatus;\n}\n\nconst ItemAction = ({\n error,\n isFolder = false,\n isResumableUploadsEnabled,\n onClick,\n onUpgradeCTAClick,\n status,\n}: ItemActionProps) => {\n const { formatMessage } = useIntl();\n const { code } = error || {};\n\n const LoadingIndicatorIcon = () => (\n <LoadingIndicator aria-label={formatMessage(messages.loading)} className=\"bcu-ItemAction-loading\" />\n );\n\n let Icon = XMark;\n let tooltip;\n\n if (isFolder && status !== STATUS_PENDING) {\n return null;\n }\n\n switch (status) {\n case STATUS_COMPLETE:\n Icon = () => (\n <Checkmark\n aria-label={formatMessage(messages.complete)}\n color={SurfaceStatusSurfaceSuccess}\n height={Size5}\n width={Size5}\n />\n );\n if (!isResumableUploadsEnabled) {\n tooltip = messages.remove;\n }\n break;\n case STATUS_ERROR:\n Icon = ArrowCurveForward;\n tooltip = isResumableUploadsEnabled ? messages.resume : messages.retry;\n break;\n case STATUS_IN_PROGRESS:\n case STATUS_STAGED:\n if (isResumableUploadsEnabled) {\n Icon = LoadingIndicatorIcon;\n } else {\n Icon = IconInProgress;\n tooltip = messages.uploadsCancelButtonTooltip;\n }\n break;\n case STATUS_PENDING:\n default:\n if (isResumableUploadsEnabled) {\n Icon = LoadingIndicatorIcon;\n } else {\n tooltip = messages.uploadsCancelButtonTooltip;\n }\n break;\n }\n\n if (status === STATUS_ERROR && code === ERROR_CODE_UPLOAD_FILE_SIZE_LIMIT_EXCEEDED && !!onUpgradeCTAClick) {\n return (\n <Button\n onClick={onUpgradeCTAClick}\n data-resin-target=\"large_version_error_inline_upgrade_cta\"\n variant=\"primary\"\n >\n {formatMessage(messages.uploadsFileSizeLimitExceededUpgradeMessageForUpgradeCta)}\n </Button>\n );\n }\n\n const isDisabled = status === STATUS_STAGED;\n const tooltipText = tooltip && formatMessage(tooltip);\n\n return (\n <div className=\"bcu-item-action\">\n {tooltip ? (\n <Tooltip content={tooltipText}>\n <IconButton aria-label={tooltipText} disabled={isDisabled} icon={Icon} onClick={onClick} />\n </Tooltip>\n ) : (\n <Icon />\n )}\n </div>\n );\n};\n\nexport default ItemAction;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;
|
|
1
|
+
{"version":3,"file":"ItemAction.js","names":["React","useIntl","Button","IconButton","LoadingIndicator","Tooltip","ArrowCurveForward","Checkmark","XMark","Size5","SurfaceStatusSurfaceSuccess","IconInProgress","ERROR_CODE_UPLOAD_FILE_SIZE_LIMIT_EXCEEDED","STATUS_COMPLETE","STATUS_ERROR","STATUS_IN_PROGRESS","STATUS_PENDING","STATUS_STAGED","messages","ItemAction","error","isFolder","isResumableUploadsEnabled","onClick","onUpgradeCTAClick","status","formatMessage","code","LoadingIndicatorIcon","forwardRef","createElement","loading","className","Icon","tooltip","complete","color","height","width","remove","resume","retry","uploadsCancelButtonTooltip","variant","uploadsFileSizeLimitExceededUpgradeMessageForUpgradeCta","isDisabled","tooltipText","content","disabled","icon"],"sources":["../../../src/elements/content-uploader/ItemAction.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { ForwardRefExoticComponent, RefAttributes, SVGProps } from 'react';\nimport { useIntl } from 'react-intl';\nimport { AxiosError } from 'axios';\nimport { Button, IconButton, LoadingIndicator, Tooltip } from '@box/blueprint-web';\nimport { ArrowCurveForward, Checkmark, XMark } from '@box/blueprint-web-assets/icons/Fill';\nimport { Size5, SurfaceStatusSurfaceSuccess } from '@box/blueprint-web-assets/tokens/tokens';\nimport IconInProgress from './IconInProgress';\n\nimport {\n ERROR_CODE_UPLOAD_FILE_SIZE_LIMIT_EXCEEDED,\n STATUS_COMPLETE,\n STATUS_ERROR,\n STATUS_IN_PROGRESS,\n STATUS_PENDING,\n STATUS_STAGED,\n} from '../../constants';\n\nimport messages from '../common/messages';\n\nimport type { UploadStatus } from '../../common/types/upload';\n\nimport './ItemAction.scss';\n\nexport interface ItemActionProps {\n error?: Partial<AxiosError>;\n isFolder?: boolean;\n isResumableUploadsEnabled: boolean;\n onClick: React.MouseEventHandler<HTMLButtonElement>;\n onUpgradeCTAClick?: () => void;\n status: UploadStatus;\n}\n\ntype IconComponent = ForwardRefExoticComponent<SVGProps<SVGSVGElement> & RefAttributes<SVGSVGElement>>;\n\nconst ItemAction = ({\n error,\n isFolder = false,\n isResumableUploadsEnabled,\n onClick,\n onUpgradeCTAClick,\n status,\n}: ItemActionProps) => {\n const { formatMessage } = useIntl();\n const { code } = error || {};\n\n const LoadingIndicatorIcon = React.forwardRef<SVGSVGElement>(() => (\n <LoadingIndicator aria-label={formatMessage(messages.loading)} className=\"bcu-ItemAction-loading\" />\n ));\n\n let Icon: IconComponent = XMark;\n let tooltip;\n\n if (isFolder && status !== STATUS_PENDING) {\n return null;\n }\n\n switch (status) {\n case STATUS_COMPLETE:\n Icon = React.forwardRef<SVGSVGElement>(() => (\n <Checkmark\n aria-label={formatMessage(messages.complete)}\n color={SurfaceStatusSurfaceSuccess}\n height={Size5}\n width={Size5}\n />\n ));\n if (!isResumableUploadsEnabled) {\n tooltip = messages.remove;\n }\n break;\n case STATUS_ERROR:\n Icon = ArrowCurveForward;\n tooltip = isResumableUploadsEnabled ? messages.resume : messages.retry;\n break;\n case STATUS_IN_PROGRESS:\n case STATUS_STAGED:\n if (isResumableUploadsEnabled) {\n Icon = LoadingIndicatorIcon;\n } else {\n Icon = IconInProgress as IconComponent;\n tooltip = messages.uploadsCancelButtonTooltip;\n }\n break;\n case STATUS_PENDING:\n default:\n if (isResumableUploadsEnabled) {\n Icon = LoadingIndicatorIcon;\n } else {\n tooltip = messages.uploadsCancelButtonTooltip;\n }\n break;\n }\n\n if (status === STATUS_ERROR && code === ERROR_CODE_UPLOAD_FILE_SIZE_LIMIT_EXCEEDED && !!onUpgradeCTAClick) {\n return (\n <Button\n onClick={onUpgradeCTAClick}\n data-resin-target=\"large_version_error_inline_upgrade_cta\"\n variant=\"primary\"\n >\n {formatMessage(messages.uploadsFileSizeLimitExceededUpgradeMessageForUpgradeCta)}\n </Button>\n );\n }\n\n const isDisabled = status === STATUS_STAGED;\n const tooltipText = tooltip && formatMessage(tooltip);\n\n return (\n <div className=\"bcu-item-action\">\n {tooltip ? (\n <Tooltip content={tooltipText}>\n <IconButton aria-label={tooltipText} disabled={isDisabled} icon={Icon} onClick={onClick} />\n </Tooltip>\n ) : (\n <Icon />\n )}\n </div>\n );\n};\n\nexport default ItemAction;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { FormattedMessage } from 'react-intl';
|
|
4
4
|
import { BoxAiAgentSelector } from '@box/box-ai-agent-selector';
|
|
5
5
|
import { InlineNotice, TooltipProvider } from '@box/blueprint-web';
|
|
6
|
+
// $FlowFixMe
|
|
6
7
|
import BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';
|
|
7
8
|
import Toggle from '../../components/toggle';
|
|
8
9
|
import { RadioButton, RadioGroup } from '../../components/radio';
|
|
@@ -4,6 +4,7 @@ import { FormattedMessage } from 'react-intl';
|
|
|
4
4
|
|
|
5
5
|
import { BoxAiAgentSelector } from '@box/box-ai-agent-selector';
|
|
6
6
|
import { InlineNotice, TooltipProvider } from '@box/blueprint-web';
|
|
7
|
+
// $FlowFixMe
|
|
7
8
|
import BoxAiLogo from '@box/blueprint-web-assets/icons/Logo/BoxAiLogo';
|
|
8
9
|
|
|
9
10
|
import Toggle from '../../components/toggle';
|
|
@@ -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","isCascadingEnabled","isCascadingOverwritten","isCustomMetadata","isAIFolderExtractionEnabled","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","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';\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 isAIFolderExtractionEnabled: boolean,\n isCascadingEnabled: boolean,\n isCascadingOverwritten: boolean,\n isCustomMetadata: 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 isCascadingEnabled,\n isCascadingOverwritten,\n isCustomMetadata,\n isAIFolderExtractionEnabled,\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\">\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 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 <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 <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","InlineNotice","TooltipProvider","BoxAiLogo","Toggle","RadioButton","RadioGroup","Link","IconAlertDefault","messages","COMMUNITY_LINK","AI_LINK","PRICING_LINK","agents","id","name","isEnterpriseDefault","CascadePolicy","canEdit","canUseAIFolderExtraction","isCascadingEnabled","isCascadingOverwritten","isCustomMetadata","isAIFolderExtractionEnabled","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","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 isAIFolderExtractionEnabled: boolean,\n isCascadingEnabled: boolean,\n isCascadingOverwritten: boolean,\n isCustomMetadata: 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 isCascadingEnabled,\n isCascadingOverwritten,\n isCustomMetadata,\n isAIFolderExtractionEnabled,\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\">\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 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 <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 <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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileIcon.js","names":["React","FileAdobeExpress","FileAudio","FileBookmark","FileBoxNote","FileCanvas","FileCode","FileDefault","FileDicom","FileDocGen","FileDocs","FileDwg","FileExcel","FileIllustrator","FileImage","FileIndesign","FileKeynote","FileNumbers","FilePdf","FilePages","FilePhotoshop","FilePowerpoint","FilePresentation","FileSheets","FileSlides","FileSpreadsheet","FileText","FileThreeD","FileUpload","FileVector","FileVideo","FileWord","FileXbd","FileXdw","FileZip","useIntl","messages","Components","FileDocument","mirror","values","reduce","prev","cur","EXTENSIONS","getFileIconComponent","extension","extensionComponentName","Object","keys","filter","extensionComponent","toLowerCase","FileIcon","dimension","title","formatMessage","componentName","IconComponent","createElement","file","iconFile","toUpperCase","height","width"],"sources":["../../../src/icons/file-icon/FileIcon.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n FileAdobeExpress,\n FileAudio,\n FileBookmark,\n FileBoxNote,\n FileCanvas,\n FileCode,\n FileDefault,\n FileDicom,\n FileDocGen,\n FileDocs,\n FileDwg,\n FileExcel,\n FileIllustrator,\n FileImage,\n FileIndesign,\n FileKeynote,\n FileNumbers,\n FilePdf,\n FilePages,\n FilePhotoshop,\n FilePowerpoint,\n FilePresentation,\n FileSheets,\n FileSlides,\n FileSpreadsheet,\n FileText,\n FileThreeD,\n FileUpload,\n FileVector,\n FileVideo,\n FileWord,\n FileXbd,\n FileXdw,\n FileZip,\n} from '@box/blueprint-web-assets/icons/Content';\nimport { useIntl } from 'react-intl';\n\nimport messages from '../../elements/common/messages';\n\nconst Components: { [key: string]: (props: React.SVGProps<SVGSVGElement>) => JSX.Element } = {\n FileAdobeExpress,\n FileAudio,\n FileBookmark,\n FileBoxNote,\n FileCanvas,\n FileCode,\n FileDefault,\n FileDicom,\n FileDocGen,\n FileDocument: FileText,\n FileDocs,\n FileDwg,\n FileExcel,\n FileIllustrator,\n FileImage,\n FileIndesign,\n FileKeynote,\n FileNumbers,\n FilePdf,\n FilePages,\n FilePhotoshop,\n FilePowerpoint,\n FilePresentation,\n FileSheets,\n FileSlides,\n FileSpreadsheet,\n FileText,\n FileThreeD,\n FileUpload,\n FileVector,\n FileVideo,\n FileWord,\n FileXbd,\n FileXdw,\n FileZip,\n};\n\nconst mirror = (values: Array<string>) =>\n values.reduce((prev: { [key: string]: string }, cur: string) => {\n prev[cur] = cur;\n return prev;\n }, {});\n\nexport const EXTENSIONS: { [key: string]: { [key: string]: string } } = {\n FileAdobeExpress: mirror(['adobeexpress']),\n FileAudio: mirror([\n 'aac',\n 'aif',\n 'aifc',\n 'aiff',\n 'amr',\n 'au',\n 'flac',\n 'm3u',\n 'm4a',\n 'mid',\n 'mp3',\n 'ra',\n 'wav',\n 'wma',\n 'wpl',\n ]),\n FileCanvas: mirror(['boxcanvas']),\n FileBoxNote: mirror(['boxnote']),\n FileCode: mirror([\n 'as',\n 'as3',\n 'asm',\n 'aspx',\n 'c',\n 'cpp',\n 'bat',\n 'c',\n 'cc',\n 'cmake',\n 'cs',\n 'css',\n 'cxx',\n 'db',\n 'diff',\n 'erb',\n 'groovy',\n 'h',\n 'haml',\n 'hh',\n 'htm',\n 'html',\n 'java',\n 'js',\n 'less',\n 'm',\n 'make',\n 'md',\n 'ml',\n 'mm',\n 'php',\n 'pl',\n 'plist',\n 'properties',\n 'py',\n 'rb',\n 'sass',\n 'scala',\n 'script',\n 'scm',\n 'sml',\n 'sql',\n 'sh',\n 'wabba',\n 'yaml',\n ]),\n FileDocument: mirror(['dot', 'dotx', 'msg', 'odt', 'rtf', 'wpd', 'xhtml', 'xml', 'xsd', 'xsl']),\n FileDwg: mirror(['dwg', 'dwgzip']),\n FileExcel: mirror(['xls', 'xlsx', 'xlsm', 'xlsb']),\n FileDocs: mirror(['gdoc']),\n FileSheets: mirror(['gsheet']),\n FileSlides: mirror(['gslide', 'gslides']),\n FileVector: mirror(['eps']),\n FileIllustrator: mirror(['ai']),\n FileIndesign: mirror(['idml', 'indd', 'indt', 'inx']),\n FileKeynote: mirror(['key']),\n FileNumbers: mirror(['numbers']),\n FilePages: mirror(['pages']),\n FileImage: mirror(['bmp', 'gif', 'gdraw', 'jpeg', 'jpg', 'png', 'ps', 'svs', 'svg', 'tif', 'tiff', 'heic', 'heif']),\n FilePdf: mirror(['pdf']),\n FilePresentation: mirror(['odp', 'otp', 'pot', 'potx']),\n FilePowerpoint: mirror(['ppt', 'pptx', 'pptm']),\n FilePhotoshop: mirror(['psd']),\n FileSpreadsheet: mirror(['csv', 'ods', 'tsv', 'xlt', 'xltx']),\n FileText: mirror(['txt', 'vi', 'vim', 'webdoc']),\n FileThreeD: mirror(['3ds', 'dae', 'fbx', 'obj', 'ply', 'stl']),\n FileVideo: mirror([\n '3g2',\n '3gp',\n 'avi',\n 'flv',\n 'm2v',\n 'm2ts',\n 'm4v',\n 'mkv',\n 'mov',\n 'mp4',\n 'mpeg',\n 'mpg',\n 'ogg',\n 'mts',\n 'qt',\n 'wmv',\n ]),\n FileWord: mirror(['docx', 'doc', 'docm']),\n FileXbd: mirror(['xbd']),\n FileXdw: mirror(['xdw']),\n FileZip: mirror(['rar', 'tgz', 'zip']),\n};\n\nconst getFileIconComponent = (extension = '') => {\n const extensionComponentName = Object.keys(EXTENSIONS).filter(\n extensionComponent => !!EXTENSIONS[extensionComponent][extension.toLowerCase()],\n )[0];\n return extensionComponentName || 'FileDefault';\n};\n\nexport interface FileIconProps {\n /** Dimension of the icon. */\n dimension?: number;\n /** Extension of file to display icon for. Defaults to generic icon */\n extension?: string;\n /** A string describing the icon if it's not purely decorative for accessibility */\n title?: string;\n}\n\nconst FileIcon = ({ dimension = 32, extension = '', title }: FileIconProps) => {\n const { formatMessage } = useIntl();\n const componentName = getFileIconComponent(extension);\n const IconComponent = Components[componentName];\n\n return (\n <IconComponent\n aria-label={\n title ||\n (componentName === 'FileDefault'\n ? formatMessage(messages.file)\n : formatMessage(messages.iconFile, { extension: extension.toUpperCase() }))\n }\n height={dimension}\n width={dimension}\n />\n );\n};\n\nexport default FileIcon;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FileIcon.js","names":["React","FileAdobeExpress","FileAudio","FileBookmark","FileBoxNote","FileCanvas","FileCode","FileDefault","FileDicom","FileDocGen","FileDocs","FileDwg","FileExcel","FileIllustrator","FileImage","FileIndesign","FileKeynote","FileNumbers","FilePdf","FilePages","FilePhotoshop","FilePowerpoint","FilePresentation","FileSheets","FileSlides","FileSpreadsheet","FileText","FileThreeD","FileUpload","FileVector","FileVideo","FileWord","FileXbd","FileXdw","FileZip","useIntl","messages","Components","FileDocument","mirror","values","reduce","prev","cur","EXTENSIONS","getFileIconComponent","extension","extensionComponentName","Object","keys","filter","extensionComponent","toLowerCase","FileIcon","dimension","title","formatMessage","componentName","IconComponent","createElement","file","iconFile","toUpperCase","height","width"],"sources":["../../../src/icons/file-icon/FileIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { ForwardRefExoticComponent, RefAttributes, SVGProps } from 'react';\n\nimport {\n FileAdobeExpress,\n FileAudio,\n FileBookmark,\n FileBoxNote,\n FileCanvas,\n FileCode,\n FileDefault,\n FileDicom,\n FileDocGen,\n FileDocs,\n FileDwg,\n FileExcel,\n FileIllustrator,\n FileImage,\n FileIndesign,\n FileKeynote,\n FileNumbers,\n FilePdf,\n FilePages,\n FilePhotoshop,\n FilePowerpoint,\n FilePresentation,\n FileSheets,\n FileSlides,\n FileSpreadsheet,\n FileText,\n FileThreeD,\n FileUpload,\n FileVector,\n FileVideo,\n FileWord,\n FileXbd,\n FileXdw,\n FileZip,\n} from '@box/blueprint-web-assets/icons/Content';\nimport { useIntl } from 'react-intl';\n\nimport messages from '../../elements/common/messages';\n\ntype FileIconComponent = ForwardRefExoticComponent<SVGProps<SVGSVGElement> & RefAttributes<SVGSVGElement>>;\n\nconst Components: { [key: string]: FileIconComponent } = {\n FileAdobeExpress,\n FileAudio,\n FileBookmark,\n FileBoxNote,\n FileCanvas,\n FileCode,\n FileDefault,\n FileDicom,\n FileDocGen,\n FileDocument: FileText,\n FileDocs,\n FileDwg,\n FileExcel,\n FileIllustrator,\n FileImage,\n FileIndesign,\n FileKeynote,\n FileNumbers,\n FilePdf,\n FilePages,\n FilePhotoshop,\n FilePowerpoint,\n FilePresentation,\n FileSheets,\n FileSlides,\n FileSpreadsheet,\n FileText,\n FileThreeD,\n FileUpload,\n FileVector,\n FileVideo,\n FileWord,\n FileXbd,\n FileXdw,\n FileZip,\n};\n\nconst mirror = (values: Array<string>) =>\n values.reduce((prev: { [key: string]: string }, cur: string) => {\n prev[cur] = cur;\n return prev;\n }, {});\n\nexport const EXTENSIONS: { [key: string]: { [key: string]: string } } = {\n FileAdobeExpress: mirror(['adobeexpress']),\n FileAudio: mirror([\n 'aac',\n 'aif',\n 'aifc',\n 'aiff',\n 'amr',\n 'au',\n 'flac',\n 'm3u',\n 'm4a',\n 'mid',\n 'mp3',\n 'ra',\n 'wav',\n 'wma',\n 'wpl',\n ]),\n FileCanvas: mirror(['boxcanvas']),\n FileBoxNote: mirror(['boxnote']),\n FileCode: mirror([\n 'as',\n 'as3',\n 'asm',\n 'aspx',\n 'c',\n 'cpp',\n 'bat',\n 'c',\n 'cc',\n 'cmake',\n 'cs',\n 'css',\n 'cxx',\n 'db',\n 'diff',\n 'erb',\n 'groovy',\n 'h',\n 'haml',\n 'hh',\n 'htm',\n 'html',\n 'java',\n 'js',\n 'less',\n 'm',\n 'make',\n 'md',\n 'ml',\n 'mm',\n 'php',\n 'pl',\n 'plist',\n 'properties',\n 'py',\n 'rb',\n 'sass',\n 'scala',\n 'script',\n 'scm',\n 'sml',\n 'sql',\n 'sh',\n 'wabba',\n 'yaml',\n ]),\n FileDocument: mirror(['dot', 'dotx', 'msg', 'odt', 'rtf', 'wpd', 'xhtml', 'xml', 'xsd', 'xsl']),\n FileDwg: mirror(['dwg', 'dwgzip']),\n FileExcel: mirror(['xls', 'xlsx', 'xlsm', 'xlsb']),\n FileDocs: mirror(['gdoc']),\n FileSheets: mirror(['gsheet']),\n FileSlides: mirror(['gslide', 'gslides']),\n FileVector: mirror(['eps']),\n FileIllustrator: mirror(['ai']),\n FileIndesign: mirror(['idml', 'indd', 'indt', 'inx']),\n FileKeynote: mirror(['key']),\n FileNumbers: mirror(['numbers']),\n FilePages: mirror(['pages']),\n FileImage: mirror(['bmp', 'gif', 'gdraw', 'jpeg', 'jpg', 'png', 'ps', 'svs', 'svg', 'tif', 'tiff', 'heic', 'heif']),\n FilePdf: mirror(['pdf']),\n FilePresentation: mirror(['odp', 'otp', 'pot', 'potx']),\n FilePowerpoint: mirror(['ppt', 'pptx', 'pptm']),\n FilePhotoshop: mirror(['psd']),\n FileSpreadsheet: mirror(['csv', 'ods', 'tsv', 'xlt', 'xltx']),\n FileText: mirror(['txt', 'vi', 'vim', 'webdoc']),\n FileThreeD: mirror(['3ds', 'dae', 'fbx', 'obj', 'ply', 'stl']),\n FileVideo: mirror([\n '3g2',\n '3gp',\n 'avi',\n 'flv',\n 'm2v',\n 'm2ts',\n 'm4v',\n 'mkv',\n 'mov',\n 'mp4',\n 'mpeg',\n 'mpg',\n 'ogg',\n 'mts',\n 'qt',\n 'wmv',\n ]),\n FileWord: mirror(['docx', 'doc', 'docm']),\n FileXbd: mirror(['xbd']),\n FileXdw: mirror(['xdw']),\n FileZip: mirror(['rar', 'tgz', 'zip']),\n};\n\nconst getFileIconComponent = (extension = '') => {\n const extensionComponentName = Object.keys(EXTENSIONS).filter(\n extensionComponent => !!EXTENSIONS[extensionComponent][extension.toLowerCase()],\n )[0];\n return extensionComponentName || 'FileDefault';\n};\n\nexport interface FileIconProps {\n /** Dimension of the icon. */\n dimension?: number;\n /** Extension of file to display icon for. Defaults to generic icon */\n extension?: string;\n /** A string describing the icon if it's not purely decorative for accessibility */\n title?: string;\n}\n\nconst FileIcon = ({ dimension = 32, extension = '', title }: FileIconProps) => {\n const { formatMessage } = useIntl();\n const componentName = getFileIconComponent(extension);\n const IconComponent = Components[componentName];\n\n return (\n <IconComponent\n aria-label={\n title ||\n (componentName === 'FileDefault'\n ? formatMessage(messages.file)\n : formatMessage(messages.iconFile, { extension: extension.toUpperCase() }))\n }\n height={dimension}\n width={dimension}\n />\n );\n};\n\nexport default FileIcon;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,SACIC,gBAAgB,EAChBC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,UAAU,EACVC,QAAQ,EACRC,WAAW,EACXC,SAAS,EACTC,UAAU,EACVC,QAAQ,EACRC,OAAO,EACPC,SAAS,EACTC,eAAe,EACfC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,WAAW,EACXC,OAAO,EACPC,SAAS,EACTC,aAAa,EACbC,cAAc,EACdC,gBAAgB,EAChBC,UAAU,EACVC,UAAU,EACVC,eAAe,EACfC,QAAQ,EACRC,UAAU,EACVC,UAAU,EACVC,UAAU,EACVC,SAAS,EACTC,QAAQ,EACRC,OAAO,EACPC,OAAO,EACPC,OAAO,QACJ,yCAAyC;AAChD,SAASC,OAAO,QAAQ,YAAY;AAEpC,OAAOC,QAAQ,MAAM,gCAAgC;AAIrD,MAAMC,UAAgD,GAAG;EACrDpC,gBAAgB;EAChBC,SAAS;EACTC,YAAY;EACZC,WAAW;EACXC,UAAU;EACVC,QAAQ;EACRC,WAAW;EACXC,SAAS;EACTC,UAAU;EACV6B,YAAY,EAAEZ,QAAQ;EACtBhB,QAAQ;EACRC,OAAO;EACPC,SAAS;EACTC,eAAe;EACfC,SAAS;EACTC,YAAY;EACZC,WAAW;EACXC,WAAW;EACXC,OAAO;EACPC,SAAS;EACTC,aAAa;EACbC,cAAc;EACdC,gBAAgB;EAChBC,UAAU;EACVC,UAAU;EACVC,eAAe;EACfC,QAAQ;EACRC,UAAU;EACVC,UAAU;EACVC,UAAU;EACVC,SAAS;EACTC,QAAQ;EACRC,OAAO;EACPC,OAAO;EACPC;AACJ,CAAC;AAED,MAAMK,MAAM,GAAIC,MAAqB,IACjCA,MAAM,CAACC,MAAM,CAAC,CAACC,IAA+B,EAAEC,GAAW,KAAK;EAC5DD,IAAI,CAACC,GAAG,CAAC,GAAGA,GAAG;EACf,OAAOD,IAAI;AACf,CAAC,EAAE,CAAC,CAAC,CAAC;AAEV,OAAO,MAAME,UAAwD,GAAG;EACpE3C,gBAAgB,EAAEsC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;EAC1CrC,SAAS,EAAEqC,MAAM,CAAC,CACd,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EACN,KAAK,EACL,IAAI,EACJ,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,CACR,CAAC;EACFlC,UAAU,EAAEkC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;EACjCnC,WAAW,EAAEmC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;EAChCjC,QAAQ,EAAEiC,MAAM,CAAC,CACb,IAAI,EACJ,KAAK,EACL,KAAK,EACL,MAAM,EACN,GAAG,EACH,KAAK,EACL,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,KAAK,EACL,KAAK,EACL,IAAI,EACJ,MAAM,EACN,KAAK,EACL,QAAQ,EACR,GAAG,EACH,MAAM,EACN,IAAI,EACJ,KAAK,EACL,MAAM,EACN,MAAM,EACN,IAAI,EACJ,MAAM,EACN,GAAG,EACH,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,OAAO,EACP,QAAQ,EACR,KAAK,EACL,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,MAAM,CACT,CAAC;EACFD,YAAY,EAAEC,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;EAC/F5B,OAAO,EAAE4B,MAAM,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;EAClC3B,SAAS,EAAE2B,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;EAClD7B,QAAQ,EAAE6B,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;EAC1BhB,UAAU,EAAEgB,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;EAC9Bf,UAAU,EAAEe,MAAM,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;EACzCV,UAAU,EAAEU,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;EAC3B1B,eAAe,EAAE0B,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;EAC/BxB,YAAY,EAAEwB,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;EACrDvB,WAAW,EAAEuB,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;EAC5BtB,WAAW,EAAEsB,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;EAChCpB,SAAS,EAAEoB,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;EAC5BzB,SAAS,EAAEyB,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;EACnHrB,OAAO,EAAEqB,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;EACxBjB,gBAAgB,EAAEiB,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;EACvDlB,cAAc,EAAEkB,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;EAC/CnB,aAAa,EAAEmB,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;EAC9Bd,eAAe,EAAEc,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;EAC7Db,QAAQ,EAAEa,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;EAChDZ,UAAU,EAAEY,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;EAC9DT,SAAS,EAAES,MAAM,CAAC,CACd,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,EACL,IAAI,EACJ,KAAK,CACR,CAAC;EACFR,QAAQ,EAAEQ,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;EACzCP,OAAO,EAAEO,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;EACxBN,OAAO,EAAEM,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;EACxBL,OAAO,EAAEK,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACzC,CAAC;AAED,MAAMM,oBAAoB,GAAGA,CAACC,SAAS,GAAG,EAAE,KAAK;EAC7C,MAAMC,sBAAsB,GAAGC,MAAM,CAACC,IAAI,CAACL,UAAU,CAAC,CAACM,MAAM,CACzDC,kBAAkB,IAAI,CAAC,CAACP,UAAU,CAACO,kBAAkB,CAAC,CAACL,SAAS,CAACM,WAAW,CAAC,CAAC,CAClF,CAAC,CAAC,CAAC,CAAC;EACJ,OAAOL,sBAAsB,IAAI,aAAa;AAClD,CAAC;AAWD,MAAMM,QAAQ,GAAGA,CAAC;EAAEC,SAAS,GAAG,EAAE;EAAER,SAAS,GAAG,EAAE;EAAES;AAAqB,CAAC,KAAK;EAC3E,MAAM;IAAEC;EAAc,CAAC,GAAGrB,OAAO,CAAC,CAAC;EACnC,MAAMsB,aAAa,GAAGZ,oBAAoB,CAACC,SAAS,CAAC;EACrD,MAAMY,aAAa,GAAGrB,UAAU,CAACoB,aAAa,CAAC;EAE/C,oBACIzD,KAAA,CAAA2D,aAAA,CAACD,aAAa;IACV,cACIH,KAAK,KACJE,aAAa,KAAK,aAAa,GAC1BD,aAAa,CAACpB,QAAQ,CAACwB,IAAI,CAAC,GAC5BJ,aAAa,CAACpB,QAAQ,CAACyB,QAAQ,EAAE;MAAEf,SAAS,EAAEA,SAAS,CAACgB,WAAW,CAAC;IAAE,CAAC,CAAC,CACjF;IACDC,MAAM,EAAET,SAAU;IAClBU,KAAK,EAAEV;EAAU,CACpB,CAAC;AAEV,CAAC;AAED,eAAeD,QAAQ","ignoreList":[]}
|