wenay-common 1.0.111 → 1.0.112

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,13 +3,12 @@ type tSocket = {
3
3
  on: (marker: string, callback: (a: any) => any) => any;
4
4
  };
5
5
  export type tRequestScreenerT<T> = {
6
- key: keyof T;
6
+ key: string[];
7
7
  callbacksId?: string[];
8
8
  request: any[];
9
9
  };
10
10
  export declare function funcPromiseServer<T extends object>(data: screenerSoc<tSocketData<tRequestScreenerT<T>>>, obj: T): void;
11
11
  export declare function funcPromiseServer2<T extends object>(sendMessage: screenerSoc222<tSocketData<tRequestScreenerT<T>>>, obj: T): (datum: any) => Promise<void>;
12
- export declare function funcPromiseServerPost<T extends object>(data: screenerPost<tRequestScreenerT<T>>, obj: T): void;
13
12
  type tSocketData<T> = ({
14
13
  data: T;
15
14
  error?: undefined;
@@ -28,15 +27,7 @@ type screenerSoc<T> = {
28
27
  }) => void;
29
28
  };
30
29
  type screenerSoc222<T> = (data: T) => void;
31
- type screenerPost<T> = {
32
- api: (data: {
33
- onMessage: (data: T) => any | Promise<any>;
34
- }) => void;
35
- };
36
30
  export declare function funcForWebSocket<T>(data: screenerSoc<tSocketData<tRequestScreenerT<T>>>): screenerSoc2<T>;
37
- export declare function FFuncMyF<T extends object>(object: T): {
38
- send: (data: tRequestScreenerT<T>) => Promise<any>;
39
- };
40
31
  type tFunc = (a: any) => any;
41
32
  export type screenerSoc2<T> = {
42
33
  send: (data: tRequestScreenerT<T>, wait?: boolean, callbacksId?: tFunc[]) => Promise<any>;
@@ -51,9 +42,8 @@ export type screenerSocApi<T> = {
51
42
  callbackDelete: (func: tFunc) => void;
52
43
  };
53
44
  export type tMethodToPromise2<T extends object> = {
54
- [P in keyof T]: T[P] extends ((...args: infer Z) => infer X) ? (...args: Z) => (X extends Promise<any> ? X : Promise<X>) : Promise<T[P]>;
45
+ [P in keyof T]: T[P] extends ((...args: infer Z) => infer X) ? (...args: Z) => (X extends Promise<any> ? X : Promise<X>) : T[P] extends object ? tMethodToPromise2<T[P]> : never;
55
46
  };
56
- export declare function funcScreenerClient2<T extends object>(data: screenerSoc2<T>, wait?: boolean): tMethodToPromise2<T>;
57
47
  type tAndB<T> = {
58
48
  data: T;
59
49
  void: () => void;
@@ -64,7 +54,6 @@ export type screenerSoc3<T> = {
64
54
  export type tMethodToPromise3<T extends object> = {
65
55
  [P in keyof T]: T[P] extends ((...args: infer Z) => infer X) ? (...args: Z) => (X extends Promise<any> ? tAndB<X> : tAndB<Promise<X>>) : tAndB<Promise<T[P]>>;
66
56
  };
67
- export declare function funcScreenerClient3<T extends object>(data: screenerSoc3<T>): tMethodToPromise3<T>;
68
57
  export type typeVoid2<T> = {
69
58
  [P in Exclude<keyof T, {
70
59
  [P in keyof T]: T[P] extends (any: any) => any ? ReturnType<T[P]> extends void ? P : never : never;
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CTestWeb = exports.fMiniTest = exports.CreatAPIFacadeServer = exports.CreatAPIFacadeClient = exports.funcScreenerClient3 = exports.funcScreenerClient2 = exports.FFuncMyF = exports.funcForWebSocket = exports.funcPromiseServerPost = exports.funcPromiseServer2 = exports.funcPromiseServer = void 0;
3
+ exports.CTestWeb = exports.fMiniTest = exports.CreatAPIFacadeServer = exports.CreatAPIFacadeClient = exports.funcForWebSocket = exports.funcPromiseServer2 = exports.funcPromiseServer = void 0;
4
4
  const common_1 = require("./common");
5
5
  function funcPromiseServer(data, obj) {
6
6
  const buf = data;
7
7
  data.api({
8
8
  onMessage: async (datum) => {
9
9
  const { key, request } = datum.data;
10
- const buf = obj[key];
10
+ const buf = key.reduce((o, k) => o?.[k], obj);
11
11
  if (!buf)
12
12
  return;
13
13
  if (typeof buf == "function") {
@@ -66,28 +66,6 @@ function funcPromiseServer2(sendMessage, obj) {
66
66
  };
67
67
  }
68
68
  exports.funcPromiseServer2 = funcPromiseServer2;
69
- function funcPromiseServerPost(data, obj) {
70
- data.api({
71
- onMessage: async (datum) => {
72
- console.log(datum);
73
- if (!datum)
74
- return;
75
- const { key, request } = datum;
76
- if (!key)
77
- return;
78
- const buf = obj[key];
79
- if (!buf)
80
- return;
81
- if (typeof buf == "function") {
82
- const a = await (async () => buf(...request))();
83
- return { data: a ?? undefined };
84
- }
85
- else
86
- throw "это не функция";
87
- }
88
- });
89
- }
90
- exports.funcPromiseServerPost = funcPromiseServerPost;
91
69
  function funcForWebSocket(data) {
92
70
  const sendMessage = data.sendMessage;
93
71
  const free = (() => {
@@ -161,7 +139,12 @@ function funcForWebSocket(data) {
161
139
  return {
162
140
  api,
163
141
  send: (data, wait, callbacksId) => new Promise((resolve, reject) => {
164
- const send = { mapId: free.next(), data, wait: wait, callbacksId: [] };
142
+ const send = {
143
+ mapId: free.next(),
144
+ data,
145
+ wait: wait,
146
+ callbacksId: []
147
+ };
165
148
  for (const el of callbacksId ?? []) {
166
149
  const id = free.next();
167
150
  send.callbacksId?.push(id);
@@ -185,49 +168,33 @@ function funcForWebSocket(data) {
185
168
  };
186
169
  }
187
170
  exports.funcForWebSocket = funcForWebSocket;
188
- function FFuncMyF(object) {
189
- return {
190
- send: async (data) => {
191
- const buf = object[data.key];
192
- if (!buf)
193
- throw "такого метода нет";
194
- if (typeof buf == "function")
195
- return buf(...data.request);
196
- else
197
- throw "это не функция";
198
- }
199
- };
200
- }
201
- exports.FFuncMyF = FFuncMyF;
202
171
  function funcScreenerClient2(data, wait) {
203
- return new Proxy({}, {
172
+ const tr = (address) => new Proxy((() => { }), {
204
173
  get(target, p, receiver) {
205
- const key = String(p);
206
- return async (...argArray) => {
207
- const callback = [];
208
- const callback2 = [];
209
- argArray.forEach((el, i) => {
210
- if (typeof el == "function") {
211
- callback.push({ func: el, poz: i });
212
- callback2.push(el);
213
- argArray[i] = "___FUNC";
214
- }
215
- });
216
- return data.send({ key, request: argArray }, wait, callback2);
217
- };
174
+ address.push(p);
175
+ return tr(address);
176
+ },
177
+ apply(target, thisArg, argArray) {
178
+ console.log(address, argArray);
179
+ const callback = [];
180
+ const callback2 = [];
181
+ argArray.forEach((el, i) => {
182
+ if (typeof el == "function") {
183
+ callback.push({ func: el, poz: i });
184
+ callback2.push(el);
185
+ argArray[i] = "___FUNC";
186
+ }
187
+ });
188
+ return data.send({ key: address, request: argArray }, wait, callback2);
218
189
  }
219
190
  });
220
- }
221
- exports.funcScreenerClient2 = funcScreenerClient2;
222
- function funcScreenerClient3(data) {
223
- return new Proxy({}, {
191
+ const tr2 = () => new Proxy({}, {
224
192
  get(target, p, receiver) {
225
- const key = String(p);
226
- return (...argArray) => data.send({ key, request: argArray });
227
- }
193
+ return tr([String(p)]);
194
+ },
228
195
  });
196
+ return tr2();
229
197
  }
230
- exports.funcScreenerClient3 = funcScreenerClient3;
231
198
  function CreatAPIFacadeClient({ socketKey, socket }) {
232
199
  const tr = funcForWebSocket({
233
200
  sendMessage: (data) => socket.emit(socketKey, data),
@@ -1,6 +1,6 @@
1
1
  export type MilliSec = number;
2
2
  type tInputBaseR = {
3
- [key: string]: number | string | string[];
3
+ [key: string]: boolean | number | string | string[];
4
4
  };
5
5
  export type tInputBase = {
6
6
  timestamp?: MilliSec;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wenay-common",
3
- "version": "1.0.111",
3
+ "version": "1.0.112",
4
4
  "description": "Common library",
5
5
  "strict": true,
6
6
  "main": "lib/index.js",