@atlaskit/editor-plugin-text-formatting
Version:
Text-formatting plugin for @atlaskit/editor-core
56 lines • 2.42 kB
JavaScript
import { useMemo } from 'react';
import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
import { ButtonsMenuMinimal, ToolbarButtonsStrong, ToolbarButtonsStrongItalic, ResponsiveCustomButtonToolbarMinimal, ResponsiveCustomButtonToolbarCompact, ResponsiveCustomMenuMinimal, ResponsiveCustomMenuCompact } from '../constants';
import { useIconList } from './use-icon-list';
export var useResponsiveIconTypeButtons = function useResponsiveIconTypeButtons(_ref) {
var toolbarSize = _ref.toolbarSize,
responsivenessEnabled = _ref.responsivenessEnabled;
var ResponsiveCustomButtonToolbar = ResponsiveCustomButtonToolbarCompact;
if (expValEqualsNoExposure('platform_editor_controls', 'cohort', 'variant1')) {
ResponsiveCustomButtonToolbar = ResponsiveCustomButtonToolbarMinimal;
}
var iconTypeList = useMemo(function () {
return ResponsiveCustomButtonToolbar[toolbarSize];
}, [toolbarSize, ResponsiveCustomButtonToolbar]);
if (responsivenessEnabled) {
return iconTypeList;
}
if (expValEqualsNoExposure('platform_editor_controls', 'cohort', 'variant1')) {
return ToolbarButtonsStrong;
} else {
return ToolbarButtonsStrongItalic;
}
};
export var useResponsiveIconTypeMenu = function useResponsiveIconTypeMenu(_ref2) {
var toolbarSize = _ref2.toolbarSize,
responsivenessEnabled = _ref2.responsivenessEnabled;
var ResponsiveCustomMenu = ResponsiveCustomMenuCompact;
if (expValEqualsNoExposure('platform_editor_controls', 'cohort', 'variant1')) {
ResponsiveCustomMenu = ResponsiveCustomMenuMinimal;
}
var iconTypeList = useMemo(function () {
return ResponsiveCustomMenu[toolbarSize];
}, [toolbarSize, ResponsiveCustomMenu]);
if (responsivenessEnabled) {
return iconTypeList;
}
if (expValEqualsNoExposure('platform_editor_controls', 'cohort', 'variant1')) {
return ButtonsMenuMinimal;
} else {
return ToolbarButtonsStrongItalic;
}
};
export var useResponsiveToolbarButtons = function useResponsiveToolbarButtons(_ref3) {
var icons = _ref3.icons,
toolbarSize = _ref3.toolbarSize,
responsivenessEnabled = _ref3.responsivenessEnabled;
var iconTypeList = useResponsiveIconTypeButtons({
toolbarSize: toolbarSize,
responsivenessEnabled: responsivenessEnabled
});
var iconsPosition = useIconList({
icons: icons,
iconTypeList: iconTypeList
});
return iconsPosition;
};