wenay-common 1.0.209 → 1.0.210

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.
@@ -213,6 +213,118 @@ function funcScreenerClient2(data, wait) {
213
213
  });
214
214
  return tr2();
215
215
  }
216
+ function funcScreenerClient4(data, obj, wait) {
217
+ const tr = (address) => new Proxy((() => { }), {
218
+ has(target, p) {
219
+ let o = obj();
220
+ for (let a of address) {
221
+ o = o?.[a];
222
+ if (!o)
223
+ return false;
224
+ if (o === "null")
225
+ return false;
226
+ }
227
+ o = o?.[p];
228
+ return o !== undefined && o !== "null";
229
+ },
230
+ get(target, p, receiver) {
231
+ if (p === Symbol.iterator) {
232
+ return function* () {
233
+ let o = obj();
234
+ for (let a of address) {
235
+ o = o?.[a];
236
+ if (!o)
237
+ return;
238
+ if (o === "null")
239
+ return;
240
+ }
241
+ if (!o || typeof o !== 'object')
242
+ return;
243
+ for (const key in o) {
244
+ if (o.hasOwnProperty(key)) {
245
+ yield [key, tr([...address, key])];
246
+ }
247
+ }
248
+ };
249
+ }
250
+ if (p === Symbol.toStringTag) {
251
+ return 'Object';
252
+ }
253
+ let o = obj();
254
+ for (let a of address) {
255
+ o = o?.[a];
256
+ if (!o)
257
+ return undefined;
258
+ if (o === "null")
259
+ return undefined;
260
+ }
261
+ o = o?.[p];
262
+ if (o === "null")
263
+ return undefined;
264
+ return tr([...address, String(p)]);
265
+ },
266
+ apply(target, thisArg, argArray) {
267
+ let o = obj();
268
+ for (let a of address) {
269
+ o = o?.[a];
270
+ if (!o)
271
+ return undefined;
272
+ if (o === "null")
273
+ return undefined;
274
+ }
275
+ if (address.at(-1) === "call") {
276
+ address.length = address.length - 1;
277
+ argArray.splice(0, 1);
278
+ }
279
+ const callback = [];
280
+ const callback2 = [];
281
+ argArray.forEach((el, i) => {
282
+ if (typeof el === "function") {
283
+ callback.push({ func: el, poz: i });
284
+ callback2.push(el);
285
+ argArray[i] = "___FUNC";
286
+ }
287
+ });
288
+ return data.send({ key: address, request: argArray }, wait, callback2);
289
+ },
290
+ ownKeys(target) {
291
+ let o = obj();
292
+ for (let a of address) {
293
+ o = o?.[a];
294
+ if (!o)
295
+ return [];
296
+ if (o === "null")
297
+ return [];
298
+ }
299
+ return Object.keys(o || {});
300
+ },
301
+ getOwnPropertyDescriptor(target, p) {
302
+ let o = obj();
303
+ for (let a of address) {
304
+ o = o?.[a];
305
+ if (!o)
306
+ return undefined;
307
+ if (o === "null")
308
+ return undefined;
309
+ }
310
+ if (!(p in o))
311
+ return undefined;
312
+ return {
313
+ value: tr([...address, String(p)]),
314
+ enumerable: true,
315
+ configurable: true,
316
+ writable: true
317
+ };
318
+ },
319
+ deleteProperty(target, p) {
320
+ return false;
321
+ },
322
+ set(target, p, value, receiver) {
323
+ return false;
324
+ }
325
+ });
326
+ return tr([]);
327
+ }
216
328
  function funcScreenerClient3(data, obj, wait) {
217
329
  const tr = (address) => new Proxy((() => { }), {
218
330
  has(target, p) {
@@ -307,7 +419,7 @@ function CreatAPIFacadeClient({ socketKey, socket, limit }) {
307
419
  limit
308
420
  });
309
421
  const func = funcScreenerClient2(tr);
310
- const strictly = funcScreenerClient3(tr, () => strictlyObj);
422
+ const strictly = funcScreenerClient4(tr, () => strictlyObj);
311
423
  const space = funcScreenerClient2(tr, false);
312
424
  return {
313
425
  api: tr.api,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wenay-common",
3
- "version": "1.0.209",
3
+ "version": "1.0.210",
4
4
  "description": "Common library",
5
5
  "strict": true,
6
6
  "main": "lib/index.js",