refactor: menu component props and toolbar menu item colors [skip e2e]
This commit is contained in:
@@ -140,7 +140,6 @@ const GeneralAccountMenu: FunctionComponent<Props> = ({ setMenuPane, closeMenu,
|
|||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
<Menu
|
<Menu
|
||||||
isOpen={application.accountMenuController.show}
|
|
||||||
a11yLabel="General account menu"
|
a11yLabel="General account menu"
|
||||||
closeMenu={closeMenu}
|
closeMenu={closeMenu}
|
||||||
initialFocus={!application.hasAccount() ? CREATE_ACCOUNT_INDEX : SWITCHER_INDEX}
|
initialFocus={!application.hasAccount() ? CREATE_ACCOUNT_INDEX : SWITCHER_INDEX}
|
||||||
|
|||||||
@@ -11,13 +11,11 @@ import MenuSection from '@/Components/Menu/MenuSection'
|
|||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
mainApplicationGroup: WebApplicationGroup
|
mainApplicationGroup: WebApplicationGroup
|
||||||
isOpen: boolean
|
|
||||||
hideWorkspaceOptions?: boolean
|
hideWorkspaceOptions?: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const WorkspaceSwitcherMenu: FunctionComponent<Props> = ({
|
const WorkspaceSwitcherMenu: FunctionComponent<Props> = ({
|
||||||
mainApplicationGroup,
|
mainApplicationGroup,
|
||||||
isOpen,
|
|
||||||
hideWorkspaceOptions = false,
|
hideWorkspaceOptions = false,
|
||||||
}: Props) => {
|
}: Props) => {
|
||||||
const application = useApplication()
|
const application = useApplication()
|
||||||
@@ -71,7 +69,7 @@ const WorkspaceSwitcherMenu: FunctionComponent<Props> = ({
|
|||||||
}, [mainApplicationGroup])
|
}, [mainApplicationGroup])
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Workspace switcher menu" className="focus:shadow-none" isOpen={isOpen}>
|
<Menu a11yLabel="Workspace switcher menu" className="focus:shadow-none">
|
||||||
<MenuSection>
|
<MenuSection>
|
||||||
{applicationDescriptors.map((descriptor) => (
|
{applicationDescriptors.map((descriptor) => (
|
||||||
<WorkspaceMenuItem
|
<WorkspaceMenuItem
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ const WorkspaceSwitcherOption: FunctionComponent<Props> = ({ mainApplicationGrou
|
|||||||
side="right"
|
side="right"
|
||||||
togglePopover={toggleMenu}
|
togglePopover={toggleMenu}
|
||||||
>
|
>
|
||||||
<WorkspaceSwitcherMenu mainApplicationGroup={mainApplicationGroup} isOpen={isOpen} />
|
<WorkspaceSwitcherMenu mainApplicationGroup={mainApplicationGroup} />
|
||||||
</Popover>
|
</Popover>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -33,11 +33,7 @@ const LockscreenWorkspaceSwitcher: FunctionComponent<Props> = ({ mainApplication
|
|||||||
side="right"
|
side="right"
|
||||||
togglePopover={toggleMenu}
|
togglePopover={toggleMenu}
|
||||||
>
|
>
|
||||||
<WorkspaceSwitcherMenu
|
<WorkspaceSwitcherMenu mainApplicationGroup={mainApplicationGroup} hideWorkspaceOptions={true} />
|
||||||
mainApplicationGroup={mainApplicationGroup}
|
|
||||||
isOpen={isOpen}
|
|
||||||
hideWorkspaceOptions={true}
|
|
||||||
/>
|
|
||||||
</Popover>
|
</Popover>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -83,7 +83,6 @@ const ChangeEditorButton: FunctionComponent<Props> = ({ noteViewController, onCl
|
|||||||
>
|
>
|
||||||
<ChangeEditorMenu
|
<ChangeEditorMenu
|
||||||
application={application}
|
application={application}
|
||||||
isVisible={isOpen}
|
|
||||||
note={note}
|
note={note}
|
||||||
setDisableClickOutside={setIsClickOutsideDisabled}
|
setDisableClickOutside={setIsClickOutsideDisabled}
|
||||||
closeMenu={() => {
|
closeMenu={() => {
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ import MenuSection from '../Menu/MenuSection'
|
|||||||
type ChangeEditorMenuProps = {
|
type ChangeEditorMenuProps = {
|
||||||
application: WebApplication
|
application: WebApplication
|
||||||
closeMenu: () => void
|
closeMenu: () => void
|
||||||
isVisible: boolean
|
|
||||||
note: SNNote | undefined
|
note: SNNote | undefined
|
||||||
onSelect?: (component: UIFeature<EditorFeatureDescription | IframeComponentFeatureDescription>) => void
|
onSelect?: (component: UIFeature<EditorFeatureDescription | IframeComponentFeatureDescription>) => void
|
||||||
setDisableClickOutside?: (value: boolean) => void
|
setDisableClickOutside?: (value: boolean) => void
|
||||||
@@ -40,7 +39,6 @@ const getGroupId = (group: EditorMenuGroup) => group.title.toLowerCase().replace
|
|||||||
const ChangeEditorMenu: FunctionComponent<ChangeEditorMenuProps> = ({
|
const ChangeEditorMenu: FunctionComponent<ChangeEditorMenuProps> = ({
|
||||||
application,
|
application,
|
||||||
closeMenu,
|
closeMenu,
|
||||||
isVisible,
|
|
||||||
note,
|
note,
|
||||||
onSelect,
|
onSelect,
|
||||||
setDisableClickOutside,
|
setDisableClickOutside,
|
||||||
@@ -208,7 +206,7 @@ const ChangeEditorMenu: FunctionComponent<ChangeEditorMenuProps> = ({
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Menu className="pb-1 pt-0.5" a11yLabel="Change note type menu" isOpen={isVisible}>
|
<Menu className="pb-1 pt-0.5" a11yLabel="Change note type menu">
|
||||||
{groups
|
{groups
|
||||||
.filter((group) => group.items && group.items.length)
|
.filter((group) => group.items && group.items.length)
|
||||||
.map((group) => {
|
.map((group) => {
|
||||||
|
|||||||
@@ -132,7 +132,7 @@ const ChangeEditorMultipleMenu = ({ application, notes, setDisableClickOutside }
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Menu isOpen={true} a11yLabel="Change note type">
|
<Menu a11yLabel="Change note type">
|
||||||
{groupsWithItems.map((group) => (
|
{groupsWithItems.map((group) => (
|
||||||
<MenuSection key={getGroupId(group)}>
|
<MenuSection key={getGroupId(group)}>
|
||||||
{group.items.map((item) => {
|
{group.items.map((item) => {
|
||||||
|
|||||||
@@ -328,7 +328,7 @@ const ClipperView = ({ applicationGroup }: { applicationGroup: WebApplicationGro
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
<Menu a11yLabel="User account menu" isOpen={true}>
|
<Menu a11yLabel="User account menu">
|
||||||
<MenuItem onClick={activateRegisterPane}>
|
<MenuItem onClick={activateRegisterPane}>
|
||||||
<Icon type="user" className="mr-2 h-6 w-6 text-neutral md:h-5 md:w-5" />
|
<Icon type="user" className="mr-2 h-6 w-6 text-neutral md:h-5 md:w-5" />
|
||||||
Create free account
|
Create free account
|
||||||
@@ -343,7 +343,7 @@ const ClipperView = ({ applicationGroup }: { applicationGroup: WebApplicationGro
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="bg-contrast p-3">
|
<div className="bg-contrast p-3">
|
||||||
<Menu a11yLabel="Extension menu" isOpen={true} className="rounded border border-border bg-default">
|
<Menu a11yLabel="Extension menu" className="rounded border border-border bg-default">
|
||||||
{hasSelection && (
|
{hasSelection && (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
className="border-b border-border"
|
className="border-b border-border"
|
||||||
@@ -449,7 +449,7 @@ const ClipperView = ({ applicationGroup }: { applicationGroup: WebApplicationGro
|
|||||||
<div className={classNames('flex items-center border-t border-border', hasSyncError && 'text-danger')}>
|
<div className={classNames('flex items-center border-t border-border', hasSyncError && 'text-danger')}>
|
||||||
{isSyncing && (
|
{isSyncing && (
|
||||||
<>
|
<>
|
||||||
<Spinner className="w-4 h-4 mx-2.5" />
|
<Spinner className="mx-2.5 h-4 w-4" />
|
||||||
<div className="flex-grow py-2 text-sm font-semibold text-info">Syncing...</div>
|
<div className="flex-grow py-2 text-sm font-semibold text-info">Syncing...</div>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ const AddItemMenuButton = ({
|
|||||||
align="center"
|
align="center"
|
||||||
className="py-2"
|
className="py-2"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel={'test'} isOpen={isMenuOpen}>
|
<Menu a11yLabel={'test'}>
|
||||||
<MenuItem
|
<MenuItem
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
addNewItem()
|
addNewItem()
|
||||||
|
|||||||
@@ -125,7 +125,6 @@ const ContentListHeader = ({
|
|||||||
<DisplayOptionsMenu
|
<DisplayOptionsMenu
|
||||||
application={application}
|
application={application}
|
||||||
isFilesSmartView={isFilesSmartView}
|
isFilesSmartView={isFilesSmartView}
|
||||||
isOpen={showDisplayOptionsMenu}
|
|
||||||
selectedTag={selectedTag}
|
selectedTag={selectedTag}
|
||||||
paneController={paneController}
|
paneController={paneController}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -82,7 +82,6 @@ const TabButton: FunctionComponent<{
|
|||||||
|
|
||||||
const DisplayOptionsMenu: FunctionComponent<DisplayOptionsMenuProps> = ({
|
const DisplayOptionsMenu: FunctionComponent<DisplayOptionsMenuProps> = ({
|
||||||
application,
|
application,
|
||||||
isOpen,
|
|
||||||
isFilesSmartView,
|
isFilesSmartView,
|
||||||
selectedTag,
|
selectedTag,
|
||||||
paneController,
|
paneController,
|
||||||
@@ -283,7 +282,7 @@ const DisplayOptionsMenu: FunctionComponent<DisplayOptionsMenuProps> = ({
|
|||||||
const shouldHideNonApplicableOptions = isTableViewEnabled && !isMobileScreen
|
const shouldHideNonApplicableOptions = isTableViewEnabled && !isMobileScreen
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu className="text-sm" a11yLabel="Notes list options menu" isOpen={isOpen}>
|
<Menu className="text-sm" a11yLabel="Notes list options menu">
|
||||||
<div className="my-1 px-3 text-base font-semibold uppercase text-text lg:text-xs">Preferences for</div>
|
<div className="my-1 px-3 text-base font-semibold uppercase text-text lg:text-xs">Preferences for</div>
|
||||||
<div className={classNames('mt-1.5 flex w-full justify-between px-3', !controlsDisabled && 'mb-3')}>
|
<div className={classNames('mt-1.5 flex w-full justify-between px-3', !controlsDisabled && 'mb-3')}>
|
||||||
<div className="flex items-center gap-1.5">
|
<div className="flex items-center gap-1.5">
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ export type DisplayOptionsMenuPositionProps = {
|
|||||||
export type DisplayOptionsMenuProps = {
|
export type DisplayOptionsMenuProps = {
|
||||||
application: WebApplication
|
application: WebApplication
|
||||||
selectedTag: AnyTag
|
selectedTag: AnyTag
|
||||||
isOpen: boolean
|
|
||||||
isFilesSmartView: boolean
|
isFilesSmartView: boolean
|
||||||
paneController: PaneController
|
paneController: PaneController
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ const ContextMenuCell = ({ items }: { items: DecryptedItemInterface[] }) => {
|
|||||||
align="start"
|
align="start"
|
||||||
className="py-2"
|
className="py-2"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="File context menu" isOpen={contextMenuVisible}>
|
<Menu a11yLabel="File context menu">
|
||||||
{allItemsAreFiles && (
|
{allItemsAreFiles && (
|
||||||
<FileMenuOptions
|
<FileMenuOptions
|
||||||
closeMenu={() => {
|
closeMenu={() => {
|
||||||
@@ -366,7 +366,7 @@ const ContentTableView = ({ application, items }: Props) => {
|
|||||||
className="py-2"
|
className="py-2"
|
||||||
>
|
>
|
||||||
{contextMenuItem instanceof FileItem && (
|
{contextMenuItem instanceof FileItem && (
|
||||||
<Menu a11yLabel="File context menu" isOpen={true}>
|
<Menu a11yLabel="File context menu">
|
||||||
<FileMenuOptions
|
<FileMenuOptions
|
||||||
closeMenu={closeContextMenu}
|
closeMenu={closeContextMenu}
|
||||||
shouldShowRenameOption={false}
|
shouldShowRenameOption={false}
|
||||||
@@ -376,7 +376,7 @@ const ContentTableView = ({ application, items }: Props) => {
|
|||||||
</Menu>
|
</Menu>
|
||||||
)}
|
)}
|
||||||
{contextMenuItem instanceof SNNote && (
|
{contextMenuItem instanceof SNNote && (
|
||||||
<Menu className="select-none" a11yLabel="Note context menu" isOpen={true}>
|
<Menu className="select-none" a11yLabel="Note context menu">
|
||||||
<NotesOptions notes={[contextMenuItem]} closeMenu={closeContextMenu} />
|
<NotesOptions notes={[contextMenuItem]} closeMenu={closeContextMenu} />
|
||||||
</Menu>
|
</Menu>
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ const FileContextMenu: FunctionComponent<Props> = observer(({ filesController, i
|
|||||||
align="start"
|
align="start"
|
||||||
className="md:pb-2"
|
className="md:pb-2"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="File context menu" isOpen={showFileContextMenu}>
|
<Menu a11yLabel="File context menu">
|
||||||
<FileMenuOptions
|
<FileMenuOptions
|
||||||
selectedFiles={selectedFiles}
|
selectedFiles={selectedFiles}
|
||||||
closeMenu={() => setShowFileContextMenu(false)}
|
closeMenu={() => setShowFileContextMenu(false)}
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ const FilesOptionsPanel = ({ itemListController }: Props) => {
|
|||||||
open={isOpen}
|
open={isOpen}
|
||||||
className="md:pb-2"
|
className="md:pb-2"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="File options panel" isOpen={isOpen}>
|
<Menu a11yLabel="File options panel">
|
||||||
<FileMenuOptions
|
<FileMenuOptions
|
||||||
selectedFiles={itemListController.selectedFiles}
|
selectedFiles={itemListController.selectedFiles}
|
||||||
closeMenu={() => {
|
closeMenu={() => {
|
||||||
|
|||||||
@@ -224,7 +224,7 @@ const FilePreviewModal = observer(({ application }: Props) => {
|
|||||||
className="md:pb-2"
|
className="md:pb-2"
|
||||||
overrideZIndex="z-modal"
|
overrideZIndex="z-modal"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="File context menu" isOpen={showOptionsMenu}>
|
<Menu a11yLabel="File context menu">
|
||||||
<FileMenuOptions
|
<FileMenuOptions
|
||||||
selectedFiles={[currentFile]}
|
selectedFiles={[currentFile]}
|
||||||
closeMenu={closeOptionsMenu}
|
closeMenu={closeOptionsMenu}
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ import { MutuallyExclusiveMediaQueryBreakpoints, useMediaQuery } from '@/Hooks/u
|
|||||||
interface MenuProps extends ComponentPropsWithoutRef<'menu'> {
|
interface MenuProps extends ComponentPropsWithoutRef<'menu'> {
|
||||||
a11yLabel: string
|
a11yLabel: string
|
||||||
closeMenu?: () => void
|
closeMenu?: () => void
|
||||||
isOpen: boolean
|
|
||||||
initialFocus?: number
|
initialFocus?: number
|
||||||
shouldAutoFocus?: boolean
|
shouldAutoFocus?: boolean
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ const NotesContextMenu = () => {
|
|||||||
open={contextMenuOpen}
|
open={contextMenuOpen}
|
||||||
togglePopover={closeMenu}
|
togglePopover={closeMenu}
|
||||||
>
|
>
|
||||||
<Menu className="select-none" a11yLabel="Note context menu" isOpen={contextMenuOpen}>
|
<Menu className="select-none" a11yLabel="Note context menu">
|
||||||
<NotesOptions
|
<NotesOptions
|
||||||
notes={application.notesController.selectedNotes}
|
notes={application.notesController.selectedNotes}
|
||||||
requestDisableClickOutside={handleDisableClickOutsideRequest}
|
requestDisableClickOutside={handleDisableClickOutsideRequest}
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ const AddTagOption: FunctionComponent<Props> = ({
|
|||||||
className="py-2"
|
className="py-2"
|
||||||
overrideZIndex="z-modal"
|
overrideZIndex="z-modal"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="Tag selection menu" isOpen={isOpen} className="!px-0">
|
<Menu a11yLabel="Tag selection menu" className="!px-0">
|
||||||
{navigationController.tags.map((tag) => (
|
{navigationController.tags.map((tag) => (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
key={tag.uuid}
|
key={tag.uuid}
|
||||||
|
|||||||
@@ -68,7 +68,6 @@ const ChangeEditorOption: FunctionComponent<ChangeEditorOptionProps> = ({
|
|||||||
<ChangeEditorMenu
|
<ChangeEditorMenu
|
||||||
application={application}
|
application={application}
|
||||||
note={note}
|
note={note}
|
||||||
isVisible={isOpen}
|
|
||||||
closeMenu={() => {
|
closeMenu={() => {
|
||||||
setIsOpen(false)
|
setIsOpen(false)
|
||||||
}}
|
}}
|
||||||
|
|||||||
@@ -367,7 +367,7 @@ const NotesOptions = ({ notes, closeMenu }: NotesOptionsProps) => {
|
|||||||
}}
|
}}
|
||||||
className="md:py-1"
|
className="md:py-1"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel={'Super note export menu'} isOpen={isSuperExportMenuOpen}>
|
<Menu a11yLabel={'Super note export menu'}>
|
||||||
<MenuSection>
|
<MenuSection>
|
||||||
<MenuItem onClick={() => commandService.triggerCommand(SUPER_EXPORT_JSON, notes[0].title)}>
|
<MenuItem onClick={() => commandService.triggerCommand(SUPER_EXPORT_JSON, notes[0].title)}>
|
||||||
<Icon type="code" className={iconClass} />
|
<Icon type="code" className={iconClass} />
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ const NotesOptionsPanel = ({ notesController, onClickPreprocessing }: Props) =>
|
|||||||
open={isOpen}
|
open={isOpen}
|
||||||
className="select-none"
|
className="select-none"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="Note options menu" isOpen={isOpen}>
|
<Menu a11yLabel="Note options menu">
|
||||||
<NotesOptions
|
<NotesOptions
|
||||||
notes={notesController.selectedNotes}
|
notes={notesController.selectedNotes}
|
||||||
requestDisableClickOutside={handleDisableClickOutsideRequest}
|
requestDisableClickOutside={handleDisableClickOutsideRequest}
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ const QuickSettingsMenu: FunctionComponent<MenuProps> = ({ closeMenu }) => {
|
|||||||
}, [deactivateAnyNonLayerableTheme])
|
}, [deactivateAnyNonLayerableTheme])
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Quick settings menu" isOpen>
|
<Menu a11yLabel="Quick settings menu">
|
||||||
{editorStackComponents.length > 0 && (
|
{editorStackComponents.length > 0 && (
|
||||||
<MenuSection title="Tools">
|
<MenuSection title="Tools">
|
||||||
{editorStackComponents.map((component) => (
|
{editorStackComponents.map((component) => (
|
||||||
|
|||||||
@@ -390,7 +390,7 @@ function TableActionMenu({ onClose, tableCellNode: _tableCellNode, cellMerge }:
|
|||||||
(tableCellNode.__headerState & TableCellHeaderStates.COLUMN) === TableCellHeaderStates.COLUMN
|
(tableCellNode.__headerState & TableCellHeaderStates.COLUMN) === TableCellHeaderStates.COLUMN
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu className="dropdown !px-0" ref={dropDownRef} a11yLabel="Table actions menu" isOpen>
|
<Menu className="dropdown !px-0" ref={dropDownRef} a11yLabel="Table actions menu">
|
||||||
{mergeCellButton}
|
{mergeCellButton}
|
||||||
{!!mergeCellButton && <MenuItemSeparator />}
|
{!!mergeCellButton && <MenuItemSeparator />}
|
||||||
<MenuItem onClick={() => insertTableRowAtSelection(false)}>
|
<MenuItem onClick={() => insertTableRowAtSelection(false)}>
|
||||||
|
|||||||
@@ -159,7 +159,7 @@ interface ToolbarMenuItemProps extends Omit<MenuItemProps, 'children'> {
|
|||||||
const ToolbarMenuItem = ({ name, iconName, active, ...props }: ToolbarMenuItemProps) => {
|
const ToolbarMenuItem = ({ name, iconName, active, ...props }: ToolbarMenuItemProps) => {
|
||||||
return (
|
return (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
className={classNames('overflow-hidden md:py-2', active ? '!bg-info text-info-contrast' : 'hover:bg-contrast')}
|
className={classNames('overflow-hidden md:py-2', active ? '!bg-info !text-info-contrast' : 'hover:bg-contrast')}
|
||||||
{...props}
|
{...props}
|
||||||
>
|
>
|
||||||
<Icon type={iconName} className="-mt-px mr-2.5 flex-shrink-0" />
|
<Icon type={iconName} className="-mt-px mr-2.5 flex-shrink-0" />
|
||||||
@@ -628,7 +628,7 @@ const ToolbarPlugin = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Table of contents" isOpen className="!px-0">
|
<Menu a11yLabel="Table of contents" className="!px-0">
|
||||||
{tableOfContents.map(([key, text, tag]) => {
|
{tableOfContents.map(([key, text, tag]) => {
|
||||||
const level = parseInt(tag.slice(1)) || 1
|
const level = parseInt(tag.slice(1)) || 1
|
||||||
if (level > 3) {
|
if (level > 3) {
|
||||||
@@ -674,12 +674,7 @@ const ToolbarPlugin = () => {
|
|||||||
disableFlip
|
disableFlip
|
||||||
containerClassName="md:!min-w-60 md:!w-auto"
|
containerClassName="md:!min-w-60 md:!w-auto"
|
||||||
>
|
>
|
||||||
<Menu
|
<Menu a11yLabel="Text formatting options" className="!px-0" onClick={() => setIsTextFormatMenuOpen(false)}>
|
||||||
a11yLabel="Text formatting options"
|
|
||||||
isOpen
|
|
||||||
className="!px-0"
|
|
||||||
onClick={() => setIsTextFormatMenuOpen(false)}
|
|
||||||
>
|
|
||||||
<ToolbarMenuItem
|
<ToolbarMenuItem
|
||||||
name="Highlight"
|
name="Highlight"
|
||||||
iconName="draw"
|
iconName="draw"
|
||||||
@@ -718,7 +713,7 @@ const ToolbarPlugin = () => {
|
|||||||
disableFlip
|
disableFlip
|
||||||
containerClassName="md:!min-w-60 md:!w-auto"
|
containerClassName="md:!min-w-60 md:!w-auto"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="Text style" isOpen className="!px-0" onClick={() => setIsTextStyleMenuOpen(false)}>
|
<Menu a11yLabel="Text style" className="!px-0" onClick={() => setIsTextStyleMenuOpen(false)}>
|
||||||
<ToolbarMenuItem
|
<ToolbarMenuItem
|
||||||
name="Normal"
|
name="Normal"
|
||||||
iconName="paragraph"
|
iconName="paragraph"
|
||||||
@@ -789,7 +784,7 @@ const ToolbarPlugin = () => {
|
|||||||
disableFlip
|
disableFlip
|
||||||
containerClassName="md:!min-w-60 md:!w-auto"
|
containerClassName="md:!min-w-60 md:!w-auto"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="Alignment" isOpen className="!px-0" onClick={() => setIsAlignmentMenuOpen(false)}>
|
<Menu a11yLabel="Alignment" className="!px-0" onClick={() => setIsAlignmentMenuOpen(false)}>
|
||||||
<ToolbarMenuItem
|
<ToolbarMenuItem
|
||||||
name="Left align"
|
name="Left align"
|
||||||
iconName="align-left"
|
iconName="align-left"
|
||||||
@@ -828,7 +823,7 @@ const ToolbarPlugin = () => {
|
|||||||
disableFlip
|
disableFlip
|
||||||
containerClassName="md:!min-w-60 md:!w-auto"
|
containerClassName="md:!min-w-60 md:!w-auto"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="Insert" isOpen className="!px-0" onClick={() => setIsInsertMenuOpen(false)}>
|
<Menu a11yLabel="Insert" className="!px-0" onClick={() => setIsInsertMenuOpen(false)}>
|
||||||
<ToolbarMenuItem
|
<ToolbarMenuItem
|
||||||
name="Table"
|
name="Table"
|
||||||
iconName="table"
|
iconName="table"
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ const TagContextMenu = ({ navigationController, isEntitledToFolders, selectedTag
|
|||||||
togglePopover={() => navigationController.setContextMenuOpen(!contextMenuOpen)}
|
togglePopover={() => navigationController.setContextMenuOpen(!contextMenuOpen)}
|
||||||
className="py-2"
|
className="py-2"
|
||||||
>
|
>
|
||||||
<Menu a11yLabel="Tag context menu" isOpen={contextMenuOpen}>
|
<Menu a11yLabel="Tag context menu">
|
||||||
<IconPicker
|
<IconPicker
|
||||||
key={'icon-picker'}
|
key={'icon-picker'}
|
||||||
onIconChange={handleIconChange}
|
onIconChange={handleIconChange}
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ const ManyVaultSelectionMenu: FunctionComponent = () => {
|
|||||||
)
|
)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Vault selection menu" isOpen>
|
<Menu a11yLabel="Vault selection menu">
|
||||||
{!vaults.length && <div className="py-1 text-center">No vaults found</div>}
|
{!vaults.length && <div className="py-1 text-center">No vaults found</div>}
|
||||||
{vaults.map((vault) => (
|
{vaults.map((vault) => (
|
||||||
<VaultSelectMenuItemWithOptions vault={vault} key={vault.uuid}>
|
<VaultSelectMenuItemWithOptions vault={vault} key={vault.uuid}>
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ const SingleVaultSelectionMenu: FunctionComponent = () => {
|
|||||||
)
|
)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Vault selection menu" isOpen>
|
<Menu a11yLabel="Vault selection menu">
|
||||||
{!vaults.length && <div className="py-1 text-center">No vaults found</div>}
|
{!vaults.length && <div className="py-1 text-center">No vaults found</div>}
|
||||||
{vaults.map((vault) => (
|
{vaults.map((vault) => (
|
||||||
<VaultSelectMenuItemWithOptions vault={vault} key={vault.uuid}>
|
<VaultSelectMenuItemWithOptions vault={vault} key={vault.uuid}>
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ const VaultOptionsMenu = ({ vault }: Props) => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Menu a11yLabel="Vault options menu" isOpen>
|
<Menu a11yLabel="Vault options menu">
|
||||||
<MenuItem onClick={openEditModal}>
|
<MenuItem onClick={openEditModal}>
|
||||||
<Icon type="pencil-filled" className="mr-2" />
|
<Icon type="pencil-filled" className="mr-2" />
|
||||||
Edit vault
|
Edit vault
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ const VaultSelectionMenu = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Vault selection menu" isOpen>
|
<Menu a11yLabel="Vault selection menu">
|
||||||
<RadioButtonGroup
|
<RadioButtonGroup
|
||||||
items={[
|
items={[
|
||||||
{ label: 'Multiple', value: 'many' },
|
{ label: 'Multiple', value: 'many' },
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ const VaultMenu = observer(({ items }: { items: DecryptedItemInterface[] }) => {
|
|||||||
const singleItemVault = items.length === 1 ? application.vaults.getItemVault(items[0]) : undefined
|
const singleItemVault = items.length === 1 ? application.vaults.getItemVault(items[0]) : undefined
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Menu a11yLabel="Vault selection menu" isOpen={true}>
|
<Menu a11yLabel="Vault selection menu">
|
||||||
{doSomeItemsBelongToVault && (
|
{doSomeItemsBelongToVault && (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user