Преглед изворни кода

setting isIndentSizeForced

reiji-h пре 2 година
родитељ
комит
62d7475e4d
1 измењених фајлова са 6 додато и 3 уклоњено
  1. 6 3
      apps/app/src/components/PageEditor/OptionsSelector.tsx

+ 6 - 3
apps/app/src/components/PageEditor/OptionsSelector.tsx

@@ -229,13 +229,14 @@ type ChangeStateButtonProps = {
   onClick: () => void,
   onClick: () => void,
   header: string,
   header: string,
   data: string,
   data: string,
+  disabled?: boolean,
 }
 }
 const ChangeStateButton = memo((props: ChangeStateButtonProps): JSX.Element => {
 const ChangeStateButton = memo((props: ChangeStateButtonProps): JSX.Element => {
   const {
   const {
-    onClick, header, data,
+    onClick, header, data, disabled,
   } = props;
   } = props;
   return (
   return (
-    <button type="button" className="d-flex align-items-center btn btn-sm border-0" onClick={onClick}>
+    <button type="button" className="d-flex align-items-center btn btn-sm border-0" disabled={disabled} onClick={onClick}>
       <label className="ms-2 me-auto">{header}</label>
       <label className="ms-2 me-auto">{header}</label>
       <label className="text-muted d-flex align-items-center me-1">
       <label className="text-muted d-flex align-items-center me-1">
         {data}
         {data}
@@ -250,9 +251,11 @@ type OptionStatus = 'home' | 'theme' | 'keymap' | 'indent';
 export const OptionsSelector = (): JSX.Element => {
 export const OptionsSelector = (): JSX.Element => {
 
 
   const [dropdownOpen, setDropdownOpen] = useState(true);
   const [dropdownOpen, setDropdownOpen] = useState(true);
+
   const [status, setStatus] = useState<OptionStatus>('home');
   const [status, setStatus] = useState<OptionStatus>('home');
   const { data: editorSettings } = useEditorSettings();
   const { data: editorSettings } = useEditorSettings();
   const { data: currentIndentSize } = useCurrentIndentSize();
   const { data: currentIndentSize } = useCurrentIndentSize();
+  const { data: isIndentSizeForced } = useIsIndentSizeForced();
 
 
   return (
   return (
     <Dropdown isOpen={dropdownOpen} toggle={() => { setStatus('home'); setDropdownOpen(!dropdownOpen) }} direction="up" className="">
     <Dropdown isOpen={dropdownOpen} toggle={() => { setStatus('home'); setDropdownOpen(!dropdownOpen) }} direction="up" className="">
@@ -272,7 +275,7 @@ export const OptionsSelector = (): JSX.Element => {
               <hr className="my-1" />
               <hr className="my-1" />
               <ChangeStateButton onClick={() => setStatus('keymap')} header="Keymap" data={editorSettings?.keymapMode ?? ''} />
               <ChangeStateButton onClick={() => setStatus('keymap')} header="Keymap" data={editorSettings?.keymapMode ?? ''} />
               <hr className="my-1" />
               <hr className="my-1" />
-              <ChangeStateButton onClick={() => setStatus('indent')} header="Indent" data={currentIndentSize?.toString() ?? ''} />
+              <ChangeStateButton disabled={isIndentSizeForced} onClick={() => setStatus('indent')} header="Indent" data={currentIndentSize?.toString() ?? ''} />
               <hr className="my-1" />
               <hr className="my-1" />
               <ConfigurationSelector />
               <ConfigurationSelector />
             </div>
             </div>