examples to new tsrpc-cli

This commit is contained in:
King Wang
2021-10-07 15:30:02 +08:00
parent c21445548e
commit 69a90884d5
86 changed files with 652 additions and 1697 deletions

View File

@@ -7,15 +7,15 @@
"build": "webpack --mode=production"
},
"devDependencies": {
"copy-webpack-plugin": "^9.0.0",
"html-webpack-plugin": "^5.3.1",
"ts-loader": "^9.2.3",
"typescript": "^4.3.4",
"webpack": "^5.39.1",
"webpack-cli": "^4.7.2",
"copy-webpack-plugin": "^9.0.1",
"html-webpack-plugin": "^5.3.2",
"ts-loader": "^9.2.6",
"typescript": "^4.4.3",
"webpack": "^5.57.1",
"webpack-cli": "^4.9.0",
"webpack-dev-server": "^3.11.2"
},
"dependencies": {
"tsrpc-browser": "^3.0.3"
"tsrpc-browser": "^3.0.7"
}
}

View File

@@ -0,0 +1 @@
../../backend/src/shared

View File

@@ -1,9 +0,0 @@
import { BaseRequest, BaseResponse } from './base';
export interface ReqClear extends BaseRequest {
}
export interface ResClear extends BaseResponse {
}

View File

@@ -1,9 +0,0 @@
import { BaseRequest, BaseResponse } from './base'
export interface ReqSetCookie extends BaseRequest {
}
export interface ResSetCookie extends BaseResponse {
}

View File

@@ -1,9 +0,0 @@
import { BaseRequest, BaseResponse } from './base'
export interface ReqSetSession extends BaseRequest {
}
export interface ResSetSession extends BaseResponse {
}

View File

@@ -1,10 +0,0 @@
import { BaseRequest, BaseResponse } from './base';
export interface ReqTest extends BaseRequest {
}
export interface ResTest extends BaseResponse {
// From Session
testSession?: string
}

View File

@@ -1,12 +0,0 @@
export interface BaseRequest {
__cookie?: Cookie;
}
export interface BaseResponse {
__cookie?: Cookie;
}
export interface Cookie {
sessionId?: string,
[key: string]: any
}

View File

@@ -1,209 +0,0 @@
import { ServiceProto } from 'tsrpc-proto';
import { ReqClear, ResClear } from './PtlClear';
import { ReqSetCookie, ResSetCookie } from './PtlSetCookie';
import { ReqSetSession, ResSetSession } from './PtlSetSession';
import { ReqTest, ResTest } from './PtlTest';
export interface ServiceType {
api: {
"Clear": {
req: ReqClear,
res: ResClear
},
"SetCookie": {
req: ReqSetCookie,
res: ResSetCookie
},
"SetSession": {
req: ReqSetSession,
res: ResSetSession
},
"Test": {
req: ReqTest,
res: ResTest
}
},
msg: {
}
}
export const serviceProto: ServiceProto<ServiceType> = {
"services": [
{
"id": 0,
"name": "Clear",
"type": "api"
},
{
"id": 1,
"name": "SetCookie",
"type": "api"
},
{
"id": 2,
"name": "SetSession",
"type": "api"
},
{
"id": 3,
"name": "Test",
"type": "api"
}
],
"types": {
"PtlClear/ReqClear": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseRequest"
}
}
]
},
"base/BaseRequest": {
"type": "Interface",
"properties": [
{
"id": 0,
"name": "__cookie",
"type": {
"type": "Reference",
"target": "base/Cookie"
},
"optional": true
}
]
},
"base/Cookie": {
"type": "Interface",
"properties": [
{
"id": 0,
"name": "sessionId",
"type": {
"type": "String"
},
"optional": true
}
],
"indexSignature": {
"keyType": "String",
"type": {
"type": "Any"
}
}
},
"PtlClear/ResClear": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseResponse"
}
}
]
},
"base/BaseResponse": {
"type": "Interface",
"properties": [
{
"id": 0,
"name": "__cookie",
"type": {
"type": "Reference",
"target": "base/Cookie"
},
"optional": true
}
]
},
"PtlSetCookie/ReqSetCookie": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseRequest"
}
}
]
},
"PtlSetCookie/ResSetCookie": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseResponse"
}
}
]
},
"PtlSetSession/ReqSetSession": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseRequest"
}
}
]
},
"PtlSetSession/ResSetSession": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseResponse"
}
}
]
},
"PtlTest/ReqTest": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseRequest"
}
}
]
},
"PtlTest/ResTest": {
"type": "Interface",
"extends": [
{
"id": 0,
"type": {
"type": "Reference",
"target": "base/BaseResponse"
}
}
],
"properties": [
{
"id": 0,
"name": "testSession",
"type": {
"type": "String"
},
"optional": true
}
]
}
}
};