From 4c16b7a60128077d6cab30c34595d68abaa8001c Mon Sep 17 00:00:00 2001 From: Dale Date: Tue, 18 Aug 2020 14:45:32 +0300 Subject: [PATCH] New version of shared types, started requests mod --- package.json | 2 +- src/lib/requests/index.ts | 0 src/store/index.ts | 3 +++ src/store/initialState.ts | 31 +++++++++++++++++++++++++++++++ src/store/interfaces/resource.ts | 17 +++++++++++++++++ vue.config.js | 9 +++++++++ yarn.lock | 4 ++-- yarn.nix | 4 ++-- 8 files changed, 65 insertions(+), 5 deletions(-) create mode 100644 src/lib/requests/index.ts create mode 100644 src/store/initialState.ts create mode 100644 src/store/interfaces/resource.ts diff --git a/package.json b/package.json index fec9389..70188e9 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "eslint": "^6.7.2", "eslint-plugin-import": "^2.20.2", "eslint-plugin-vue": "^6.2.2", - "miracle-tv-shared": "git+https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git#16cee9d935", + "miracle-tv-shared": "git+https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git#c2f78e7633", "tslib": "^2.0.1", "typescript": "~3.9.3", "vue": "^2.6.11", diff --git a/src/lib/requests/index.ts b/src/lib/requests/index.ts new file mode 100644 index 0000000..e69de29 diff --git a/src/store/index.ts b/src/store/index.ts index 9ea7685..030896e 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -3,8 +3,11 @@ import Vuex from 'vuex'; Vue.use(Vuex); +import initialState from '@/store/initialState'; + export default new Vuex.Store({ state: { + ...initialState, }, mutations: { }, diff --git a/src/store/initialState.ts b/src/store/initialState.ts new file mode 100644 index 0000000..c7a2517 --- /dev/null +++ b/src/store/initialState.ts @@ -0,0 +1,31 @@ +import IResource from '@/store/interfaces/resource'; +import { IUserSafe } from 'miracle-tv-shared/src/types/api/v1/interfaces/IUser'; +import IActivity from 'miracle-tv-shared/src/types/api/v1/interfaces/IActivity'; +import IChannel from 'miracle-tv-shared/src/types/api/v1/interfaces/IChannel'; +import IStreamKey from 'miracle-tv-shared/src/types/api/v1/interfaces/IStreamKey'; + +const emptyResource = { + ids: [], + errors: [], + entities: {}, +}; + +interface IStore { + resources: { + users: IResource; + activities: IResource; + channels: IResource; + streamKeys: IResource; + }; +} + +const initialStore: IStore = { + resources: { + users: { ...emptyResource }, + activities: { ...emptyResource }, + channels: { ...emptyResource }, + streamKeys: { ...emptyResource }, + } +} + +export default initialStore; diff --git a/src/store/interfaces/resource.ts b/src/store/interfaces/resource.ts new file mode 100644 index 0000000..a423032 --- /dev/null +++ b/src/store/interfaces/resource.ts @@ -0,0 +1,17 @@ +interface IResourceEntitiesMap { + [index: string]: T, +} + +interface IResourceError { + status: number; + message?: string; + meta?: { [key: string]: any }; +}; + +export interface IResource { + ids: string[]; + errors: IResourceError[], + entities: IResourceEntitiesMap; +} + +export default IResource; diff --git a/vue.config.js b/vue.config.js index 9ed1f38..009228f 100644 --- a/vue.config.js +++ b/vue.config.js @@ -1,3 +1,12 @@ +import path from 'path'; + module.exports = { lintOnSave: false, + configureWebpack: { + resolve: { + alias: { + '@': path.resolve(__dirname, 'src'), + }, + }, + }, }; diff --git a/yarn.lock b/yarn.lock index 95696c6..f8c5f32 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5115,9 +5115,9 @@ minipass@^3.0.0, minipass@^3.1.1: dependencies: yallist "^4.0.0" -"miracle-tv-shared@git+https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git#16cee9d935": +"miracle-tv-shared@git+https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git#c2f78e7633": version "0.1.0" - resolved "git+https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git#16cee9d935b16f58efc6737f00e905b59a71b694" + resolved "git+https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git#c2f78e763359cc9e456046e993768e0e85ae4f3f" dependencies: typescript "^3.9.7" diff --git a/yarn.nix b/yarn.nix index a99a556..635b71d 100644 --- a/yarn.nix +++ b/yarn.nix @@ -5567,8 +5567,8 @@ let repo = fetchgit { url = "https://code.gensokyo.social/Gensokyo.social/miracle-tv-shared.git"; - rev = "16cee9d935b16f58efc6737f00e905b59a71b694"; - sha256 = "17dfvc1wjycvn8zpqz844g0m33sq67wzkc0n7a887qsj94hlbhzl"; + rev = "c2f78e763359cc9e456046e993768e0e85ae4f3f"; + sha256 = "05k6y4zg04dd3yfbjhp98m6jzk3xnl8s50i40kjmg0sfr8r4knfi"; }; in runCommandNoCC "miracle-tv-shared.git" { buildInputs = [gnutar]; } ''