diff options
| author | Ekaterina Vaartis <vaartis@kotobank.ch> | 2023-12-21 00:16:16 +0300 |
|---|---|---|
| committer | Ekaterina Vaartis <vaartis@kotobank.ch> | 2023-12-21 00:18:02 +0300 |
| commit | f9c85c0c491fa800054250a814978e6f8fcc439a (patch) | |
| tree | ba95c4ca2f4d0ebb46c91ff3ba36c4c2927b9b47 /src/components/settings_modal/admin_tabs/emoji_tab.vue | |
| parent | 6391a6a4ead068455a5b23d7d11ce0cdf2ec87ea (diff) | |
Initial incomplete admin emoji settings implementation
Diffstat (limited to 'src/components/settings_modal/admin_tabs/emoji_tab.vue')
| -rw-r--r-- | src/components/settings_modal/admin_tabs/emoji_tab.vue | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/src/components/settings_modal/admin_tabs/emoji_tab.vue b/src/components/settings_modal/admin_tabs/emoji_tab.vue new file mode 100644 index 00000000..699e4afe --- /dev/null +++ b/src/components/settings_modal/admin_tabs/emoji_tab.vue @@ -0,0 +1,93 @@ +<template> + <div + class="emoji-tab" + :label="$t('admin_dash.tabs.emoji')" + > + <div class="setting-item"> + <h2>{{ $t('admin_dash.tabs.emoji') }}</h2> + + <span class="btn-group"> + <button + class="button button-default btn" + type="button" + @click="reloadEmoji"> + {{ $t('admin_dash.emoji.reload') }} + </button> + <button + class="button button-default btn" + type="button" + @click="importFromFS"> + {{ $t('admin_dash.emoji.importFS') }} + </button> + </span> + + <tab-switcher :scrollable-tabs="true" v-if="Object.keys(knownPacks).length > 0"> + <div v-for="(pack, packName) in knownPacks" :label="packName" :key="packName"> + <div class="pack-info-wrapper"> + <ul class="setting-list"> + <li> + <div>Description</div> + <textarea + v-model="pack.pack.description" + class="bio resize-height" /> + </li> + <li> + <div>Homepage</div> + <input class="emoji-info-input" v-model="pack.pack.homepage"> + </li> + <li> + <div>Fallback source</div> + <input class="emoji-info-input" v-model="pack.pack['fallback-src']"> + </li> + <li> + <Checkbox v-model="pack.pack['can-download']">Downloadable</Checkbox> + </li> + </ul> + </div> + + <h2>Files</h2> + + <ul class="setting-list"> + <li v-for="(file, shortcode) in pack.files" :key="shortcode"> + <StillImage + class="emoji img" + :src="emojiAddr(packName, file)" + :title="`:${shortcode}:`" + :alt="`:${shortcode}:`" + /> + + <template v-if="editedParts[packName] !== undefined && editedParts[packName][shortcode] !== undefined"> + <input class="emoji-data-input" + v-model="editedParts[packName][shortcode].shortcode"> + <input class="emoji-data-input" + v-model="editedParts[packName][shortcode].file"> + + <button + class="button button-default btn" + type="button" + @click="saveEditedEmoji(packName, shortcode)"> + Save + </button> + </template> + <template v-else> + <input disabled class="emoji-data-input" :value="shortcode"> + <input disabled class="emoji-data-input" :value="file"> + + <button + class="button button-default btn" + type="button" + @click="editEmoji(packName, shortcode)"> + Edit + </button> + </template> + </li> + </ul> + </div> + </tab-switcher> + </div> + </div> +</template> + +<script src="./emoji_tab.js"></script> + +<style lang="scss" src="./emoji_tab.scss"></style> |
