@lazycatcloud/sdk 0.1.144 → 0.1.146

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.
Files changed (58) hide show
  1. package/dist/common/media_meta.js +2 -2
  2. package/dist/common/media_meta.js.map +1 -1
  3. package/dist/extentions/app_common.d.ts.map +1 -1
  4. package/dist/extentions/app_common.js +43 -18
  5. package/dist/extentions/app_common.js.map +1 -1
  6. package/dist/extentions/base.d.ts +2 -2
  7. package/dist/extentions/base.d.ts.map +1 -1
  8. package/dist/extentions/base.js +3 -3
  9. package/dist/extentions/base.js.map +1 -1
  10. package/dist/package.json +10 -2
  11. package/package.json +10 -2
  12. package/common/box.ts +0 -545
  13. package/common/browseronly.ts +0 -520
  14. package/common/end_device.ts +0 -635
  15. package/common/file_handler.ts +0 -485
  16. package/common/filetrans.ts +0 -1936
  17. package/common/gateway.ts +0 -663
  18. package/common/media_meta.ts +0 -319
  19. package/common/message.ts +0 -242
  20. package/common/peripheral_device.ts +0 -783
  21. package/common/security_context.ts +0 -729
  22. package/common/users.ts +0 -1044
  23. package/dlna/dlna.ts +0 -895
  24. package/docs/contribute.md +0 -40
  25. package/docs/extentions/AppCommon.md +0 -30
  26. package/extentions/app_common.ts +0 -63
  27. package/extentions/base.ts +0 -459
  28. package/extentions/index.ts +0 -27
  29. package/extentions/safe_app.ts +0 -60
  30. package/extentions/unsafe_app.ts +0 -107
  31. package/google/protobuf/descriptor.ts +0 -3778
  32. package/google/protobuf/empty.ts +0 -64
  33. package/google/protobuf/timestamp.ts +0 -214
  34. package/grpcweb.ts +0 -106
  35. package/index.ts +0 -204
  36. package/lanforward/lanforward.ts +0 -301
  37. package/localdevice/clipboard.ts +0 -499
  38. package/localdevice/config.ts +0 -268
  39. package/localdevice/device.ts +0 -218
  40. package/localdevice/dialog.ts +0 -707
  41. package/localdevice/local-launch.ts +0 -954
  42. package/localdevice/network.ts +0 -273
  43. package/localdevice/permission.ts +0 -733
  44. package/localdevice/photo.ts +0 -1497
  45. package/ssdp/ssdp.ts +0 -332
  46. package/sys/OS_daemon.ts +0 -325
  47. package/sys/OS_snapshot.ts +0 -1714
  48. package/sys/OS_upgrader.ts +0 -782
  49. package/sys/btrfs.ts +0 -530
  50. package/sys/devopt.ts +0 -250
  51. package/sys/event.ts +0 -787
  52. package/sys/hc-core/hc-core.ts +0 -1582
  53. package/sys/ingress.ts +0 -953
  54. package/sys/network_manager.ts +0 -874
  55. package/sys/package_manager.ts +0 -1931
  56. package/sys/portal-server/portal-server.ts +0 -2934
  57. package/sys/snapd.ts +0 -861
  58. package/tsconfig.json +0 -15
@@ -1,707 +0,0 @@
1
- /* eslint-disable */
2
- import { grpc } from "@improbable-eng/grpc-web";
3
- import { BrowserHeaders } from "browser-headers";
4
- import _m0 from "protobufjs/minimal";
5
- import { Empty } from "../google/protobuf/empty";
6
-
7
- export interface QuestionRequest {
8
- title: string;
9
- text: string;
10
- defaultCancel: boolean;
11
- }
12
-
13
- export interface QuestionResult {
14
- yes: boolean;
15
- }
16
-
17
- export interface MessageBoxRequest {
18
- title: string;
19
- text: string;
20
- }
21
-
22
- export interface PasswordRequest {
23
- title: string;
24
- text: string;
25
- }
26
-
27
- export interface PasswordResult {
28
- password: string;
29
- ok: boolean;
30
- }
31
-
32
- export interface OpenFileSeletorRequest {
33
- /** 选择类型 */
34
- type: OpenFileSeletorRequest_SelectType;
35
- /** 是否多选(多选在SelectType 为Dir时无效) */
36
- isSingle: boolean;
37
- /**
38
- * 文件后缀过滤器
39
- * PC 只能支持单个过滤器语法 jpg , 使用多个后缀默认使用第一个后缀
40
- * android 支持多个过滤器, 使用英文逗号,分割 ex: jpb,png,gif
41
- */
42
- filter: string;
43
- }
44
-
45
- export enum OpenFileSeletorRequest_SelectType {
46
- Dir = 0,
47
- File = 1,
48
- UNRECOGNIZED = -1,
49
- }
50
-
51
- export function openFileSeletorRequest_SelectTypeFromJSON(object: any): OpenFileSeletorRequest_SelectType {
52
- switch (object) {
53
- case 0:
54
- case "Dir":
55
- return OpenFileSeletorRequest_SelectType.Dir;
56
- case 1:
57
- case "File":
58
- return OpenFileSeletorRequest_SelectType.File;
59
- case -1:
60
- case "UNRECOGNIZED":
61
- default:
62
- return OpenFileSeletorRequest_SelectType.UNRECOGNIZED;
63
- }
64
- }
65
-
66
- export function openFileSeletorRequest_SelectTypeToJSON(object: OpenFileSeletorRequest_SelectType): string {
67
- switch (object) {
68
- case OpenFileSeletorRequest_SelectType.Dir:
69
- return "Dir";
70
- case OpenFileSeletorRequest_SelectType.File:
71
- return "File";
72
- case OpenFileSeletorRequest_SelectType.UNRECOGNIZED:
73
- default:
74
- return "UNRECOGNIZED";
75
- }
76
- }
77
-
78
- export interface OpenFileSeletorResult {
79
- /** 文件或者目录的路径 */
80
- path: string[];
81
- }
82
-
83
- function createBaseQuestionRequest(): QuestionRequest {
84
- return { title: "", text: "", defaultCancel: false };
85
- }
86
-
87
- export const QuestionRequest = {
88
- encode(message: QuestionRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
89
- if (message.title !== "") {
90
- writer.uint32(10).string(message.title);
91
- }
92
- if (message.text !== "") {
93
- writer.uint32(18).string(message.text);
94
- }
95
- if (message.defaultCancel === true) {
96
- writer.uint32(24).bool(message.defaultCancel);
97
- }
98
- return writer;
99
- },
100
-
101
- decode(input: _m0.Reader | Uint8Array, length?: number): QuestionRequest {
102
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
103
- let end = length === undefined ? reader.len : reader.pos + length;
104
- const message = createBaseQuestionRequest();
105
- while (reader.pos < end) {
106
- const tag = reader.uint32();
107
- switch (tag >>> 3) {
108
- case 1:
109
- message.title = reader.string();
110
- break;
111
- case 2:
112
- message.text = reader.string();
113
- break;
114
- case 3:
115
- message.defaultCancel = reader.bool();
116
- break;
117
- default:
118
- reader.skipType(tag & 7);
119
- break;
120
- }
121
- }
122
- return message;
123
- },
124
-
125
- fromJSON(object: any): QuestionRequest {
126
- return {
127
- title: isSet(object.title) ? String(object.title) : "",
128
- text: isSet(object.text) ? String(object.text) : "",
129
- defaultCancel: isSet(object.defaultCancel) ? Boolean(object.defaultCancel) : false,
130
- };
131
- },
132
-
133
- toJSON(message: QuestionRequest): unknown {
134
- const obj: any = {};
135
- message.title !== undefined && (obj.title = message.title);
136
- message.text !== undefined && (obj.text = message.text);
137
- message.defaultCancel !== undefined && (obj.defaultCancel = message.defaultCancel);
138
- return obj;
139
- },
140
-
141
- fromPartial<I extends Exact<DeepPartial<QuestionRequest>, I>>(object: I): QuestionRequest {
142
- const message = createBaseQuestionRequest();
143
- message.title = object.title ?? "";
144
- message.text = object.text ?? "";
145
- message.defaultCancel = object.defaultCancel ?? false;
146
- return message;
147
- },
148
- };
149
-
150
- function createBaseQuestionResult(): QuestionResult {
151
- return { yes: false };
152
- }
153
-
154
- export const QuestionResult = {
155
- encode(message: QuestionResult, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
156
- if (message.yes === true) {
157
- writer.uint32(8).bool(message.yes);
158
- }
159
- return writer;
160
- },
161
-
162
- decode(input: _m0.Reader | Uint8Array, length?: number): QuestionResult {
163
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
164
- let end = length === undefined ? reader.len : reader.pos + length;
165
- const message = createBaseQuestionResult();
166
- while (reader.pos < end) {
167
- const tag = reader.uint32();
168
- switch (tag >>> 3) {
169
- case 1:
170
- message.yes = reader.bool();
171
- break;
172
- default:
173
- reader.skipType(tag & 7);
174
- break;
175
- }
176
- }
177
- return message;
178
- },
179
-
180
- fromJSON(object: any): QuestionResult {
181
- return { yes: isSet(object.yes) ? Boolean(object.yes) : false };
182
- },
183
-
184
- toJSON(message: QuestionResult): unknown {
185
- const obj: any = {};
186
- message.yes !== undefined && (obj.yes = message.yes);
187
- return obj;
188
- },
189
-
190
- fromPartial<I extends Exact<DeepPartial<QuestionResult>, I>>(object: I): QuestionResult {
191
- const message = createBaseQuestionResult();
192
- message.yes = object.yes ?? false;
193
- return message;
194
- },
195
- };
196
-
197
- function createBaseMessageBoxRequest(): MessageBoxRequest {
198
- return { title: "", text: "" };
199
- }
200
-
201
- export const MessageBoxRequest = {
202
- encode(message: MessageBoxRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
203
- if (message.title !== "") {
204
- writer.uint32(10).string(message.title);
205
- }
206
- if (message.text !== "") {
207
- writer.uint32(18).string(message.text);
208
- }
209
- return writer;
210
- },
211
-
212
- decode(input: _m0.Reader | Uint8Array, length?: number): MessageBoxRequest {
213
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
214
- let end = length === undefined ? reader.len : reader.pos + length;
215
- const message = createBaseMessageBoxRequest();
216
- while (reader.pos < end) {
217
- const tag = reader.uint32();
218
- switch (tag >>> 3) {
219
- case 1:
220
- message.title = reader.string();
221
- break;
222
- case 2:
223
- message.text = reader.string();
224
- break;
225
- default:
226
- reader.skipType(tag & 7);
227
- break;
228
- }
229
- }
230
- return message;
231
- },
232
-
233
- fromJSON(object: any): MessageBoxRequest {
234
- return {
235
- title: isSet(object.title) ? String(object.title) : "",
236
- text: isSet(object.text) ? String(object.text) : "",
237
- };
238
- },
239
-
240
- toJSON(message: MessageBoxRequest): unknown {
241
- const obj: any = {};
242
- message.title !== undefined && (obj.title = message.title);
243
- message.text !== undefined && (obj.text = message.text);
244
- return obj;
245
- },
246
-
247
- fromPartial<I extends Exact<DeepPartial<MessageBoxRequest>, I>>(object: I): MessageBoxRequest {
248
- const message = createBaseMessageBoxRequest();
249
- message.title = object.title ?? "";
250
- message.text = object.text ?? "";
251
- return message;
252
- },
253
- };
254
-
255
- function createBasePasswordRequest(): PasswordRequest {
256
- return { title: "", text: "" };
257
- }
258
-
259
- export const PasswordRequest = {
260
- encode(message: PasswordRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
261
- if (message.title !== "") {
262
- writer.uint32(10).string(message.title);
263
- }
264
- if (message.text !== "") {
265
- writer.uint32(18).string(message.text);
266
- }
267
- return writer;
268
- },
269
-
270
- decode(input: _m0.Reader | Uint8Array, length?: number): PasswordRequest {
271
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
272
- let end = length === undefined ? reader.len : reader.pos + length;
273
- const message = createBasePasswordRequest();
274
- while (reader.pos < end) {
275
- const tag = reader.uint32();
276
- switch (tag >>> 3) {
277
- case 1:
278
- message.title = reader.string();
279
- break;
280
- case 2:
281
- message.text = reader.string();
282
- break;
283
- default:
284
- reader.skipType(tag & 7);
285
- break;
286
- }
287
- }
288
- return message;
289
- },
290
-
291
- fromJSON(object: any): PasswordRequest {
292
- return {
293
- title: isSet(object.title) ? String(object.title) : "",
294
- text: isSet(object.text) ? String(object.text) : "",
295
- };
296
- },
297
-
298
- toJSON(message: PasswordRequest): unknown {
299
- const obj: any = {};
300
- message.title !== undefined && (obj.title = message.title);
301
- message.text !== undefined && (obj.text = message.text);
302
- return obj;
303
- },
304
-
305
- fromPartial<I extends Exact<DeepPartial<PasswordRequest>, I>>(object: I): PasswordRequest {
306
- const message = createBasePasswordRequest();
307
- message.title = object.title ?? "";
308
- message.text = object.text ?? "";
309
- return message;
310
- },
311
- };
312
-
313
- function createBasePasswordResult(): PasswordResult {
314
- return { password: "", ok: false };
315
- }
316
-
317
- export const PasswordResult = {
318
- encode(message: PasswordResult, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
319
- if (message.password !== "") {
320
- writer.uint32(10).string(message.password);
321
- }
322
- if (message.ok === true) {
323
- writer.uint32(16).bool(message.ok);
324
- }
325
- return writer;
326
- },
327
-
328
- decode(input: _m0.Reader | Uint8Array, length?: number): PasswordResult {
329
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
330
- let end = length === undefined ? reader.len : reader.pos + length;
331
- const message = createBasePasswordResult();
332
- while (reader.pos < end) {
333
- const tag = reader.uint32();
334
- switch (tag >>> 3) {
335
- case 1:
336
- message.password = reader.string();
337
- break;
338
- case 2:
339
- message.ok = reader.bool();
340
- break;
341
- default:
342
- reader.skipType(tag & 7);
343
- break;
344
- }
345
- }
346
- return message;
347
- },
348
-
349
- fromJSON(object: any): PasswordResult {
350
- return {
351
- password: isSet(object.password) ? String(object.password) : "",
352
- ok: isSet(object.ok) ? Boolean(object.ok) : false,
353
- };
354
- },
355
-
356
- toJSON(message: PasswordResult): unknown {
357
- const obj: any = {};
358
- message.password !== undefined && (obj.password = message.password);
359
- message.ok !== undefined && (obj.ok = message.ok);
360
- return obj;
361
- },
362
-
363
- fromPartial<I extends Exact<DeepPartial<PasswordResult>, I>>(object: I): PasswordResult {
364
- const message = createBasePasswordResult();
365
- message.password = object.password ?? "";
366
- message.ok = object.ok ?? false;
367
- return message;
368
- },
369
- };
370
-
371
- function createBaseOpenFileSeletorRequest(): OpenFileSeletorRequest {
372
- return { type: 0, isSingle: false, filter: "" };
373
- }
374
-
375
- export const OpenFileSeletorRequest = {
376
- encode(message: OpenFileSeletorRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
377
- if (message.type !== 0) {
378
- writer.uint32(8).int32(message.type);
379
- }
380
- if (message.isSingle === true) {
381
- writer.uint32(16).bool(message.isSingle);
382
- }
383
- if (message.filter !== "") {
384
- writer.uint32(26).string(message.filter);
385
- }
386
- return writer;
387
- },
388
-
389
- decode(input: _m0.Reader | Uint8Array, length?: number): OpenFileSeletorRequest {
390
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
391
- let end = length === undefined ? reader.len : reader.pos + length;
392
- const message = createBaseOpenFileSeletorRequest();
393
- while (reader.pos < end) {
394
- const tag = reader.uint32();
395
- switch (tag >>> 3) {
396
- case 1:
397
- message.type = reader.int32() as any;
398
- break;
399
- case 2:
400
- message.isSingle = reader.bool();
401
- break;
402
- case 3:
403
- message.filter = reader.string();
404
- break;
405
- default:
406
- reader.skipType(tag & 7);
407
- break;
408
- }
409
- }
410
- return message;
411
- },
412
-
413
- fromJSON(object: any): OpenFileSeletorRequest {
414
- return {
415
- type: isSet(object.type) ? openFileSeletorRequest_SelectTypeFromJSON(object.type) : 0,
416
- isSingle: isSet(object.isSingle) ? Boolean(object.isSingle) : false,
417
- filter: isSet(object.filter) ? String(object.filter) : "",
418
- };
419
- },
420
-
421
- toJSON(message: OpenFileSeletorRequest): unknown {
422
- const obj: any = {};
423
- message.type !== undefined && (obj.type = openFileSeletorRequest_SelectTypeToJSON(message.type));
424
- message.isSingle !== undefined && (obj.isSingle = message.isSingle);
425
- message.filter !== undefined && (obj.filter = message.filter);
426
- return obj;
427
- },
428
-
429
- fromPartial<I extends Exact<DeepPartial<OpenFileSeletorRequest>, I>>(object: I): OpenFileSeletorRequest {
430
- const message = createBaseOpenFileSeletorRequest();
431
- message.type = object.type ?? 0;
432
- message.isSingle = object.isSingle ?? false;
433
- message.filter = object.filter ?? "";
434
- return message;
435
- },
436
- };
437
-
438
- function createBaseOpenFileSeletorResult(): OpenFileSeletorResult {
439
- return { path: [] };
440
- }
441
-
442
- export const OpenFileSeletorResult = {
443
- encode(message: OpenFileSeletorResult, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
444
- for (const v of message.path) {
445
- writer.uint32(10).string(v!);
446
- }
447
- return writer;
448
- },
449
-
450
- decode(input: _m0.Reader | Uint8Array, length?: number): OpenFileSeletorResult {
451
- const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
452
- let end = length === undefined ? reader.len : reader.pos + length;
453
- const message = createBaseOpenFileSeletorResult();
454
- while (reader.pos < end) {
455
- const tag = reader.uint32();
456
- switch (tag >>> 3) {
457
- case 1:
458
- message.path.push(reader.string());
459
- break;
460
- default:
461
- reader.skipType(tag & 7);
462
- break;
463
- }
464
- }
465
- return message;
466
- },
467
-
468
- fromJSON(object: any): OpenFileSeletorResult {
469
- return { path: Array.isArray(object?.path) ? object.path.map((e: any) => String(e)) : [] };
470
- },
471
-
472
- toJSON(message: OpenFileSeletorResult): unknown {
473
- const obj: any = {};
474
- if (message.path) {
475
- obj.path = message.path.map((e) => e);
476
- } else {
477
- obj.path = [];
478
- }
479
- return obj;
480
- },
481
-
482
- fromPartial<I extends Exact<DeepPartial<OpenFileSeletorResult>, I>>(object: I): OpenFileSeletorResult {
483
- const message = createBaseOpenFileSeletorResult();
484
- message.path = object.path?.map((e) => e) || [];
485
- return message;
486
- },
487
- };
488
-
489
- export interface DialogManager {
490
- Question(request: DeepPartial<QuestionRequest>, metadata?: grpc.Metadata): Promise<QuestionResult>;
491
- MessageBox(request: DeepPartial<MessageBoxRequest>, metadata?: grpc.Metadata): Promise<Empty>;
492
- Password(request: DeepPartial<PasswordRequest>, metadata?: grpc.Metadata): Promise<PasswordResult>;
493
- OpenFileSeletor(
494
- request: DeepPartial<OpenFileSeletorRequest>,
495
- metadata?: grpc.Metadata,
496
- ): Promise<OpenFileSeletorResult>;
497
- }
498
-
499
- export class DialogManagerClientImpl implements DialogManager {
500
- private readonly rpc: Rpc;
501
-
502
- constructor(rpc: Rpc) {
503
- this.rpc = rpc;
504
- this.Question = this.Question.bind(this);
505
- this.MessageBox = this.MessageBox.bind(this);
506
- this.Password = this.Password.bind(this);
507
- this.OpenFileSeletor = this.OpenFileSeletor.bind(this);
508
- }
509
-
510
- Question(request: DeepPartial<QuestionRequest>, metadata?: grpc.Metadata): Promise<QuestionResult> {
511
- return this.rpc.unary(DialogManagerQuestionDesc, QuestionRequest.fromPartial(request), metadata);
512
- }
513
-
514
- MessageBox(request: DeepPartial<MessageBoxRequest>, metadata?: grpc.Metadata): Promise<Empty> {
515
- return this.rpc.unary(DialogManagerMessageBoxDesc, MessageBoxRequest.fromPartial(request), metadata);
516
- }
517
-
518
- Password(request: DeepPartial<PasswordRequest>, metadata?: grpc.Metadata): Promise<PasswordResult> {
519
- return this.rpc.unary(DialogManagerPasswordDesc, PasswordRequest.fromPartial(request), metadata);
520
- }
521
-
522
- OpenFileSeletor(
523
- request: DeepPartial<OpenFileSeletorRequest>,
524
- metadata?: grpc.Metadata,
525
- ): Promise<OpenFileSeletorResult> {
526
- return this.rpc.unary(DialogManagerOpenFileSeletorDesc, OpenFileSeletorRequest.fromPartial(request), metadata);
527
- }
528
- }
529
-
530
- export const DialogManagerDesc = { serviceName: "cloud.lazycat.apis.localdevice.DialogManager" };
531
-
532
- export const DialogManagerQuestionDesc: UnaryMethodDefinitionish = {
533
- methodName: "Question",
534
- service: DialogManagerDesc,
535
- requestStream: false,
536
- responseStream: false,
537
- requestType: {
538
- serializeBinary() {
539
- return QuestionRequest.encode(this).finish();
540
- },
541
- } as any,
542
- responseType: {
543
- deserializeBinary(data: Uint8Array) {
544
- return {
545
- ...QuestionResult.decode(data),
546
- toObject() {
547
- return this;
548
- },
549
- };
550
- },
551
- } as any,
552
- };
553
-
554
- export const DialogManagerMessageBoxDesc: UnaryMethodDefinitionish = {
555
- methodName: "MessageBox",
556
- service: DialogManagerDesc,
557
- requestStream: false,
558
- responseStream: false,
559
- requestType: {
560
- serializeBinary() {
561
- return MessageBoxRequest.encode(this).finish();
562
- },
563
- } as any,
564
- responseType: {
565
- deserializeBinary(data: Uint8Array) {
566
- return {
567
- ...Empty.decode(data),
568
- toObject() {
569
- return this;
570
- },
571
- };
572
- },
573
- } as any,
574
- };
575
-
576
- export const DialogManagerPasswordDesc: UnaryMethodDefinitionish = {
577
- methodName: "Password",
578
- service: DialogManagerDesc,
579
- requestStream: false,
580
- responseStream: false,
581
- requestType: {
582
- serializeBinary() {
583
- return PasswordRequest.encode(this).finish();
584
- },
585
- } as any,
586
- responseType: {
587
- deserializeBinary(data: Uint8Array) {
588
- return {
589
- ...PasswordResult.decode(data),
590
- toObject() {
591
- return this;
592
- },
593
- };
594
- },
595
- } as any,
596
- };
597
-
598
- export const DialogManagerOpenFileSeletorDesc: UnaryMethodDefinitionish = {
599
- methodName: "OpenFileSeletor",
600
- service: DialogManagerDesc,
601
- requestStream: false,
602
- responseStream: false,
603
- requestType: {
604
- serializeBinary() {
605
- return OpenFileSeletorRequest.encode(this).finish();
606
- },
607
- } as any,
608
- responseType: {
609
- deserializeBinary(data: Uint8Array) {
610
- return {
611
- ...OpenFileSeletorResult.decode(data),
612
- toObject() {
613
- return this;
614
- },
615
- };
616
- },
617
- } as any,
618
- };
619
-
620
- interface UnaryMethodDefinitionishR extends grpc.UnaryMethodDefinition<any, any> {
621
- requestStream: any;
622
- responseStream: any;
623
- }
624
-
625
- type UnaryMethodDefinitionish = UnaryMethodDefinitionishR;
626
-
627
- interface Rpc {
628
- unary<T extends UnaryMethodDefinitionish>(
629
- methodDesc: T,
630
- request: any,
631
- metadata: grpc.Metadata | undefined,
632
- ): Promise<any>;
633
- }
634
-
635
- export class GrpcWebImpl {
636
- private host: string;
637
- private options: {
638
- transport?: grpc.TransportFactory;
639
-
640
- debug?: boolean;
641
- metadata?: grpc.Metadata;
642
- upStreamRetryCodes?: number[];
643
- };
644
-
645
- constructor(
646
- host: string,
647
- options: {
648
- transport?: grpc.TransportFactory;
649
-
650
- debug?: boolean;
651
- metadata?: grpc.Metadata;
652
- upStreamRetryCodes?: number[];
653
- },
654
- ) {
655
- this.host = host;
656
- this.options = options;
657
- }
658
-
659
- unary<T extends UnaryMethodDefinitionish>(
660
- methodDesc: T,
661
- _request: any,
662
- metadata: grpc.Metadata | undefined,
663
- ): Promise<any> {
664
- const request = { ..._request, ...methodDesc.requestType };
665
- const maybeCombinedMetadata = metadata && this.options.metadata
666
- ? new BrowserHeaders({ ...this.options?.metadata.headersMap, ...metadata?.headersMap })
667
- : metadata || this.options.metadata;
668
- return new Promise((resolve, reject) => {
669
- grpc.unary(methodDesc, {
670
- request,
671
- host: this.host,
672
- metadata: maybeCombinedMetadata,
673
- transport: this.options.transport,
674
- debug: this.options.debug,
675
- onEnd: function (response) {
676
- if (response.status === grpc.Code.OK) {
677
- resolve(response.message);
678
- } else {
679
- const err = new GrpcWebError(response.statusMessage, response.status, response.trailers);
680
- reject(err);
681
- }
682
- },
683
- });
684
- });
685
- }
686
- }
687
-
688
- type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
689
-
690
- type DeepPartial<T> = T extends Builtin ? T
691
- : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
692
- : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
693
- : Partial<T>;
694
-
695
- type KeysOfUnion<T> = T extends T ? keyof T : never;
696
- type Exact<P, I extends P> = P extends Builtin ? P
697
- : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
698
-
699
- function isSet(value: any): boolean {
700
- return value !== null && value !== undefined;
701
- }
702
-
703
- export class GrpcWebError extends Error {
704
- constructor(message: string, public code: grpc.Code, public metadata: grpc.Metadata) {
705
- super(message);
706
- }
707
- }