<commit_before><template>

  <core-base :topLevelPageName="topLevelPageName" :appBarTitle="$tr('coachTitle')">

    <div class="content">
      <template v-if="showTopNav">
        <class-selector :classes="classList" :currentClassId="classId" @changeClass="changeClass"/>
        <top-nav/>
      </template>

      <div v-if="isCoach || isAdmin">
        <component :is="currentPage"/>
      </div>
      <auth-message
        v-else-if="isSuperuser"
        :header="$tr('superUserPrompt')"
        :details="$tr('superUserCommand')"
      />
      <auth-message v-else authorizedRole="adminOrCoach" />
    </div>

  </core-base>

</template>


<script>

  import store from '../state/store';
  import * as Constants from '../constants';
  import * as coreGetters from 'kolibri.coreVue.vuex.getters';
  import { TopLevelPageNames } from 'kolibri.coreVue.vuex.constants';
  import authMessage from 'kolibri.coreVue.components.authMessage';
  import topNav from './top-nav';
  import classListPage from './class-list-page';
  import examsPage from './exams-page';
  import createExamPage from './create-exam-page';
  import examReportPage from './exam-report-page';
  import examReportDetailPage from './exam-report-detail-page';
  import groupsPage from './groups-page';
  import coreBase from 'kolibri.coreVue.components.coreBase';
  import learnerExerciseDetailPage from './reports/learner-exercise-detail-page';
  import recentItemsPage from './reports/recent-items-page';
  import channelListPage from './reports/channel-list-page';
  import itemListPage from './reports/item-list-page';
  import learnerListPage from './reports/learner-list-page';
  import classSelector from './class-selector';
  export default {
    name: 'coachRoot',
    $trs: {
      coachTitle: 'Coach',
      superUserPrompt: 'Signed in as device owner',
      superUserCommand:
        'The coach tools cannot be used by a device owner. Please sign in as an administrator or coach.',
    },
    components: {
      authMessage,
      topNav,
      classListPage,
      examsPage,
      createExamPage,
      // reports
      examReportPage,
      examReportDetailPage,
      groupsPage,
      coreBase,
      learnerExerciseDetailPage,<commit_msg>Make coach available to superusers<commit_after><template>

  <core-base :topLevelPageName="topLevelPageName" :appBarTitle="$tr('coachTitle')">

    <div class="content">
      <template v-if="showTopNav">
        <class-selector :classes="classList" :currentClassId="classId" @changeClass="changeClass"/>
        <top-nav/>
      </template>

      <div v-if="isCoach || isAdmin || isSuperuser">
        <component :is="currentPage"/>
      </div>
      <auth-message v-else authorizedRole="adminOrCoach" />
    </div>

  </core-base>

</template>


<script>

  import store from '../state/store';
  import * as Constants from '../constants';
  import * as coreGetters from 'kolibri.coreVue.vuex.getters';
  import { TopLevelPageNames } from 'kolibri.coreVue.vuex.constants';
  import authMessage from 'kolibri.coreVue.components.authMessage';
  import topNav from './top-nav';
  import classListPage from './class-list-page';
  import examsPage from './exams-page';
  import createExamPage from './create-exam-page';
  import examReportPage from './exam-report-page';
  import examReportDetailPage from './exam-report-detail-page';
  import groupsPage from './groups-page';
  import coreBase from 'kolibri.coreVue.components.coreBase';
  import learnerExerciseDetailPage from './reports/learner-exercise-detail-page';
  import recentItemsPage from './reports/recent-items-page';
  import channelListPage from './reports/channel-list-page';
  import itemListPage from './reports/item-list-page';
  import learnerListPage from './reports/learner-list-page';
  import classSelector from './class-selector';
  export default {
    name: 'coachRoot',
    $trs: {
      coachTitle: 'Coach',
    },
    components: {
      authMessage,
      topNav,
      classListPage,
      examsPage,
      createExamPage,
      // reports
      examReportPage,
      examReportDetailPage,
      groupsPage,
      coreBase,
      learnerExerciseDetailPage,
{'fraction_non_alphanumeric': 0.1322294216462683, 'fraction_numerical': 0.0, 'mean_word_length': 3.355276907001045, 'pattern_counts': {'":': 0, '<': 34, '<?xml version=': 0, '>': 34, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2267087', 'n_tokens_mistral': 1279, 'n_tokens_neox': 1269, 'n_words': 282}