All files / src/components/music/sidebar SongEditor.tsx

0% Statements 0/17
0% Branches 0/6
0% Functions 0/3
0% Lines 0/16

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43                                                                                     
import React from "react";
import { FormContainer, FormSectionTitle } from "ui/form/layout/FormLayout";
import { Sidebar } from "ui/sidebars/Sidebar";
import { SongMetadataEditor } from "./SongMetadataEditor";
import { useAppSelector } from "store/hooks";
import { InstrumentEditor } from "./InstrumentEditor";
import { PatternCellSelectionEditor } from "./PatternCellSelectionEditor";
import l10n from "shared/lib/lang/l10n";
 
export const SongEditor = () => {
  const isPatternSelection = useAppSelector(
    (state) =>
      state.tracker.sidebarView === "cell" &&
      state.tracker.selectedPatternCells.length > 0 &&
      !state.tracker.playing,
  );
  const hasSong = useAppSelector(
    (state) => !!state.trackerDocument.present.song,
  );
 
  Iif (!hasSong) {
    return null;
  }
 
  return (
    <Sidebar>
      <SongMetadataEditor />
      <FormContainer>
        <div style={{ marginTop: -1 }}>
          {isPatternSelection ? (
            <>
              <FormSectionTitle>{l10n("FIELD_SELECTION")}</FormSectionTitle>
              <PatternCellSelectionEditor />
            </>
          ) : (
            <InstrumentEditor />
          )}
        </div>
      </FormContainer>
    </Sidebar>
  );
};