@juzi/wechaty-puppet-service 1.0.43 → 1.0.44

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 (128) hide show
  1. package/dist/cjs/src/client/puppet-service.d.ts +0 -4
  2. package/dist/cjs/src/client/puppet-service.d.ts.map +1 -1
  3. package/dist/cjs/src/client/puppet-service.js +39 -129
  4. package/dist/cjs/src/client/puppet-service.js.map +1 -1
  5. package/dist/cjs/src/package-json.js +2 -2
  6. package/dist/cjs/src/server/puppet-implementation.d.ts.map +1 -1
  7. package/dist/cjs/src/server/puppet-implementation.js +2 -66
  8. package/dist/cjs/src/server/puppet-implementation.js.map +1 -1
  9. package/dist/esm/src/client/puppet-service.d.ts +0 -4
  10. package/dist/esm/src/client/puppet-service.d.ts.map +1 -1
  11. package/dist/esm/src/client/puppet-service.js +36 -126
  12. package/dist/esm/src/client/puppet-service.js.map +1 -1
  13. package/dist/esm/src/package-json.js +2 -2
  14. package/dist/esm/src/server/puppet-implementation.d.ts.map +1 -1
  15. package/dist/esm/src/server/puppet-implementation.js +0 -64
  16. package/dist/esm/src/server/puppet-implementation.js.map +1 -1
  17. package/package.json +2 -2
  18. package/src/client/puppet-service.ts +41 -148
  19. package/src/package-json.ts +2 -2
  20. package/src/server/puppet-implementation.ts +0 -82
  21. package/dist/cjs/src/deprecated/chunk-pb.d.ts +0 -15
  22. package/dist/cjs/src/deprecated/chunk-pb.d.ts.map +0 -1
  23. package/dist/cjs/src/deprecated/chunk-pb.js +0 -60
  24. package/dist/cjs/src/deprecated/chunk-pb.js.map +0 -1
  25. package/dist/cjs/src/deprecated/chunk-pb.spec.d.ts +0 -3
  26. package/dist/cjs/src/deprecated/chunk-pb.spec.d.ts.map +0 -1
  27. package/dist/cjs/src/deprecated/chunk-pb.spec.js +0 -144
  28. package/dist/cjs/src/deprecated/chunk-pb.spec.js.map +0 -1
  29. package/dist/cjs/src/deprecated/conversation-id-file-box.d.ts +0 -21
  30. package/dist/cjs/src/deprecated/conversation-id-file-box.d.ts.map +0 -1
  31. package/dist/cjs/src/deprecated/conversation-id-file-box.js +0 -43
  32. package/dist/cjs/src/deprecated/conversation-id-file-box.js.map +0 -1
  33. package/dist/cjs/src/deprecated/conversation-id-file-box.spec.d.ts +0 -3
  34. package/dist/cjs/src/deprecated/conversation-id-file-box.spec.d.ts.map +0 -1
  35. package/dist/cjs/src/deprecated/conversation-id-file-box.spec.js +0 -94
  36. package/dist/cjs/src/deprecated/conversation-id-file-box.spec.js.map +0 -1
  37. package/dist/cjs/src/deprecated/file-box-chunk.d.ts +0 -14
  38. package/dist/cjs/src/deprecated/file-box-chunk.d.ts.map +0 -1
  39. package/dist/cjs/src/deprecated/file-box-chunk.js +0 -67
  40. package/dist/cjs/src/deprecated/file-box-chunk.js.map +0 -1
  41. package/dist/cjs/src/deprecated/file-box-chunk.spec.d.ts +0 -3
  42. package/dist/cjs/src/deprecated/file-box-chunk.spec.d.ts.map +0 -1
  43. package/dist/cjs/src/deprecated/file-box-chunk.spec.js +0 -134
  44. package/dist/cjs/src/deprecated/file-box-chunk.spec.js.map +0 -1
  45. package/dist/cjs/src/deprecated/file-box-pb.d.ts +0 -15
  46. package/dist/cjs/src/deprecated/file-box-pb.d.ts.map +0 -1
  47. package/dist/cjs/src/deprecated/file-box-pb.js +0 -26
  48. package/dist/cjs/src/deprecated/file-box-pb.js.map +0 -1
  49. package/dist/cjs/src/deprecated/file-box-pb.spec.d.ts +0 -3
  50. package/dist/cjs/src/deprecated/file-box-pb.spec.d.ts.map +0 -1
  51. package/dist/cjs/src/deprecated/file-box-pb.spec.js +0 -18
  52. package/dist/cjs/src/deprecated/file-box-pb.spec.js.map +0 -1
  53. package/dist/cjs/src/deprecated/file-box-pb.type.d.ts +0 -15
  54. package/dist/cjs/src/deprecated/file-box-pb.type.d.ts.map +0 -1
  55. package/dist/cjs/src/deprecated/file-box-pb.type.js +0 -3
  56. package/dist/cjs/src/deprecated/file-box-pb.type.js.map +0 -1
  57. package/dist/cjs/src/deprecated/mod.d.ts +0 -3
  58. package/dist/cjs/src/deprecated/mod.d.ts.map +0 -1
  59. package/dist/cjs/src/deprecated/mod.js +0 -10
  60. package/dist/cjs/src/deprecated/mod.js.map +0 -1
  61. package/dist/cjs/src/deprecated/next-data.d.ts +0 -7
  62. package/dist/cjs/src/deprecated/next-data.d.ts.map +0 -1
  63. package/dist/cjs/src/deprecated/next-data.js +0 -26
  64. package/dist/cjs/src/deprecated/next-data.js.map +0 -1
  65. package/dist/cjs/src/deprecated/serialize-file-box.d.ts +0 -6
  66. package/dist/cjs/src/deprecated/serialize-file-box.d.ts.map +0 -1
  67. package/dist/cjs/src/deprecated/serialize-file-box.js +0 -22
  68. package/dist/cjs/src/deprecated/serialize-file-box.js.map +0 -1
  69. package/dist/esm/src/deprecated/chunk-pb.d.ts +0 -15
  70. package/dist/esm/src/deprecated/chunk-pb.d.ts.map +0 -1
  71. package/dist/esm/src/deprecated/chunk-pb.js +0 -56
  72. package/dist/esm/src/deprecated/chunk-pb.js.map +0 -1
  73. package/dist/esm/src/deprecated/chunk-pb.spec.d.ts +0 -3
  74. package/dist/esm/src/deprecated/chunk-pb.spec.d.ts.map +0 -1
  75. package/dist/esm/src/deprecated/chunk-pb.spec.js +0 -142
  76. package/dist/esm/src/deprecated/chunk-pb.spec.js.map +0 -1
  77. package/dist/esm/src/deprecated/conversation-id-file-box.d.ts +0 -21
  78. package/dist/esm/src/deprecated/conversation-id-file-box.d.ts.map +0 -1
  79. package/dist/esm/src/deprecated/conversation-id-file-box.js +0 -39
  80. package/dist/esm/src/deprecated/conversation-id-file-box.js.map +0 -1
  81. package/dist/esm/src/deprecated/conversation-id-file-box.spec.d.ts +0 -3
  82. package/dist/esm/src/deprecated/conversation-id-file-box.spec.d.ts.map +0 -1
  83. package/dist/esm/src/deprecated/conversation-id-file-box.spec.js +0 -92
  84. package/dist/esm/src/deprecated/conversation-id-file-box.spec.js.map +0 -1
  85. package/dist/esm/src/deprecated/file-box-chunk.d.ts +0 -14
  86. package/dist/esm/src/deprecated/file-box-chunk.d.ts.map +0 -1
  87. package/dist/esm/src/deprecated/file-box-chunk.js +0 -63
  88. package/dist/esm/src/deprecated/file-box-chunk.js.map +0 -1
  89. package/dist/esm/src/deprecated/file-box-chunk.spec.d.ts +0 -3
  90. package/dist/esm/src/deprecated/file-box-chunk.spec.d.ts.map +0 -1
  91. package/dist/esm/src/deprecated/file-box-chunk.spec.js +0 -132
  92. package/dist/esm/src/deprecated/file-box-chunk.spec.js.map +0 -1
  93. package/dist/esm/src/deprecated/file-box-pb.d.ts +0 -15
  94. package/dist/esm/src/deprecated/file-box-pb.d.ts.map +0 -1
  95. package/dist/esm/src/deprecated/file-box-pb.js +0 -22
  96. package/dist/esm/src/deprecated/file-box-pb.js.map +0 -1
  97. package/dist/esm/src/deprecated/file-box-pb.spec.d.ts +0 -3
  98. package/dist/esm/src/deprecated/file-box-pb.spec.d.ts.map +0 -1
  99. package/dist/esm/src/deprecated/file-box-pb.spec.js +0 -16
  100. package/dist/esm/src/deprecated/file-box-pb.spec.js.map +0 -1
  101. package/dist/esm/src/deprecated/file-box-pb.type.d.ts +0 -15
  102. package/dist/esm/src/deprecated/file-box-pb.type.d.ts.map +0 -1
  103. package/dist/esm/src/deprecated/file-box-pb.type.js +0 -2
  104. package/dist/esm/src/deprecated/file-box-pb.type.js.map +0 -1
  105. package/dist/esm/src/deprecated/mod.d.ts +0 -3
  106. package/dist/esm/src/deprecated/mod.d.ts.map +0 -1
  107. package/dist/esm/src/deprecated/mod.js +0 -3
  108. package/dist/esm/src/deprecated/mod.js.map +0 -1
  109. package/dist/esm/src/deprecated/next-data.d.ts +0 -7
  110. package/dist/esm/src/deprecated/next-data.d.ts.map +0 -1
  111. package/dist/esm/src/deprecated/next-data.js +0 -23
  112. package/dist/esm/src/deprecated/next-data.js.map +0 -1
  113. package/dist/esm/src/deprecated/serialize-file-box.d.ts +0 -6
  114. package/dist/esm/src/deprecated/serialize-file-box.d.ts.map +0 -1
  115. package/dist/esm/src/deprecated/serialize-file-box.js +0 -18
  116. package/dist/esm/src/deprecated/serialize-file-box.js.map +0 -1
  117. package/src/deprecated/chunk-pb.spec.ts +0 -210
  118. package/src/deprecated/chunk-pb.ts +0 -75
  119. package/src/deprecated/conversation-id-file-box.spec.ts +0 -131
  120. package/src/deprecated/conversation-id-file-box.ts +0 -72
  121. package/src/deprecated/file-box-chunk.spec.ts +0 -184
  122. package/src/deprecated/file-box-chunk.ts +0 -87
  123. package/src/deprecated/file-box-pb.spec.ts +0 -31
  124. package/src/deprecated/file-box-pb.ts +0 -41
  125. package/src/deprecated/file-box-pb.type.ts +0 -16
  126. package/src/deprecated/mod.ts +0 -8
  127. package/src/deprecated/next-data.ts +0 -35
  128. package/src/deprecated/serialize-file-box.ts +0 -24
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-chunk.spec.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/file-box-chunk.spec.ts"],"names":[],"mappings":""}
@@ -1,134 +0,0 @@
1
- #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- /**
5
- * Wechaty Chatbot SDK - https://github.com/wechaty/wechaty
6
- *
7
- * @copyright 2016 Huan LI (李卓桓) <https://github.com/huan>, and
8
- * Wechaty Contributors <https://github.com/wechaty>.
9
- *
10
- * Licensed under the Apache License, Version 2.0 (the "License");
11
- * you may not use this file except in compliance with the License.
12
- * You may obtain a copy of the License at
13
- *
14
- * http://www.apache.org/licenses/LICENSE-2.0
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- *
22
- */
23
- const tstest_1 = require("tstest");
24
- const stream_1 = require("stream");
25
- const file_box_1 = require("file-box");
26
- const wechaty_grpc_1 = require("@juzi/wechaty-grpc");
27
- const file_box_chunk_js_1 = require("./file-box-chunk.js");
28
- const next_data_js_1 = require("./next-data.js");
29
- (0, tstest_1.test)('unpackFileBoxFromChunk()', async (t) => {
30
- const FILE_BOX_DATA = 'test';
31
- const FILE_BOX_NAME = 'test.dat';
32
- const stream = await getFileBoxStreamStub(FILE_BOX_DATA, FILE_BOX_NAME);
33
- const decodedFileBox = await (0, file_box_chunk_js_1.unpackFileBoxFromChunk)(stream);
34
- const data = (await decodedFileBox.toBuffer()).toString();
35
- t.equal(decodedFileBox.name, FILE_BOX_NAME, 'should get file box name');
36
- t.equal(data, FILE_BOX_DATA, 'should get file box data');
37
- });
38
- (0, tstest_1.test)('packFileBoxToChunk()', async (t) => {
39
- const FILE_BOX_DATA = 'test';
40
- const FILE_BOX_NAME = 'test.dat';
41
- const fileBox = file_box_1.FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
42
- const stream = await (0, file_box_chunk_js_1.packFileBoxToChunk)(fileBox);
43
- const fileBoxChunk = await (0, next_data_js_1.nextData)(stream);
44
- t.ok(fileBoxChunk.hasName(), 'has name');
45
- const fileName = fileBoxChunk.getName();
46
- t.equal(fileName, FILE_BOX_NAME, 'should get name');
47
- let data = '';
48
- stream.on('data', (chunk) => {
49
- if (!chunk.hasData()) {
50
- throw new Error('no data');
51
- }
52
- data += chunk.getData();
53
- });
54
- await new Promise(resolve => stream.on('end', resolve));
55
- t.equal(data, FILE_BOX_DATA, 'should get file box data');
56
- });
57
- (0, tstest_1.test)('packFileBoxToChunk() <-> unpackFileBoxFromChunk()', async (t) => {
58
- const FILE_BOX_DATA = 'test';
59
- const FILE_BOX_NAME = 'test.dat';
60
- const fileBox = file_box_1.FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
61
- const stream = await (0, file_box_chunk_js_1.packFileBoxToChunk)(fileBox);
62
- const restoredBox = await (0, file_box_chunk_js_1.unpackFileBoxFromChunk)(stream);
63
- t.equal(fileBox.name, restoredBox.name, 'should be same name');
64
- t.equal(await fileBox.toBase64(), await restoredBox.toBase64(), 'should be same content');
65
- });
66
- (0, tstest_1.test)('should handle no name error in catch', async (t) => {
67
- t.plan(1);
68
- const FILE_BOX_DATA = 'test';
69
- const FILE_BOX_NAME = 'test.dat';
70
- const stream = await getFileBoxStreamStub(FILE_BOX_DATA, FILE_BOX_NAME, true);
71
- try {
72
- await (0, file_box_chunk_js_1.unpackFileBoxFromChunk)(stream);
73
- }
74
- catch (e) {
75
- t.equal(e.message, 'no name');
76
- }
77
- });
78
- (0, tstest_1.test)('should handle first error catch', async (t) => {
79
- t.plan(1);
80
- const FILE_BOX_DATA = 'test';
81
- const FILE_BOX_NAME = 'test.dat';
82
- const stream = await getFileBoxStreamStub(FILE_BOX_DATA, FILE_BOX_NAME, false, true);
83
- try {
84
- await (0, file_box_chunk_js_1.unpackFileBoxFromChunk)(stream);
85
- }
86
- catch (e) {
87
- t.equal(e.message, 'first exception');
88
- }
89
- });
90
- (0, tstest_1.test)('should handle middle error in further ops', async (t) => {
91
- t.plan(1);
92
- const FILE_BOX_DATA = 'test';
93
- const FILE_BOX_NAME = 'test.dat';
94
- const stream = await getFileBoxStreamStub(FILE_BOX_DATA, FILE_BOX_NAME, false, false, true);
95
- const fileBox = await (0, file_box_chunk_js_1.unpackFileBoxFromChunk)(stream);
96
- try {
97
- await fileBox.toBuffer();
98
- }
99
- catch (e) {
100
- t.equal(e.message, 'middle exception');
101
- }
102
- });
103
- async function getFileBoxStreamStub(data, name, noname = false, firstException = false, middleException = false) {
104
- const fileBox = file_box_1.FileBox.fromBuffer(Buffer.from(data), name);
105
- const stream = new stream_1.PassThrough({ objectMode: true });
106
- if (firstException) {
107
- stream.pause();
108
- setImmediate(() => {
109
- stream.emit('error', new Error('first exception'));
110
- stream.resume();
111
- });
112
- }
113
- else {
114
- const chunk1 = new wechaty_grpc_1.puppet.FileBoxChunk();
115
- if (!noname) {
116
- chunk1.setName(fileBox.name);
117
- }
118
- setTimeout(() => stream.write(chunk1), 10);
119
- }
120
- if (middleException) {
121
- setTimeout(() => {
122
- stream.emit('error', new Error('middle exception'));
123
- }, 100);
124
- }
125
- const fileBoxStream = await fileBox.toStream();
126
- fileBoxStream.on('data', chunk => {
127
- const fileBoxChunk = new wechaty_grpc_1.puppet.FileBoxChunk();
128
- fileBoxChunk.setData(chunk);
129
- setTimeout(() => stream.write(fileBoxChunk), 200);
130
- });
131
- fileBoxStream.on('end', () => setTimeout(() => stream.end(), 250));
132
- return stream;
133
- }
134
- //# sourceMappingURL=file-box-chunk.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-chunk.spec.js","sourceRoot":"","sources":["../../../../src/deprecated/file-box-chunk.spec.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import type { FileBoxInterface } from 'file-box';
2
- import type { Readable } from 'stronger-typed-streams';
3
- import type { FileBoxPb } from './file-box-pb.type.js';
4
- /**
5
- * @deprecated Will be removed after Dec 31, 2022
6
- */
7
- declare function packFileBoxToPb<T extends FileBoxPb>(PbConstructor: {
8
- new (): T;
9
- }): (fileBox: FileBoxInterface) => Promise<Readable<T>>;
10
- /**
11
- * @deprecated Will be removed after Dec 31, 2022
12
- */
13
- declare function unpackFileBoxFromPb<T extends FileBoxPb>(pbStream: Readable<T>): Promise<FileBoxInterface>;
14
- export { packFileBoxToPb, unpackFileBoxFromPb, };
15
- //# sourceMappingURL=file-box-pb.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-pb.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/file-box-pb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAW,UAAU,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAU,wBAAwB,CAAA;AAU1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAa,uBAAuB,CAAA;AAE7D;;GAEG;AACH,iBAAS,eAAe,CAAC,CAAC,SAAS,SAAS,EAC1C,aAAa,EAAE;IAAE,QAAO,CAAC,CAAA;CAAE,aAEJ,gBAAgB,0BAKxC;AAED;;GAEG;AACH,iBAAe,mBAAmB,CAAC,CAAC,SAAS,SAAS,EACpD,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAI3B;AAED,OAAO,EACL,eAAe,EACf,mBAAmB,GACpB,CAAA"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.unpackFileBoxFromPb = exports.packFileBoxToPb = void 0;
4
- const file_box_chunk_js_1 = require("./file-box-chunk.js");
5
- const chunk_pb_js_1 = require("./chunk-pb.js");
6
- /**
7
- * @deprecated Will be removed after Dec 31, 2022
8
- */
9
- function packFileBoxToPb(PbConstructor) {
10
- return async (fileBox) => {
11
- const fileBoxChunkStream = await (0, file_box_chunk_js_1.packFileBoxToChunk)(fileBox);
12
- const pbFileBox = (0, chunk_pb_js_1.packFileBoxChunkToPb)(PbConstructor)(fileBoxChunkStream);
13
- return pbFileBox;
14
- };
15
- }
16
- exports.packFileBoxToPb = packFileBoxToPb;
17
- /**
18
- * @deprecated Will be removed after Dec 31, 2022
19
- */
20
- async function unpackFileBoxFromPb(pbStream) {
21
- const fileBoxChunkStream = (0, chunk_pb_js_1.unpackFileBoxChunkFromPb)(pbStream);
22
- const fileBox = await (0, file_box_chunk_js_1.unpackFileBoxFromChunk)(fileBoxChunkStream);
23
- return fileBox;
24
- }
25
- exports.unpackFileBoxFromPb = unpackFileBoxFromPb;
26
- //# sourceMappingURL=file-box-pb.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-pb.js","sourceRoot":"","sources":["../../../../src/deprecated/file-box-pb.ts"],"names":[],"mappings":";;;AAGA,2DAGsD;AACtD,+CAGgD;AAGhD;;GAEG;AACH,SAAS,eAAe,CACtB,aAA2B;IAE3B,OAAO,KAAK,EAAE,OAAyB,EAAE,EAAE;QACzC,MAAM,kBAAkB,GAAG,MAAM,IAAA,sCAAkB,EAAC,OAAO,CAAC,CAAA;QAC5D,MAAM,SAAS,GAAG,IAAA,kCAAoB,EAAC,aAAa,CAAC,CAAC,kBAAkB,CAAC,CAAA;QACzE,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;AACH,CAAC;AAcC,0CAAe;AAZjB;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAChC,QAAqB;IAErB,MAAM,kBAAkB,GAAG,IAAA,sCAAwB,EAAC,QAAQ,CAAC,CAAA;IAC7D,MAAM,OAAO,GAAG,MAAM,IAAA,0CAAsB,EAAC,kBAAkB,CAAC,CAAA;IAChE,OAAO,OAAO,CAAA;AAChB,CAAC;AAIC,kDAAmB"}
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
- export {};
3
- //# sourceMappingURL=file-box-pb.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-pb.spec.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/file-box-pb.spec.ts"],"names":[],"mappings":""}
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- const tstest_1 = require("tstest");
5
- const file_box_1 = require("file-box");
6
- const wechaty_grpc_1 = require("@juzi/wechaty-grpc");
7
- const file_box_pb_js_1 = require("./file-box-pb.js");
8
- (0, tstest_1.test)('packFileBoxToPb()', async (t) => {
9
- const FILE_BOX_DATA = 'test';
10
- const FILE_BOX_NAME = 'test.dat';
11
- const fileBox = file_box_1.FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
12
- const pb = await (0, file_box_pb_js_1.packFileBoxToPb)(wechaty_grpc_1.puppet.MessageFileStreamResponse)(fileBox);
13
- const restoredFileBox = await (0, file_box_pb_js_1.unpackFileBoxFromPb)(pb);
14
- t.ok(restoredFileBox instanceof file_box_1.FileBox, 'should get an instance of FileBOX');
15
- t.equal(restoredFileBox.name, fileBox.name, 'should get the right file box name');
16
- t.equal(await restoredFileBox.toBase64(), await fileBox.toBase64(), 'should get the right file box content');
17
- });
18
- //# sourceMappingURL=file-box-pb.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-pb.spec.js","sourceRoot":"","sources":["../../../../src/deprecated/file-box-pb.spec.ts"],"names":[],"mappings":";;;AAEA,mCAA6B;AAE7B,uCAAkC;AAElC,qDAE2D;AAE3D,qDAGqD;AAErD,IAAA,aAAI,EAAC,mBAAmB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IAClC,MAAM,aAAa,GAAG,MAAM,CAAA;IAC5B,MAAM,aAAa,GAAG,UAAU,CAAA;IAEhC,MAAM,OAAO,GAAG,kBAAO,CAAC,UAAU,CAChC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAC1B,aAAa,CACd,CAAA;IAED,MAAM,EAAE,GAAG,MAAM,IAAA,gCAAe,EAAC,qBAAM,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,CAAA;IAC3E,MAAM,eAAe,GAAG,MAAM,IAAA,oCAAmB,EAAC,EAAE,CAAC,CAAA;IACrD,CAAC,CAAC,EAAE,CAAC,eAAe,YAAY,kBAAO,EAAE,mCAAmC,CAAC,CAAA;IAE7E,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,oCAAoC,CAAC,CAAA;IACjF,CAAC,CAAC,KAAK,CAAC,MAAM,eAAe,CAAC,QAAQ,EAAE,EAAE,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE,uCAAuC,CAAC,CAAA;AAC9G,CAAC,CAAC,CAAA"}
@@ -1,15 +0,0 @@
1
- import type { puppet } from '@juzi/wechaty-grpc';
2
- /**
3
- * Any Protocol Buffer message that include a FileBoxChunk
4
- */
5
- export interface FileBoxPb {
6
- hasFileBoxChunk(): boolean;
7
- getFileBoxChunk(): puppet.FileBoxChunk | undefined;
8
- setFileBoxChunk(value?: puppet.FileBoxChunk): void;
9
- }
10
- export interface ConversationIdFileBoxPb extends FileBoxPb {
11
- hasConversationId(): boolean;
12
- getConversationId(): string;
13
- setConversationId(value: string): void;
14
- }
15
- //# sourceMappingURL=file-box-pb.type.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-pb.type.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/file-box-pb.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAEhD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,eAAe,IAAI,OAAO,CAAA;IAC1B,eAAe,IAAI,MAAM,CAAC,YAAY,GAAG,SAAS,CAAA;IAClD,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAA;CACnD;AAED,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,iBAAiB,IAAI,OAAO,CAAA;IAC5B,iBAAiB,IAAI,MAAM,CAAA;IAC3B,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACvC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=file-box-pb.type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-box-pb.type.js","sourceRoot":"","sources":["../../../../src/deprecated/file-box-pb.type.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export { packConversationIdFileBoxToPb, unpackConversationIdFileBoxArgsFromPb, } from './conversation-id-file-box.js';
2
- export { packFileBoxToPb, unpackFileBoxFromPb, } from './file-box-pb.js';
3
- //# sourceMappingURL=mod.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,GACtC,MAA8C,+BAA+B,CAAA;AAC9E,OAAO,EACL,eAAe,EACf,mBAAmB,GACpB,MAA8C,kBAAkB,CAAA"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.unpackFileBoxFromPb = exports.packFileBoxToPb = exports.unpackConversationIdFileBoxArgsFromPb = exports.packConversationIdFileBoxToPb = void 0;
4
- var conversation_id_file_box_js_1 = require("./conversation-id-file-box.js");
5
- Object.defineProperty(exports, "packConversationIdFileBoxToPb", { enumerable: true, get: function () { return conversation_id_file_box_js_1.packConversationIdFileBoxToPb; } });
6
- Object.defineProperty(exports, "unpackConversationIdFileBoxArgsFromPb", { enumerable: true, get: function () { return conversation_id_file_box_js_1.unpackConversationIdFileBoxArgsFromPb; } });
7
- var file_box_pb_js_1 = require("./file-box-pb.js");
8
- Object.defineProperty(exports, "packFileBoxToPb", { enumerable: true, get: function () { return file_box_pb_js_1.packFileBoxToPb; } });
9
- Object.defineProperty(exports, "unpackFileBoxFromPb", { enumerable: true, get: function () { return file_box_pb_js_1.unpackFileBoxFromPb; } });
10
- //# sourceMappingURL=mod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../../src/deprecated/mod.ts"],"names":[],"mappings":";;;AAAA,6EAG8E;AAF5E,4IAAA,6BAA6B,OAAA;AAC7B,oJAAA,qCAAqC,OAAA;AAEvC,mDAGiE;AAF/D,iHAAA,eAAe,OAAA;AACf,qHAAA,mBAAmB,OAAA"}
@@ -1,7 +0,0 @@
1
- import type { Readable } from 'stronger-typed-streams';
2
- /**
3
- * @deprecated Will be removed after Dec 31, 2022
4
- */
5
- declare function nextData<T>(stream: Readable<T>): Promise<T>;
6
- export { nextData, };
7
- //# sourceMappingURL=next-data.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"next-data.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/next-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACT,MAAgB,wBAAwB,CAAA;AAQzC;;GAEG;AACH,iBAAe,QAAQ,CAAC,CAAC,EACvB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAClB,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED,OAAO,EACL,QAAQ,GACT,CAAA"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.nextData = void 0;
4
- /**
5
- * windmemory(20201027): generating fileBox data in server side might take longer.
6
- * Set to 60 sec to avoid unexpected timeout.
7
- */
8
- const TIMEOUT = 60 * 1000;
9
- /**
10
- * @deprecated Will be removed after Dec 31, 2022
11
- */
12
- async function nextData(stream) {
13
- const chunk = await new Promise((resolve, reject) => {
14
- const timer = setTimeout(reject, TIMEOUT);
15
- stream.once('data', chunk => {
16
- stream.pause();
17
- clearTimeout(timer);
18
- resolve(chunk);
19
- });
20
- stream.once('error', reject);
21
- });
22
- stream.resume();
23
- return chunk;
24
- }
25
- exports.nextData = nextData;
26
- //# sourceMappingURL=next-data.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"next-data.js","sourceRoot":"","sources":["../../../../src/deprecated/next-data.ts"],"names":[],"mappings":";;;AAIA;;;GAGG;AACH,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,CAAA;AAEzB;;GAEG;AACH,KAAK,UAAU,QAAQ,CACrB,MAAmB;IAEnB,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACzC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;YAC1B,MAAM,CAAC,KAAK,EAAE,CAAA;YACd,YAAY,CAAC,KAAK,CAAC,CAAA;YAEnB,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;QACF,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAE9B,CAAC,CAAC,CAAA;IAEF,MAAM,CAAC,MAAM,EAAE,CAAA;IACf,OAAO,KAAK,CAAA;AACd,CAAC;AAGC,4BAAQ"}
@@ -1,6 +0,0 @@
1
- import type { FileBoxInterface } from 'file-box';
2
- /**
3
- * @deprecated Will be removed after Dec 31, 2022
4
- */
5
- export declare const serializeFileBox: (fileBox: FileBoxInterface) => Promise<string>;
6
- //# sourceMappingURL=serialize-file-box.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serialize-file-box.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/serialize-file-box.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EACjB,MAA0B,UAAU,CAAA;AAErC;;GAEG;AACH,eAAO,MAAM,gBAAgB,YAAmB,gBAAgB,KAAG,QAAQ,MAAM,CAYhF,CAAA"}
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.serializeFileBox = void 0;
4
- const file_box_1 = require("file-box");
5
- /**
6
- * @deprecated Will be removed after Dec 31, 2022
7
- */
8
- const serializeFileBox = async (fileBox) => {
9
- const serializableFileBoxTypes = [
10
- file_box_1.FileBoxType.Base64,
11
- file_box_1.FileBoxType.Url,
12
- file_box_1.FileBoxType.QRCode,
13
- ];
14
- if (serializableFileBoxTypes.includes(fileBox.type)) {
15
- return JSON.stringify(fileBox);
16
- }
17
- const base64 = await fileBox.toBase64();
18
- const name = fileBox.name;
19
- return JSON.stringify(file_box_1.FileBox.fromBase64(base64, name));
20
- };
21
- exports.serializeFileBox = serializeFileBox;
22
- //# sourceMappingURL=serialize-file-box.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serialize-file-box.js","sourceRoot":"","sources":["../../../../src/deprecated/serialize-file-box.ts"],"names":[],"mappings":";;;AAAA,uCAGqC;AAKrC;;GAEG;AACI,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAAyB,EAAmB,EAAE;IACnF,MAAM,wBAAwB,GAAG;QAC/B,sBAAW,CAAC,MAAM;QAClB,sBAAW,CAAC,GAAG;QACf,sBAAW,CAAC,MAAM;KACnB,CAAA;IACD,IAAI,wBAAwB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;KAC/B;IACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IACzB,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAO,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;AACzD,CAAC,CAAA;AAZY,QAAA,gBAAgB,oBAY5B"}
@@ -1,15 +0,0 @@
1
- import type { puppet } from '@juzi/wechaty-grpc';
2
- import { Readable } from 'stronger-typed-streams';
3
- import type { FileBoxPb } from './file-box-pb.type.js';
4
- /**
5
- * @deprecated Will be removed after Dec 31, 2022
6
- */
7
- declare function packFileBoxChunkToPb<T extends FileBoxPb>(PbConstructor: {
8
- new (): T;
9
- }): (stream: Readable<puppet.FileBoxChunk>) => Readable<T>;
10
- /**
11
- * @deprecated Will be removed after Dec 31, 2022
12
- */
13
- declare function unpackFileBoxChunkFromPb<T extends FileBoxPb>(stream: Readable<T>): Readable<puppet.FileBoxChunk>;
14
- export { packFileBoxChunkToPb, unpackFileBoxChunkFromPb, };
15
- //# sourceMappingURL=chunk-pb.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunk-pb.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/chunk-pb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAa,MAAM,wBAAwB,CAAA;AAG5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAiBtD;;GAEG;AACH,iBAAS,oBAAoB,CAAC,CAAC,SAAS,SAAS,EAC/C,aAAa,EAAE;IAAE,QAAO,CAAC,CAAA;CAAE,YAEX,SAAS,OAAO,YAAY,CAAC,KAAG,SAAS,CAAC,CAAC,CAU5D;AAkBD;;GAEG;AACH,iBAAS,wBAAwB,CAAC,CAAC,SAAS,SAAS,EACnD,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAClB,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAS/B;AAED,OAAO,EACL,oBAAoB,EACpB,wBAAwB,GACzB,CAAA"}
@@ -1,56 +0,0 @@
1
- import { Transform } from 'stronger-typed-streams';
2
- import { PassThrough } from 'stream';
3
- /**
4
- * Wrap FileBoxChunk
5
- * @deprecated Will be removed after Dec 31, 2022
6
- */
7
- const encoder = (PbConstructor) => new Transform({
8
- objectMode: true,
9
- transform: (chunk, _, callback) => {
10
- const message = new PbConstructor();
11
- message.setFileBoxChunk(chunk);
12
- callback(null, message);
13
- },
14
- });
15
- /**
16
- * @deprecated Will be removed after Dec 31, 2022
17
- */
18
- function packFileBoxChunkToPb(PbConstructor) {
19
- return (stream) => {
20
- const outStream = new PassThrough({ objectMode: true });
21
- const encodedStream = stream.pipe(encoder(PbConstructor));
22
- stream.on('error', e => outStream.emit('error', e));
23
- encodedStream.on('error', e => outStream.emit('error', e));
24
- encodedStream.pipe(outStream);
25
- return outStream;
26
- };
27
- }
28
- /**
29
- * Unwrap FileBoxChunk
30
- * @deprecated Will be removed after Dec 31, 2022
31
- */
32
- const decoder = () => new Transform({
33
- objectMode: true,
34
- transform: (chunk, _, callback) => {
35
- const fileBoxChunk = chunk.getFileBoxChunk();
36
- if (!fileBoxChunk) {
37
- callback(new Error('No FileBoxChunk'));
38
- }
39
- else {
40
- callback(null, fileBoxChunk);
41
- }
42
- },
43
- });
44
- /**
45
- * @deprecated Will be removed after Dec 31, 2022
46
- */
47
- function unpackFileBoxChunkFromPb(stream) {
48
- const outStream = new PassThrough({ objectMode: true });
49
- const decodedStream = stream.pipe(decoder());
50
- stream.on('error', e => outStream.emit('error', e));
51
- decodedStream.on('error', e => outStream.emit('error', e));
52
- decodedStream.pipe(outStream);
53
- return outStream;
54
- }
55
- export { packFileBoxChunkToPb, unpackFileBoxChunkFromPb, };
56
- //# sourceMappingURL=chunk-pb.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunk-pb.js","sourceRoot":"","sources":["../../../../src/deprecated/chunk-pb.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAIpC;;;GAGG;AACH,MAAM,OAAO,GAAG,CACd,aAA2B,EAC3B,EAAE,CAAC,IAAI,SAAS,CAAyB;IACzC,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,CAAC,KAA0B,EAAE,CAAM,EAAE,QAAgD,EAAE,EAAE;QAClG,MAAM,OAAO,GAAG,IAAI,aAAa,EAAE,CAAA;QACnC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACzB,CAAC;CACF,CAAC,CAAA;AAEF;;GAEG;AACH,SAAS,oBAAoB,CAC3B,aAA2B;IAE3B,OAAO,CAAC,MAAqC,EAAe,EAAE;QAC5D,MAAM,SAAS,GAAO,IAAI,WAAW,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAA;QAEzD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAS,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;QAE1D,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,GAAG,GAAwB,EAAE,CAAC,IAAI,SAAS,CAAyB;IAC/E,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,CAAC,KAAQ,EAAE,CAAM,EAAE,QAAmE,EAAE,EAAE;QACnG,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,EAAE,CAAA;QAC5C,IAAI,CAAC,YAAY,EAAE;YACjB,QAAQ,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAA;SACvC;aAAM;YACL,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;SAC7B;IACH,CAAC;CACF,CAAC,CAAA;AAEF;;GAEG;AACH,SAAS,wBAAwB,CAC/B,MAAmB;IAEnB,MAAM,SAAS,GAAO,IAAI,WAAW,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IAE5C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAS,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAE1D,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7B,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,OAAO,EACL,oBAAoB,EACpB,wBAAwB,GACzB,CAAA"}
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
- export {};
3
- //# sourceMappingURL=chunk-pb.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunk-pb.spec.d.ts","sourceRoot":"","sources":["../../../../src/deprecated/chunk-pb.spec.ts"],"names":[],"mappings":""}
@@ -1,142 +0,0 @@
1
- #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
- import { test } from 'tstest';
3
- import { PassThrough } from 'stream';
4
- import { FileBox } from 'file-box';
5
- import { puppet, } from '@juzi/wechaty-grpc';
6
- import { unpackFileBoxFromChunk, packFileBoxToChunk, } from './file-box-chunk.js';
7
- import { unpackFileBoxChunkFromPb, packFileBoxChunkToPb, } from './chunk-pb.js';
8
- test('packFileBoxChunk()', async (t) => {
9
- const FILE_BOX_DATA = 'test';
10
- const FILE_BOX_NAME = 'test.dat';
11
- const fileBox = FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
12
- const chunkStream = await packFileBoxToChunk(fileBox);
13
- const pbStream = await packFileBoxChunkToPb(puppet.MessageFileStreamResponse)(chunkStream);
14
- let name = '';
15
- let buffer = '';
16
- pbStream.on('data', (data) => {
17
- if (data.hasFileBoxChunk()) {
18
- const fileBoxChunk = data.getFileBoxChunk();
19
- if (fileBoxChunk.hasData()) {
20
- buffer += fileBoxChunk.getData();
21
- }
22
- else if (fileBoxChunk.hasName()) {
23
- name = fileBoxChunk.getName();
24
- }
25
- }
26
- });
27
- await new Promise(resolve => chunkStream.on('end', resolve));
28
- t.equal(name, FILE_BOX_NAME, 'should get file box name');
29
- t.equal(buffer, FILE_BOX_DATA, 'should get file box data');
30
- });
31
- test('unpackFileBoxChunkFromPb()', async (t) => {
32
- const FILE_BOX_DATA = 'test';
33
- const FILE_BOX_NAME = 'test.dat';
34
- const fileBox = FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
35
- const chunkStream = await packFileBoxToChunk(fileBox);
36
- const request = new puppet.MessageSendFileStreamRequest();
37
- const packedStream = new PassThrough({ objectMode: true });
38
- chunkStream.on('data', (data) => {
39
- request.setFileBoxChunk(data);
40
- packedStream.write(request);
41
- }).on('end', () => {
42
- packedStream.end();
43
- });
44
- const outputChunkStream = unpackFileBoxChunkFromPb(packedStream);
45
- const outputFileBox = await unpackFileBoxFromChunk(outputChunkStream);
46
- t.equal((await outputFileBox.toBuffer()).toString(), FILE_BOX_DATA, 'should get file box data');
47
- });
48
- test('packFileBoxChunk() <-> unpackFileBoxChunkFromPb()', async (t) => {
49
- const FILE_BOX_DATA = 'test';
50
- const FILE_BOX_NAME = 'test.dat';
51
- const fileBox = FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
52
- const chunkStream = await packFileBoxToChunk(fileBox);
53
- const packedStream = packFileBoxChunkToPb(puppet.MessageFileStreamResponse)(chunkStream);
54
- const unpackedStream = unpackFileBoxChunkFromPb(packedStream);
55
- const restoredBox = await unpackFileBoxFromChunk(unpackedStream);
56
- t.equal(fileBox.name, restoredBox.name, 'should be same name');
57
- const EXPECTED_BASE64 = await fileBox.toBase64();
58
- const actualBase64 = await restoredBox.toBase64();
59
- t.equal(EXPECTED_BASE64, actualBase64, 'should be same content');
60
- });
61
- test('packFileBoxChunk(): should not throw if no read on the stream', async (t) => {
62
- t.plan(1);
63
- const stream = await getTestChunkStream({});
64
- let outStream;
65
- try {
66
- outStream = packFileBoxChunkToPb(puppet.MessageFileStreamResponse)(stream);
67
- }
68
- catch (e) {
69
- t.ok(e.message);
70
- return;
71
- }
72
- outStream.on('error', _ => { });
73
- t.pass();
74
- });
75
- test('packFileBoxChunk(): should emit error in the output stream', async (t) => {
76
- const EXPECTED_MESSAGE = 'test emit error';
77
- const stream = await getTestChunkStream({ errorMessage: EXPECTED_MESSAGE });
78
- const outStream = packFileBoxChunkToPb(puppet.MessageFileStreamResponse)(stream);
79
- const error = await new Promise(resolve => outStream.on('error', resolve));
80
- // await new Promise(resolve => outStream.on('end', resolve))
81
- t.equal(error.message, EXPECTED_MESSAGE, 'should emit error message');
82
- });
83
- test('unpackFileBoxChunkFromPb(): should not throw if no read on the stream', async (t) => {
84
- t.plan(1);
85
- const stream = await getTestPackedStream({});
86
- let outStream;
87
- try {
88
- outStream = unpackFileBoxChunkFromPb(stream);
89
- t.pass('should no rejection');
90
- }
91
- catch (e) {
92
- t.fail(e.message);
93
- return;
94
- }
95
- outStream.on('error', _ => { });
96
- });
97
- test('unpackFileBoxChunkFromPb(): should emit error in the output stream', async (t) => {
98
- const errorMessage = 'test emit error';
99
- const stream = await getTestPackedStream({ errorMessage });
100
- const outStream = packFileBoxChunkToPb(puppet.MessageFileStreamResponse)(stream);
101
- try {
102
- await new Promise((resolve, reject) => {
103
- outStream.on('error', reject);
104
- outStream.on('end', resolve);
105
- });
106
- t.fail('should reject the promise');
107
- }
108
- catch (e) {
109
- t.equal(e.message, errorMessage, 'should get the expected rejection error message');
110
- }
111
- });
112
- async function getTestChunkStream(options) {
113
- const { errorMessage } = options;
114
- const FILE_BOX_DATA = 'test';
115
- const FILE_BOX_NAME = 'test.dat';
116
- const fileBox = FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
117
- const chunkStream = await packFileBoxToChunk(fileBox);
118
- setImmediate(() => {
119
- chunkStream.emit('error', new Error(errorMessage));
120
- });
121
- return chunkStream;
122
- }
123
- async function getTestPackedStream(options) {
124
- const { errorMessage } = options;
125
- const FILE_BOX_DATA = 'test';
126
- const FILE_BOX_NAME = 'test.dat';
127
- const fileBox = FileBox.fromBuffer(Buffer.from(FILE_BOX_DATA), FILE_BOX_NAME);
128
- const chunkStream = await packFileBoxToChunk(fileBox);
129
- const packedStream = new PassThrough({ objectMode: true });
130
- chunkStream.on('data', d => {
131
- const packedChunk = new puppet.MessageFileStreamResponse();
132
- packedChunk.setFileBoxChunk(d);
133
- packedStream.write(packedChunk);
134
- }).on('error', e => {
135
- packedStream.emit('error', e);
136
- });
137
- setImmediate(() => {
138
- chunkStream.emit('error', new Error(errorMessage));
139
- });
140
- return packedStream;
141
- }
142
- //# sourceMappingURL=chunk-pb.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunk-pb.spec.js","sourceRoot":"","sources":["../../../../src/deprecated/chunk-pb.spec.ts"],"names":[],"mappings":"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"}