/*
* Copyright © 2024-2025 The CTAN Team and individual authors
*
* This file is distributed under the 3-clause BSD license.
* See file LICENSE for details.
*/
import { defineStore } from 'pinia'
/**
* This is the features store.
*
* @author <a href="mailto:gene@ctan.org">Gerd Neugebauer</a>
*/
export const useFeaturesStore = defineStore('features', {
state: () => ({
/**
* List of country codes.
*/
countries: [
'ad', 'ae', 'af', 'ag', 'al', 'am', 'ao', 'ar', 'at', 'au',
'az', 'ba', 'bb', 'bd', 'be', 'bf', 'bg', 'bh', 'bi', 'bj',
'bn', 'bo', 'br', 'bs', 'bt', 'bw', 'by', 'bz', 'ca', 'cd',
'cf', 'cg', 'ch', 'ci', 'cl', 'cm', 'cn', 'co', 'cr', 'cu',
'cy', 'cz', 'de', 'dj', 'dk', 'dm', 'do', 'dz', 'ec', 'ee',
'eg', 'er', 'es', 'et', 'fr', 'fi', 'fj', 'fm', 'fo', 'ga',
'gb', 'gd', 'ge', 'gh', 'gm', 'gn', 'gq', 'gr', 'gt', 'gw',
'gy', 'hk', 'hn', 'hr', 'ht', 'hu', 'id', 'ie', 'il', 'in',
'iq', 'ir', 'is', 'it', 'jm', 'jo', 'jp', 'ke', 'kg', 'kh',
'ki', 'km', 'kn', 'kp', 'kr', 'kw', 'kz', 'la', 'lb', 'lc',
'li', 'lk', 'lr', 'ls', 'lt', 'lu', 'lv', 'ly', 'ma', 'mc',
'md', 'me', 'mg', 'mh', 'mk', 'ml', 'mm', 'mn', 'mr', 'mt',
'mu', 'mv', 'mw', 'mx', 'my', 'mz', 'na', 'nc', 'ne', 'ng',
'ni', 'nl', 'no', 'np', 'nr', 'nz', 'om', 'pa', 'pe', 'pg',
'ph', 'pk', 'pl', 'pr', 'pt', 'pw', 'py', 'qa', 'ro', 'rs',
'ru', 'rw', 'sa', 'sb', 'sc', 'sd', 'se', 'sg', 'si', 'sk',
'sl', 'sm', 'sn', 'so', 'sr', 'ss', 'st', 'sv', 'sy', 'td',
'tg', 'th', 'tj', 'tn', 'to', 'tr', 'tw', 'tz', 'ua', 'ug',
'us', 'uy', 'uz', 'va', 'vc', 've', 'vn', 'vu', 'ws', 'ye',
'za', 'zm', 'zw'
],
/**
* The admin features.
*/
admin: {
authors: true,
packages: true,
topics: true
},
/**
* The feedback feature.
*/
feedback: {
form: true
},
/**
* The guest book feature.
*/
guestbook: {
/**
* The guest book page is shown.
*/
page: true,
/**
* A guest book entry can be left by anyone.
*/
public: true,
},
/**
* The orphaned indicator is shown.
*/
orphaned: {
indicator: true
},
/**
* The pkg feature.
*/
pkg: {
ratings: true,
install: {
mactex: false,
miktex: false,
texlive: false
}
},
/**
* The site map page is shown.
*/
sitemap: true,
/**
* The test label is shown.
*/
test: false,
/**
* Featues for the tiles.
*/
tile: {
/**
* The DVD tile is shown.
*/
dvd: false,
/**
* The wanted tile is shown.
*/
wanted: true
},
/**
* The visited indicator is shown.
*/
visited: {
indicator: true,
page: true
},
/**
* The ratings are shown for the user.
*/
ratings: {
my: true
}
})
})