fix(core): update
This commit is contained in:
8
ts_web/00_commitinfo_data.ts
Normal file
8
ts_web/00_commitinfo_data.ts
Normal file
@ -0,0 +1,8 @@
|
||||
/**
|
||||
* autocreated commitinfo by @pushrocks/commitinfo
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@api.global/typedelectron',
|
||||
version: '1.0.3',
|
||||
description: 'a package made for ipc communication in electron'
|
||||
}
|
29
ts_web/classes.typedelectronfrontend.ts
Normal file
29
ts_web/classes.typedelectronfrontend.ts
Normal file
@ -0,0 +1,29 @@
|
||||
import * as plugins from './plugins.js';
|
||||
|
||||
export class TypedElectronFrontend {
|
||||
// STATIC
|
||||
public static async createTypedElectronFrontend() {
|
||||
return new TypedElectronFrontend();
|
||||
}
|
||||
|
||||
// INSTANCE
|
||||
public typedrouter = new plugins.typedrequest.TypedRouter();
|
||||
|
||||
constructor() {
|
||||
plugins.electronApi.receiveMessage('typedrequest', (payloadArg) => {
|
||||
this.typedrouter.routeAndAddResponse(payloadArg);
|
||||
});
|
||||
}
|
||||
|
||||
createTypedRequest<T extends plugins.typedrequestInterfaces.ITypedRequest>(
|
||||
methodName: T['method'],
|
||||
) {
|
||||
const typedrequest = new plugins.typedrequest.TypedRequest<T>(new plugins.typedrequest.TypedTarget({
|
||||
typedRouterRef: this.typedrouter,
|
||||
postMethodWithTypedRouter: async (payloadArg: T) => {
|
||||
plugins.electronApi.sendMessage('typedrequest', payloadArg);
|
||||
}
|
||||
}), methodName);
|
||||
return typedrequest;
|
||||
}
|
||||
}
|
0
ts_web/index.ts
Normal file
0
ts_web/index.ts
Normal file
15
ts_web/plugins.ts
Normal file
15
ts_web/plugins.ts
Normal file
@ -0,0 +1,15 @@
|
||||
// @api.global scope
|
||||
import * as typedrequest from '@api.global/typedrequest';
|
||||
import * as typedrequestInterfaces from '@api.global/typedrequest-interfaces';
|
||||
|
||||
export {
|
||||
typedrequest,
|
||||
typedrequestInterfaces,
|
||||
}
|
||||
|
||||
// electron through preload script
|
||||
const electronApi = (window as any).electronApi;
|
||||
|
||||
export {
|
||||
electronApi,
|
||||
}
|
Reference in New Issue
Block a user