config.js 2.4 KB
Newer Older
B
baiy 已提交
1
import {env} from '../helper'
B
baiy 已提交
2
import cache from './cache'
B
baiy 已提交
3

B
baiy 已提交
4 5
const toolConfig = require('../config')

B
baiy 已提交
6
// 工具缓存数据过期时间(秒)
B
baiy 已提交
7
export const TOOL_DATA_EXPIRY = toolConfig.toolDataExpiry
B
baiy 已提交
8
// 徽章过期时间(天)
B
baiy 已提交
9
export const BADGE_EXPIRY = toolConfig.badgeExpiry
B
baiy 已提交
10
// 分类徽章
B
baiy 已提交
11
export const BADGE_CATEGORY = toolConfig.badgeCategory
B
baiy 已提交
12
// 工具徽章
B
baiy 已提交
13
export const BADGE_TOOL = toolConfig.badgeTool
B
baiy 已提交
14
// 默认常用工具
B
baiy 已提交
15
export const DEFAULT_COMMON_TOOL = toolConfig.defaultCommonTool
B
baiy 已提交
16

B
baiy 已提交
17 18 19
const category = toolConfig.category

const tool = toolConfig.tool
B
baiy 已提交
20

B
baiy 已提交
21 22
// 徽章是否显示
const badgeIsShow = function () {
B
baiy 已提交
23 24
    return (Date.parse((new Date()).toString()) / 1000) - env('updateTime') <
        BADGE_EXPIRY * 86400
B
baiy 已提交
25
}
B
baiy 已提交
26

B
baiy 已提交
27
const getUserCommon = function () {
B
baiy 已提交
28 29 30
    let tools = cache.getNoVersion('user_common')
    return tools ? tools : DEFAULT_COMMON_TOOL
}
B
baiy 已提交
31 32

const setUserCommon = function (tools) {
B
baiy 已提交
33 34 35 36 37 38
    cache.setNoVersion('user_common', tools)
}

const getToolTitle = function (name) {
    for (let i = 0; i < tool.length; i++) {
        if (tool[i].name === name) {
B
i18n  
baiy 已提交
39
            return __()
B
baiy 已提交
40 41
        }
    }
B
baiy 已提交
42 43 44
    return ''
}

B
baiy 已提交
45 46 47 48 49 50 51 52 53
const getToolDefaultCategory = function (name) {
    for (let i = 0; i < tool.length; i++) {
        if (tool[i].name === name) {
            return tool[i].cat[0]
        }
    }
    return ''
}

54 55 56 57 58
/**
 * @param name
 * @param defaultValue
 * @return {any}
 */
B
baiy 已提交
59 60 61 62 63
const getSetting = function (name, defaultValue = null) {
    let setting = cache.getNoVersion('setting', {})
    return !setting.hasOwnProperty(name) ? defaultValue : setting[name]
}

64 65 66 67 68
/**
 * @param name
 * @param value
 * @return {boolean}
 */
B
baiy 已提交
69 70 71
const saveSetting = function (name, value) {
    let setting = cache.getNoVersion('setting', {})
    setting[name] = value
B
baiy 已提交
72
    cache.setNoVersion('setting', setting);
73
    return true
B
baiy 已提交
74
}
B
baiy 已提交
75

B
baiy 已提交
76
export default {
B
i18n  
baiy 已提交
77
    tool:tool,
B
baiy 已提交
78 79
    saveSetting,
    getSetting,
B
baiy 已提交
80
    category,
B
baiy 已提交
81 82
    setUserCommon,
    getUserCommon,
B
baiy 已提交
83
    getToolByCategory(cat) {
B
baiy 已提交
84
        let common = getUserCommon();
B
baiy 已提交
85
        return tool.filter((t) => {
B
baiy 已提交
86
            if (cat === 'common') {
B
baiy 已提交
87
                return common.includes(t.name)
B
baiy 已提交
88
            }
B
baiy 已提交
89
            return t.cat.includes(cat);
B
baiy 已提交
90
        })
B
baiy 已提交
91
    },
B
baiy 已提交
92
    getToolDefaultCategory,
B
baiy 已提交
93
    badgeToolIsShow(tool) {
B
baiy 已提交
94
        return badgeIsShow() && BADGE_TOOL.includes(tool)
B
baiy 已提交
95
    },
B
baiy 已提交
96
    badgeCategoryIsShow(cat) {
B
baiy 已提交
97
        return badgeIsShow() && BADGE_CATEGORY.includes(cat)
B
baiy 已提交
98
    },
B
i18n  
baiy 已提交
99
}