Merge pull request #14 from srgooglo/apiv3-model-nodecore

Apiv3 model nodecore
This commit is contained in:
srgooglo 2020-10-09 19:13:19 +02:00 committed by GitHub
commit 94fe497d69
13 changed files with 78 additions and 166 deletions

View File

@ -21,7 +21,7 @@ export default defineConfig({
// }, // },
alias: { alias: {
antd: resolve(__dirname, './node_modules/antd'), antd: resolve(__dirname, './node_modules/antd'),
api: resolve(__dirname, './node_modules/@ragestudio/ycorejs-lib'), // ./api api: resolve(__dirname, './node_modules/@ragestudio/nodecore-api-lib/src'),
plugins: resolve(__dirname, './plugins'), plugins: resolve(__dirname, './plugins'),
globals: resolve(__dirname, './globals'), globals: resolve(__dirname, './globals'),
core: resolve(__dirname, './src/core'), core: resolve(__dirname, './src/core'),
@ -42,40 +42,16 @@ export default defineConfig({
'lodash', 'lodash',
], ],
], ],
// externals(context, request, callback) {
// const isDev = process.env.NODE_ENV === 'development';
// let isExternal = false;
// const load = [
// 'electron',
// 'fs',
// 'path',
// 'os',
// 'child_process'
// ];
// if (load.includes(request)) {
// isExternal = `require("${request}")`;
// }
// const appDeps = Object.keys(require('./package.json').dependencies);
// if (appDeps.includes(request)) {
// const orininalPath = slash(join(__dirname, 'node_modules', request));
// const requireAbsolute = `require('${orininalPath}')`;
// console.log(isDev)
// isExternal = isDev ? requireAbsolute : `require('${request}')`;
// }
// callback(null, isExternal);
// },
// plugins: [themePlugin],
// chainWebpack: function(config, { webpack }) { // chainWebpack: function(config, { webpack }) {
// config.module // config.module
// .rule('js-in-node_modules') // .rule('js-in-node_modules')
// .exclude.add(/node_modules/) // .exclude.add(/node_modules/)
// .end() // .end()
// config.module // config.module
// .rule('ts-in-node_modules') // .rule('ts-in-node_modules')
// .exclude.add(/node_modules/) // .exclude.add(/node_modules/)
// .end() // .end()
// config.merge({ // config.merge({
// optimization: { // optimization: {
// minimize: true, // minimize: true,
@ -87,7 +63,7 @@ export default defineConfig({
// cacheGroups: { // cacheGroups: {
// react: { // react: {
// name: 'react', // name: 'react',
// priority: 20, // priority: 20,>
// test: /[\\/]node_modules[\\/](react|react-dom|react-dom-router)[\\/]/, // test: /[\\/]node_modules[\\/](react|react-dom|react-dom-router)[\\/]/,
// }, // },
// antd: { // antd: {
@ -110,4 +86,4 @@ export default defineConfig({
// }) // })
// }, // },
}); })

View File

@ -3,11 +3,11 @@
"UUID": "C8mVSr-4nmPp2-pr5Vrz-CU4kg4", "UUID": "C8mVSr-4nmPp2-pr5Vrz-CU4kg4",
"title": "Comty™", "title": "Comty™",
"DevBuild": true, "DevBuild": true,
"version": "0.10.6", "version": "0.10.9",
"stage": "dev", "stage": "dev",
"description": "", "description": "",
"author": "RageStudio", "author": "RageStudio",
"license": "ISC", "license": "LGPL-2.1",
"private": true, "private": true,
"main": "main/index.js", "main": "main/index.js",
"build": { "build": {
@ -34,9 +34,7 @@
"dependencies": { "dependencies": {
"@icons-pack/react-simple-icons": "^3.8.0", "@icons-pack/react-simple-icons": "^3.8.0",
"@lingui/react": "^2.9.2", "@lingui/react": "^2.9.2",
"@material-ui/core": "^4.9.9", "@ragestudio/nodecore-api-lib": "^0.2.1",
"@material-ui/icons": "^4.9.1",
"@ragestudio/ycorejs-lib": "^0.1.22",
"antd": "^4.6.6", "antd": "^4.6.6",
"axios": "^0.20.0", "axios": "^0.20.0",
"babel-core": "^6.26.3", "babel-core": "^6.26.3",
@ -47,7 +45,6 @@
"dotenv": "^8.2.0", "dotenv": "^8.2.0",
"dva-model-enhance": "^1.2.13", "dva-model-enhance": "^1.2.13",
"electron-config": "^2.0.0", "electron-config": "^2.0.0",
"electron-context-menu": "^2.3.0",
"electron-is": "^3.0.0", "electron-is": "^3.0.0",
"electron-log": "^4.2.4", "electron-log": "^4.2.4",
"electron-notification-state": "^1.0.4", "electron-notification-state": "^1.0.4",
@ -62,11 +59,9 @@
"localforage": "^1.7.4", "localforage": "^1.7.4",
"lodash": "^4.17.19", "lodash": "^4.17.19",
"moment": "^2.28.0", "moment": "^2.28.0",
"node-sass": "^4.14.1",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"path-to-regexp": "^6.1.0", "path-to-regexp": "^6.1.0",
"platform": "^1.3.6", "platform": "^1.3.6",
"radium": "^0.26.0",
"react": "^16.13.1", "react": "^16.13.1",
"react-animations": "^1.0.0", "react-animations": "^1.0.0",
"react-color": "^2.18.1", "react-color": "^2.18.1",
@ -84,14 +79,11 @@
"redux-socket.io": "^1.4.0", "redux-socket.io": "^1.4.0",
"redux-thunk": "^2.3.0", "redux-thunk": "^2.3.0",
"request": "^2.88.2", "request": "^2.88.2",
"requirejs": "^2.3.6",
"simple-icons": "^3.8.0",
"socket.io-client": "^2.3.0", "socket.io-client": "^2.3.0",
"stack-trace": "0.0.10", "stack-trace": "0.0.10",
"store": "^2.0.12", "store": "^2.0.12",
"styled-components": "^5.2.0", "styled-components": "^5.2.0",
"timeago.js": "^4.0.2", "timeago.js": "^4.0.2",
"vm": "^0.1.0",
"wait-on": "^5.2.0" "wait-on": "^5.2.0"
}, },
"devDependencies": { "devDependencies": {
@ -119,6 +111,6 @@
"less-loader": "^7.0.1", "less-loader": "^7.0.1",
"style-loader": "^1.2.1", "style-loader": "^1.2.1",
"typescript": "^3.8.3", "typescript": "^3.8.3",
"umi": "^3.2.22" "umi": "^3.2.23"
} }
} }

View File

@ -3,7 +3,7 @@ import verbosity from 'core/libs/verbosity'
import { connect } from 'umi' import { connect } from 'umi'
import classnames from 'classnames' import classnames from 'classnames'
import styles from './index.less' import styles from './index.less'
import * as errorhandler from 'core/libs/errorhandler' import ErrorHandler from 'core/libs/errorhandler'
import * as antd from 'antd' import * as antd from 'antd'
import { router } from 'core/libs' import { router } from 'core/libs'
import { import {
@ -117,8 +117,7 @@ export default class Overlay extends React.PureComponent {
return <Secondary {...renderProps} /> return <Secondary {...renderProps} />
} }
default:{ default:{
verbosity(errorhandler.OVERLAY_BADPOSITION) return ErrorHandler({ code: 210 })
return null
} }
} }
} }

View File

@ -4,9 +4,9 @@ import { cloneDeep } from 'lodash';
import store from 'store'; import store from 'store';
import { i18n, app_config } from 'config'; import { i18n, app_config } from 'config';
import handle from 'core/libs/errorhandler' import handle from 'core/libs/errorhandler'
import platform from 'platform'
import request from 'request' import request from 'request'
import html2canvas from 'html2canvas' import html2canvas from 'html2canvas'
import platform from 'platform'
const { pathToRegexp } = require('path-to-regexp'); const { pathToRegexp } = require('path-to-regexp');

View File

@ -1,59 +1,25 @@
import { lib, v3_request } from 'api'; import v3_request from 'api/lib/v3_request'
import endpoints_list from 'config/endpoints'; import endpointList from 'config/endpoints'
import { app_config } from 'config'; import { app_config } from 'config'
const { api_prefix } = app_config; const { api_prefix } = app_config;
const { uri_resolver } = lib;
async function compileURI(e, callback) { export async function api_request(payload, callback) {
const resolvers = await uri_resolver(); if (!payload) return false;
const prefix = resolvers[api_prefix]; const { endpoint, body, serverKey, userToken } = payload;
let final = null;
let url;
let method;
const endpointSplit = e.split(' ');
if (endpointSplit.length === 2) {
method = endpointSplit[0];
url = endpointSplit[1];
url = prefix + url;
return callback({ url, method });
}
Object.values(endpoints_list).find(item => {
url = item;
method = 'GET';
const paramsArray = item.split(' ');
if (paramsArray.length === 2) {
method = paramsArray[0];
url = paramsArray[1];
}
if (e === url) {
url = prefix + url;
return (final = { url, method });
}
});
return callback(final);
}
async function api_request(e, callback) {
if (!e) return false;
const { endpoint, body, serverKey, userToken, verbose } = e;
compileURI(endpoint, res => {
let petition = { let petition = {
method: res.method, prefix: api_prefix,
url: res.url, endpointList,
}; endpoint
}
body ? (petition.body = body) : null; body ? (petition.body = body) : null;
serverKey ? (petition.server_key = serverKey) : null; serverKey ? (petition.server_key = serverKey) : null;
userToken ? (petition.access_token = userToken) : null; userToken ? (petition.access_token = userToken) : null;
verbose ? console.log(`Requesting V3 =>`, petition) : null;
v3_request(petition, (...res) => { v3_request(petition, (...res) => {
return callback(...res); return callback(...res);
}); })
});
} }
export { compileURI, api_request };

View File

@ -11,8 +11,7 @@ function auth(payload, callback) {
{ {
body: frame, body: frame,
endpoint: endpoints.auth, endpoint: endpoints.auth,
serverKey: server_key, serverKey: server_key
verbose: true,
}, },
(err, res) => { (err, res) => {
return callback(err, res); return callback(err, res);
@ -32,8 +31,7 @@ function deauth(payload, callback) {
body: frame, body: frame,
endpoint: endpoints.sessions, endpoint: endpoints.sessions,
serverKey: payload.server_key, serverKey: payload.server_key,
userToken: payload.userToken, userToken: payload.userToken
verbose: true,
}, },
(err, res) => { (err, res) => {
return callback(err, res); return callback(err, res);

View File

@ -24,8 +24,7 @@ export const get = {
body: {user_id: id, fetch: req.fetch}, body: {user_id: id, fetch: req.fetch},
serverKey: serverKey, serverKey: serverKey,
userToken: access_token, userToken: access_token,
endpoint: endpoints.get_data, endpoint: endpoints.get_data
verbose: true,
}, },
(err, res) => { (err, res) => {
return callback(err, res) return callback(err, res)
@ -49,8 +48,7 @@ export const get = {
v3_model.api_request( v3_model.api_request(
{ {
body: { username }, body: { username },
endpoint: endpoints.basicData, endpoint: endpoints.basicData
verbose: true,
}, },
(err, res) => { (err, res) => {
err? console.error(err) : null err? console.error(err) : null
@ -74,7 +72,6 @@ export const get = {
body: { username, fetch: "user_data" }, body: { username, fetch: "user_data" },
endpoint: endpoints.profileData, endpoint: endpoints.profileData,
userToken: access_token, userToken: access_token,
verbose: true,
serverKey: server_key serverKey: server_key
}, },
(err, res) => { (err, res) => {

View File

@ -4,7 +4,7 @@ import keys from 'config/app_keys'
import { user, session } from 'core/models' import { user, session } from 'core/models'
import { router, verbosity, appInterface } from 'core/libs' import { router, verbosity, appInterface } from 'core/libs'
import settings from 'core/libs/settings' import settings from 'core/libs/settings'
import { uri_resolver } from 'api/lib' import uri_resolver from 'api/lib/uri_resolver'
import { queryIndexer } from 'core' import { queryIndexer } from 'core'
import jwt from 'jsonwebtoken' import jwt from 'jsonwebtoken'
@ -161,6 +161,7 @@ export default {
session.deauth({ id: uuid, userToken: token, server_key: sk }, (err, res) =>{ session.deauth({ id: uuid, userToken: token, server_key: sk }, (err, res) =>{
verbosity(res) verbosity(res)
}) })
yield put({ type: 'sessionErase' }) yield put({ type: 'sessionErase' })
}, },
*login({ payload }, { call, put, select }) { *login({ payload }, { call, put, select }) {
@ -404,7 +405,7 @@ export default {
} }
if (res) { if (res) {
try { try {
const session_data = JSON.stringify(JSON.parse(res)["user_data"]) const session_data = JSON.stringify(res.user_data)
sessionStorage.setItem(app_config.session_data_storage, btoa(session_data)) sessionStorage.setItem(app_config.session_data_storage, btoa(session_data))
location.reload() location.reload()
} catch (error) { } catch (error) {

View File

@ -1,16 +1,8 @@
import store from 'store'
import { app_config } from 'config'
import keys from 'config/app_keys'
import { user, session } from 'core/models'
import { router, verbosity, appInterface } from 'core/libs' import { router, verbosity, appInterface } from 'core/libs'
import settings from 'core/libs/settings' import settings from 'core/libs/settings'
import { uri_resolver } from 'api/lib' import { DynamicSDCP } from 'core/libs/dynamicsdcp'
import { DynamicSDCP } from 'core/libs/extension'
import * as core from 'core' import * as core from 'core'
import jwt from 'jsonwebtoken'
import cookie from 'cookie_js'
export default { export default {
namespace: 'extended', namespace: 'extended',

View File

@ -5,7 +5,7 @@ import keys from 'config/app_keys'
import { user, session } from 'core/models' import { user, session } from 'core/models'
import { router, verbosity, appInterface } from 'core/libs' import { router, verbosity, appInterface } from 'core/libs'
import settings from 'core/libs/settings' import settings from 'core/libs/settings'
import { DynamicSDCP } from 'core/libs/extension' import { DynamicSDCP } from 'core/libs/dynamicsdcp'
import * as core from 'core' import * as core from 'core'
import jwt from 'jsonwebtoken' import jwt from 'jsonwebtoken'
@ -39,7 +39,7 @@ export default {
if (err) { if (err) {
return console.log(err) return console.log(err)
} }
const data = JSON.parse(res)["user_data"] const data = res.user_data
const frame = { const frame = {
avatar: data.avatar, avatar: data.avatar,
can_follow: data.can_follow, can_follow: data.can_follow,

View File

@ -1,6 +1,5 @@
import React from 'react' import React from 'react'
import jwt from 'jsonwebtoken' import jwt from 'jsonwebtoken'
import { uri_resolver } from 'api/lib'
import io from 'socket.io-client' import io from 'socket.io-client'
import { connect } from 'umi' import { connect } from 'umi'
import * as antd from 'antd' import * as antd from 'antd'

View File

@ -21,12 +21,11 @@ export default class Explore extends React.Component {
body: {limit: settings("post_catchlimit"), type: "get_news_feed"}, body: {limit: settings("post_catchlimit"), type: "get_news_feed"},
serverKey: this.props.app.server_key, serverKey: this.props.app.server_key,
userToken: this.props.app.session_token, userToken: this.props.app.session_token,
endpoint: endpoints.posts, endpoint: endpoints.posts
verbose: true,
}, },
(err, res) => { (err, res) => {
try { try {
this.setState({ feed: JSON.parse(res)['data'] }) this.setState({ feed: res.data })
} catch (error) { } catch (error) {
// terrible (⓿_⓿) // terrible (⓿_⓿)
} }

View File

@ -40,19 +40,17 @@ export class NormalLoginForm extends React.PureComponent {
user.get.basicData(payload, (err, res) => { user.get.basicData(payload, (err, res) => {
if (err || !res) return false if (err || !res) return false
try { try {
const res_data = JSON.parse(res) if (res.api_status == 200) {
if (res_data.api_status == 200) {
a++ a++
this.anim_transition(300) this.anim_transition(300)
this.setState({ this.setState({
step_error: false, step_error: false,
early_data: res_data.data, early_data: res.data,
form_rawd_1: b, form_rawd_1: b,
step: a, step: a,
}) })
} }
if (res_data.api_status == 400) { if (res.api_status == 400) {
this.anim_error() this.anim_error()
} }
} catch (error) { } catch (error) {
@ -103,12 +101,7 @@ export class NormalLoginForm extends React.PureComponent {
} }
if (res) { if (res) {
try {
res = JSON.parse(res)
verbosity(res) verbosity(res)
} catch (error) {
console.log('Invalid response!')
}
switch (res.api_status.toString()) { switch (res.api_status.toString()) {
case "200": { case "200": {
@ -149,7 +142,7 @@ export class NormalLoginForm extends React.PureComponent {
} }
if (res) { if (res) {
try { try {
return resolve(JSON.stringify(JSON.parse(res)['user_data'])) return resolve(JSON.stringify(res.user_data))
} catch (error) { } catch (error) {
verbosity(error) verbosity(error)
} }