| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279 |
- declare namespace ROUTER {
- type RoutesProps = RouteRecordRaw & {
- title: string,
- link: boolean
- }
- type RouterRecords = {
- navbar: {
- route: RoutesProps[],
- selectPath: string[]
- },
- sider: {
- route: RoutesProps[],
- selectPath: string,
- openKeys: string[]
- },
- }
- }
- declare namespace SERVICE {
- type Response<T> = {
- status: number,
- msg: string,
- data: T,
- sum: number
- }
- }
- declare namespace API {
- interface Stage {
- id?: string,
- title: string
- parentId?: string,
- child: Stage[]
- }
- interface Card {
- 'id'?: string,
- 'page': string,
- 'name': string,
- 'parentId': string,
- 'img': string,
- 'thumbnail': string
- card_type: 5 | 21
- }
- interface Feedback {
- 'id'?: string,
- cardId: string
- 'page': string,
- feedback: string
- }
- interface Audio {
- id?: string,
- title: string,
- url: string
- state: 'stopped' | 'playing' | 'paused'
- }
- /* is_break 音乐是否需要打断 */
- /* 0,能被其他音频打断,不能打断其他音频;
- 1,能被其他音频打断,能打断其他音频;
- 2,不能被其他音频打断,不能打断其他音频;
- 3,不能被其他音频打断,能打断其他音频;
- */
- type is_break = 0 | 1 | 2 | 3
- type Btn_select = 'G' | 'R' | 'P' | 'T' | 'B' | 'Y' | ''
- type Rule = 7 | 9 | 10 | 14 | 15 | 16 | 17 | 18
- type BaseItem = {'music_name': string, 'is_break': is_break }
- interface CardDot {
- name: string,
- col: number,
- row: number
- selected: boolean
- id: number
- music_name: number
- }
- interface CardJson {
- header: {
- card_type: 5 | 21
- title: {
- 'category': number,
- 'id': number,
- 'sub_id': number,
- 'page': number,
- 'music_name': string,
- 'is_break': number
- },
- 'card_insert': {
- 'music_name': string,
- 'is_break': number
- },
- 'card_knob': {
- 'music_name': string,
- 'is_break': number
- },
- 'card_remove': {
- 'music_name': string,
- 'is_break': number
- },
- // 一次全部正确
- 'ack_ok': {
- 'music_name': string,
- 'is_break': number
- },
- // 多次全部正确
- 'ack_mdf': {
- 'music_name': string,
- 'is_break': number
- },
- // 6钮错误
- 'ack_err': {
- 'music_name': string,
- 'is_break': number
- },
- // 答错两次以上
- 'remind_ack': {
- 'music_name': string,
- 'is_break': number
- },
- // 提示钮
- 'remind_button': {
- 'music_name': string,
- 'is_break': number
- },
- // 点击过后5秒未答题
- 'remind_not_ack': {
- 'music_name': string,
- 'is_break': number
- },
- 'wait_30s': {
- 'music_name': string,
- 'is_break': number
- },
- 'wait_90s': {
- 'music_name': string,
- 'is_break': number
- }
- }
- touch_key: {
- music_name: string,
- is_break: number,
- id: number,
- selected: boolean
- name: string,
- row: number,
- col: number
- }[]
- slide_knob?: {
- score1: Btn_select,
- score2: Btn_select
- score3: Btn_select
- score4: Btn_select
- score5: Btn_select
- score6: Btn_select
- purple: {music_name: string, is_break: number, key: string }[],
- red: {music_name: string, is_break: number, key: string }[],
- blue: {music_name: string, is_break: number, key: string }[],
- green: {music_name: string, is_break: number, key: string }[],
- tangerine: {music_name: string, is_break: number, key: string }[],
- yellow: {music_name: string, is_break: number, key: string }[]
- },
- }
- interface CardJsonDefault {
- 'ack_err': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'ack_mdf': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'ack_ok': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'button_rep': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'card_insert': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'card_remove': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'finish': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'remind_ack': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'remind_button': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'remind_not_ack': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'wait_30s': {
- 'is_break': 0,
- 'music_name': ''
- },
- 'wait_90s': {
- 'is_break': 0,
- 'music_name': ''
- }
- }
- type CardJson21Item = CardJson21['game_list'][0]['items'][0]
- type CardJson21TouchKey = ({ 'value': number } & {'music_name': string, 'is_break': is_break })[]
- interface CardJson21 {
- 'header': {
- 'card_type': number,
- 'grade'?: number,
- 'g_number'?: number,
- 'title': {
- 'category': number,
- 'id': number,
- 'sub_id': number,
- 'page': number,
- 'music_name': string,
- 'is_break': is_break
- },
- 'card_insert': BaseItem,
- 'card_remove': BaseItem,
- 'finish': BaseItem
- },
- 'game_list': {
- 'rule': Rule, // 卡片规则
- 'main_subject': BaseItem, // 每个游戏读题音
- 'ordered_multiple_err': BaseItem, // 顺序多选错误音
- 'has_click_single': BaseItem // 这个已经点过了
- 'has_click_group': BaseItem // 这组已经点过了
- 'still_have': BaseItem // 再次点击
- 'multiple_err': BaseItem // 多次错误语音
- 'wait_30s': BaseItem // 等待30s的语音
- 'wait_90s': BaseItem // 等待90s的语音
- 'touch_key': ({ 'value': number } & BaseItem)[][], // 21时顶部三个的配置
- 'items': {
- 'sub_subject': {
- 'music_name': string, // 单节小标题
- 'mb': number,
- 'ok': string,
- 'ob': number,
- 'err': string,
- 'eb': number
- },
- 'ok_key': ({ 'value': number } & BaseItem & CardDot)[] // 正确的键位key
- 'err_key': ({ 'value': number} & BaseItem & CardDot)[], // 错误的键位key
- }[]
- 'ok_key_voice': ({ 'value': number | string} & BaseItem & CardDot)[] // 正确的声音
- 'err_key_voice': ({ 'value': number | string} & BaseItem & CardDot)[] // 点击错误的声音
- }[]
- }
- interface Category {
- id: string
- title: string
- choose: boolean
- }
- }
|