diff options
| author | Henry Jameson <me@hjkos.com> | 2023-03-29 23:26:57 +0300 |
|---|---|---|
| committer | Henry Jameson <me@hjkos.com> | 2023-03-29 23:26:57 +0300 |
| commit | ac75d051b720da2c47393de6b35663afe50d37cc (patch) | |
| tree | aa17fa4170168710cb3d4b8b9eb59970b12fa17b /src/components/settings_modal/admin_tabs/frontends_tab.vue | |
| parent | 7bb28bb23c61e2d648eecf5d59969d32631f78e8 (diff) | |
better frontends tab, now you can set default frontend
Diffstat (limited to 'src/components/settings_modal/admin_tabs/frontends_tab.vue')
| -rw-r--r-- | src/components/settings_modal/admin_tabs/frontends_tab.vue | 204 |
1 files changed, 147 insertions, 57 deletions
diff --git a/src/components/settings_modal/admin_tabs/frontends_tab.vue b/src/components/settings_modal/admin_tabs/frontends_tab.vue index 48649dfb..71bbfa69 100644 --- a/src/components/settings_modal/admin_tabs/frontends_tab.vue +++ b/src/components/settings_modal/admin_tabs/frontends_tab.vue @@ -2,67 +2,157 @@ <div class="frontends-tab" :label="$t('admin_dash.tabs.frontends')"> <div class="setting-item"> <h2>{{ $t('admin_dash.tabs.frontends') }}</h2> - <ul class="setting-list cards-list"> - <li v-for="frontend in frontends" :key="frontend.name"> - <strong>{{ frontend.name }}</strong> - <dl> - <dt>{{ $t('admin_dash.frontend.repository') }}</dt> - <dd><a :href="frontend.git">{{ frontend.git }}</a></dd> - <dt v-if="expertLevel">{{ $t('admin_dash.frontend.versions') }}</dt> - <dd v-if="expertLevel">{{ frontend.refs }}</dd> - <dt v-if="expertLevel">{{ $t('admin_dash.frontend.build_url') }}</dt> - <dd v-if="expertLevel">{{ frontend.build_url }}</dd> - </dl> - <div> - <span class="btn-group"> - <button - class="button button-default btn" - type="button" - :title="$t('admin_dash.frontend.update')" - @click="update(frontend)" - > - {{ - frontend.installed - ? $t('admin_dash.frontend.reinstall') - : $t('admin_dash.frontend.install') - }} - </button> - <Popover - v-if="frontend.refs.length > 1" - trigger="click" - class="button-dropdown" - placement="bottom" + <p>{{ $t('admin_dash.frontend.wip_notice') }}</p> + <ul class="setting-list"> + <li> + <h3>{{ $t('admin_dash.frontend.default_frontend') }}</h3> + <p>{{ $t('admin_dash.frontend.default_frontend_tip') }}</p> + <p>{{ $t('admin_dash.frontend.default_frontend_tip2') }}</p> + </li> + <li> + <StringSetting path=":pleroma.:frontends.:primary.name"> + NAME + </StringSetting> + </li> + <li> + <StringSetting path=":pleroma.:frontends.:primary.ref"> + REF + </StringSetting> + </li> + <li> + <GroupSetting path=":pleroma.:frontends.:primary"/> + </li> + </ul> + <div class="setting-list"> + <h3>{{ $t('admin_dash.frontend.available_frontends') }}</h3> + <ul class="cards-list"> + <li v-for="frontend in frontends" :key="frontend.name"> + <strong>{{ frontend.name }}</strong> + {{ ' ' }} + <span v-if="adminDraft[':pleroma'][':frontends'][':primary'].name === frontend.name"> + <i18n-t + keypath="admin_dash.frontend.is_default" + v-if="adminDraft[':pleroma'][':frontends'][':primary'].ref === frontend.refs[0]" + /> + <i18n-t + keypath="admin_dash.frontend.is_default_custom" + v-else > - <template #content> - <div class="dropdown-menu"> + <template #version> + <code>{{ adminDraft[':pleroma'][':frontends'][':primary'].ref }}</code> + </template> + </i18n-t> + </span> + <dl> + <dt>{{ $t('admin_dash.frontend.repository') }}</dt> + <dd><a :href="frontend.git" target="_blank">{{ frontend.git }}</a></dd> + <template v-if="expertLevel"> + <dt>{{ $t('admin_dash.frontend.versions') }}</dt> + <dd v-for="ref in frontend.refs" :key="ref"><code>{{ ref }}</code></dd> + </template> + <dt v-if="expertLevel">{{ $t('admin_dash.frontend.build_url') }}</dt> + <dd v-if="expertLevel"><a :href="frontend.build_url" target="_blank">{{ frontend.build_url }}</a></dd> + </dl> + <div> + <span class="btn-group"> + <button + class="button button-default btn" + type="button" + :title="$t('admin_dash.frontend.update')" + @click="update(frontend)" + > + {{ + frontend.installed + ? $t('admin_dash.frontend.reinstall') + : $t('admin_dash.frontend.install') + }} + </button> + <Popover + v-if="frontend.refs.length > 1" + trigger="click" + class="button-dropdown" + placement="bottom" + > + <template #content> + <div class="dropdown-menu"> + <button + v-for="ref in frontend.refs" + :key="ref" + class="button-default dropdown-item" + @click="update(frontend, ref)" + > + <i18n-t keypath="admin_dash.frontend.install_version"> + <template #version> + <code>{{ ref }}</code> + </template> + </i18n-t> + </button> + </div> + </template> + <template #trigger> <button - v-for="ref in frontend.refs" - :key="ref" - class="button-default dropdown-item" - @click="update(frontend, ref)" + class="button button-default btn dropdown-button" + type="button" + :title="$t('admin_dash.frontend.update')" > - <i18n-t keypath="admin_dash.frontend.install_version"> - <template #version> - <code>{{ ref }}</code> - </template> - </i18n-t> + <FAIcon icon="chevron-down" /> </button> - </div> - </template> - <template #trigger> - <button - class="button button-default btn" - type="button" - :title="$t('admin_dash.frontend.update')" - > - <FAIcon icon="chevron-down" /> - </button> - </template> - </Popover> - </span> - </div> - </li> - </ul> + </template> + </Popover> + </span> + <span class="btn-group" v-if="frontend.name !== 'admin-fe'"> + <button + class="button button-default btn" + type="button" + :disabled=" + adminDraft[':pleroma'][':frontends'][':primary'].name === frontend.name && + adminDraft[':pleroma'][':frontends'][':primary'].ref === frontend.refs[0] + " + :title="$t('admin_dash.frontend.update')" + @click="setDefault(frontend)" + > + {{ + $t('admin_dash.frontend.set_default') + }} + </button> + {{ ' ' }} + <Popover + v-if="frontend.refs.length > 1" + trigger="click" + class="button-dropdown" + placement="bottom" + > + <template #content> + <div class="dropdown-menu"> + <button + v-for="ref in frontend.refs.slice(1)" + :key="ref" + class="button-default dropdown-item" + @click="setDefault(frontend, ref)" + > + <i18n-t keypath="admin_dash.frontend.set_default_version"> + <template #version> + <code>{{ ref }}</code> + </template> + </i18n-t> + </button> + </div> + </template> + <template #trigger> + <button + class="button button-default btn dropdown-button" + type="button" + :title="$t('admin_dash.frontend.update')" + > + <FAIcon icon="chevron-down" /> + </button> + </template> + </Popover> + </span> + </div> + </li> + </ul> + </div> </div> </div> </template> |
