protobufjs 7.3.2 → 7.4.0

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 (77) hide show
  1. package/LICENSE +39 -39
  2. package/README.md +727 -727
  3. package/dist/light/protobuf.js +6259 -6259
  4. package/dist/light/protobuf.js.map +1 -1
  5. package/dist/light/protobuf.min.js +2 -2
  6. package/dist/light/protobuf.min.js.map +1 -1
  7. package/dist/minimal/protobuf.js +1930 -1930
  8. package/dist/minimal/protobuf.js.map +1 -1
  9. package/dist/minimal/protobuf.min.js +2 -2
  10. package/dist/minimal/protobuf.min.js.map +1 -1
  11. package/dist/protobuf.js +7972 -7968
  12. package/dist/protobuf.js.map +1 -1
  13. package/dist/protobuf.min.js +3 -3
  14. package/dist/protobuf.min.js.map +1 -1
  15. package/ext/debug/README.md +4 -4
  16. package/ext/debug/index.js +71 -71
  17. package/ext/descriptor/README.md +72 -72
  18. package/ext/descriptor/index.d.ts +191 -191
  19. package/ext/descriptor/index.js +1052 -1052
  20. package/ext/descriptor/test.js +54 -54
  21. package/google/LICENSE +27 -27
  22. package/google/README.md +1 -1
  23. package/google/api/annotations.json +82 -82
  24. package/google/api/annotations.proto +10 -10
  25. package/google/api/http.json +85 -85
  26. package/google/api/http.proto +30 -30
  27. package/google/protobuf/api.json +117 -117
  28. package/google/protobuf/api.proto +33 -33
  29. package/google/protobuf/descriptor.json +738 -738
  30. package/google/protobuf/descriptor.proto +286 -286
  31. package/google/protobuf/source_context.json +19 -19
  32. package/google/protobuf/source_context.proto +7 -7
  33. package/google/protobuf/type.json +201 -201
  34. package/google/protobuf/type.proto +89 -89
  35. package/index.d.ts +2741 -2741
  36. package/index.js +4 -4
  37. package/light.d.ts +2 -2
  38. package/light.js +3 -3
  39. package/minimal.d.ts +2 -2
  40. package/minimal.js +4 -4
  41. package/package.json +112 -111
  42. package/scripts/postinstall.js +32 -32
  43. package/src/common.js +399 -399
  44. package/src/converter.js +301 -301
  45. package/src/decoder.js +129 -129
  46. package/src/encoder.js +100 -100
  47. package/src/enum.js +198 -198
  48. package/src/field.js +377 -377
  49. package/src/index-light.js +104 -104
  50. package/src/index-minimal.js +36 -36
  51. package/src/index.js +12 -12
  52. package/src/mapfield.js +126 -126
  53. package/src/message.js +138 -138
  54. package/src/method.js +160 -160
  55. package/src/namespace.js +433 -433
  56. package/src/object.js +243 -243
  57. package/src/oneof.js +203 -203
  58. package/src/parse.js +893 -889
  59. package/src/reader.js +416 -416
  60. package/src/reader_buffer.js +51 -51
  61. package/src/root.js +368 -368
  62. package/src/roots.js +18 -18
  63. package/src/rpc/service.js +142 -142
  64. package/src/rpc.js +36 -36
  65. package/src/service.js +167 -167
  66. package/src/tokenize.js +416 -416
  67. package/src/type.js +589 -589
  68. package/src/types.js +196 -196
  69. package/src/typescript.jsdoc +15 -15
  70. package/src/util/longbits.js +200 -200
  71. package/src/util/minimal.js +438 -438
  72. package/src/util.js +212 -212
  73. package/src/verifier.js +176 -176
  74. package/src/wrappers.js +102 -102
  75. package/src/writer.js +465 -465
  76. package/src/writer_buffer.js +85 -85
  77. package/tsconfig.json +7 -7
package/src/decoder.js CHANGED
@@ -1,129 +1,129 @@
1
- "use strict";
2
- module.exports = decoder;
3
-
4
- var Enum = require("./enum"),
5
- types = require("./types"),
6
- util = require("./util");
7
-
8
- function missing(field) {
9
- return "missing required '" + field.name + "'";
10
- }
11
-
12
- /**
13
- * Generates a decoder specific to the specified message type.
14
- * @param {Type} mtype Message type
15
- * @returns {Codegen} Codegen instance
16
- */
17
- function decoder(mtype) {
18
- /* eslint-disable no-unexpected-multiline */
19
- var gen = util.codegen(["r", "l"], mtype.name + "$decode")
20
- ("if(!(r instanceof Reader))")
21
- ("r=Reader.create(r)")
22
- ("var c=l===undefined?r.len:r.pos+l,m=new this.ctor" + (mtype.fieldsArray.filter(function(field) { return field.map; }).length ? ",k,value" : ""))
23
- ("while(r.pos<c){")
24
- ("var t=r.uint32()");
25
- if (mtype.group) gen
26
- ("if((t&7)===4)")
27
- ("break");
28
- gen
29
- ("switch(t>>>3){");
30
-
31
- var i = 0;
32
- for (; i < /* initializes */ mtype.fieldsArray.length; ++i) {
33
- var field = mtype._fieldsArray[i].resolve(),
34
- type = field.resolvedType instanceof Enum ? "int32" : field.type,
35
- ref = "m" + util.safeProp(field.name); gen
36
- ("case %i: {", field.id);
37
-
38
- // Map fields
39
- if (field.map) { gen
40
- ("if(%s===util.emptyObject)", ref)
41
- ("%s={}", ref)
42
- ("var c2 = r.uint32()+r.pos");
43
-
44
- if (types.defaults[field.keyType] !== undefined) gen
45
- ("k=%j", types.defaults[field.keyType]);
46
- else gen
47
- ("k=null");
48
-
49
- if (types.defaults[type] !== undefined) gen
50
- ("value=%j", types.defaults[type]);
51
- else gen
52
- ("value=null");
53
-
54
- gen
55
- ("while(r.pos<c2){")
56
- ("var tag2=r.uint32()")
57
- ("switch(tag2>>>3){")
58
- ("case 1: k=r.%s(); break", field.keyType)
59
- ("case 2:");
60
-
61
- if (types.basic[type] === undefined) gen
62
- ("value=types[%i].decode(r,r.uint32())", i); // can't be groups
63
- else gen
64
- ("value=r.%s()", type);
65
-
66
- gen
67
- ("break")
68
- ("default:")
69
- ("r.skipType(tag2&7)")
70
- ("break")
71
- ("}")
72
- ("}");
73
-
74
- if (types.long[field.keyType] !== undefined) gen
75
- ("%s[typeof k===\"object\"?util.longToHash(k):k]=value", ref);
76
- else gen
77
- ("%s[k]=value", ref);
78
-
79
- // Repeated fields
80
- } else if (field.repeated) { gen
81
-
82
- ("if(!(%s&&%s.length))", ref, ref)
83
- ("%s=[]", ref);
84
-
85
- // Packable (always check for forward and backward compatiblity)
86
- if (types.packed[type] !== undefined) gen
87
- ("if((t&7)===2){")
88
- ("var c2=r.uint32()+r.pos")
89
- ("while(r.pos<c2)")
90
- ("%s.push(r.%s())", ref, type)
91
- ("}else");
92
-
93
- // Non-packed
94
- if (types.basic[type] === undefined) gen(field.resolvedType.group
95
- ? "%s.push(types[%i].decode(r))"
96
- : "%s.push(types[%i].decode(r,r.uint32()))", ref, i);
97
- else gen
98
- ("%s.push(r.%s())", ref, type);
99
-
100
- // Non-repeated
101
- } else if (types.basic[type] === undefined) gen(field.resolvedType.group
102
- ? "%s=types[%i].decode(r)"
103
- : "%s=types[%i].decode(r,r.uint32())", ref, i);
104
- else gen
105
- ("%s=r.%s()", ref, type);
106
- gen
107
- ("break")
108
- ("}");
109
- // Unknown fields
110
- } gen
111
- ("default:")
112
- ("r.skipType(t&7)")
113
- ("break")
114
-
115
- ("}")
116
- ("}");
117
-
118
- // Field presence
119
- for (i = 0; i < mtype._fieldsArray.length; ++i) {
120
- var rfield = mtype._fieldsArray[i];
121
- if (rfield.required) gen
122
- ("if(!m.hasOwnProperty(%j))", rfield.name)
123
- ("throw util.ProtocolError(%j,{instance:m})", missing(rfield));
124
- }
125
-
126
- return gen
127
- ("return m");
128
- /* eslint-enable no-unexpected-multiline */
129
- }
1
+ "use strict";
2
+ module.exports = decoder;
3
+
4
+ var Enum = require("./enum"),
5
+ types = require("./types"),
6
+ util = require("./util");
7
+
8
+ function missing(field) {
9
+ return "missing required '" + field.name + "'";
10
+ }
11
+
12
+ /**
13
+ * Generates a decoder specific to the specified message type.
14
+ * @param {Type} mtype Message type
15
+ * @returns {Codegen} Codegen instance
16
+ */
17
+ function decoder(mtype) {
18
+ /* eslint-disable no-unexpected-multiline */
19
+ var gen = util.codegen(["r", "l"], mtype.name + "$decode")
20
+ ("if(!(r instanceof Reader))")
21
+ ("r=Reader.create(r)")
22
+ ("var c=l===undefined?r.len:r.pos+l,m=new this.ctor" + (mtype.fieldsArray.filter(function(field) { return field.map; }).length ? ",k,value" : ""))
23
+ ("while(r.pos<c){")
24
+ ("var t=r.uint32()");
25
+ if (mtype.group) gen
26
+ ("if((t&7)===4)")
27
+ ("break");
28
+ gen
29
+ ("switch(t>>>3){");
30
+
31
+ var i = 0;
32
+ for (; i < /* initializes */ mtype.fieldsArray.length; ++i) {
33
+ var field = mtype._fieldsArray[i].resolve(),
34
+ type = field.resolvedType instanceof Enum ? "int32" : field.type,
35
+ ref = "m" + util.safeProp(field.name); gen
36
+ ("case %i: {", field.id);
37
+
38
+ // Map fields
39
+ if (field.map) { gen
40
+ ("if(%s===util.emptyObject)", ref)
41
+ ("%s={}", ref)
42
+ ("var c2 = r.uint32()+r.pos");
43
+
44
+ if (types.defaults[field.keyType] !== undefined) gen
45
+ ("k=%j", types.defaults[field.keyType]);
46
+ else gen
47
+ ("k=null");
48
+
49
+ if (types.defaults[type] !== undefined) gen
50
+ ("value=%j", types.defaults[type]);
51
+ else gen
52
+ ("value=null");
53
+
54
+ gen
55
+ ("while(r.pos<c2){")
56
+ ("var tag2=r.uint32()")
57
+ ("switch(tag2>>>3){")
58
+ ("case 1: k=r.%s(); break", field.keyType)
59
+ ("case 2:");
60
+
61
+ if (types.basic[type] === undefined) gen
62
+ ("value=types[%i].decode(r,r.uint32())", i); // can't be groups
63
+ else gen
64
+ ("value=r.%s()", type);
65
+
66
+ gen
67
+ ("break")
68
+ ("default:")
69
+ ("r.skipType(tag2&7)")
70
+ ("break")
71
+ ("}")
72
+ ("}");
73
+
74
+ if (types.long[field.keyType] !== undefined) gen
75
+ ("%s[typeof k===\"object\"?util.longToHash(k):k]=value", ref);
76
+ else gen
77
+ ("%s[k]=value", ref);
78
+
79
+ // Repeated fields
80
+ } else if (field.repeated) { gen
81
+
82
+ ("if(!(%s&&%s.length))", ref, ref)
83
+ ("%s=[]", ref);
84
+
85
+ // Packable (always check for forward and backward compatiblity)
86
+ if (types.packed[type] !== undefined) gen
87
+ ("if((t&7)===2){")
88
+ ("var c2=r.uint32()+r.pos")
89
+ ("while(r.pos<c2)")
90
+ ("%s.push(r.%s())", ref, type)
91
+ ("}else");
92
+
93
+ // Non-packed
94
+ if (types.basic[type] === undefined) gen(field.resolvedType.group
95
+ ? "%s.push(types[%i].decode(r))"
96
+ : "%s.push(types[%i].decode(r,r.uint32()))", ref, i);
97
+ else gen
98
+ ("%s.push(r.%s())", ref, type);
99
+
100
+ // Non-repeated
101
+ } else if (types.basic[type] === undefined) gen(field.resolvedType.group
102
+ ? "%s=types[%i].decode(r)"
103
+ : "%s=types[%i].decode(r,r.uint32())", ref, i);
104
+ else gen
105
+ ("%s=r.%s()", ref, type);
106
+ gen
107
+ ("break")
108
+ ("}");
109
+ // Unknown fields
110
+ } gen
111
+ ("default:")
112
+ ("r.skipType(t&7)")
113
+ ("break")
114
+
115
+ ("}")
116
+ ("}");
117
+
118
+ // Field presence
119
+ for (i = 0; i < mtype._fieldsArray.length; ++i) {
120
+ var rfield = mtype._fieldsArray[i];
121
+ if (rfield.required) gen
122
+ ("if(!m.hasOwnProperty(%j))", rfield.name)
123
+ ("throw util.ProtocolError(%j,{instance:m})", missing(rfield));
124
+ }
125
+
126
+ return gen
127
+ ("return m");
128
+ /* eslint-enable no-unexpected-multiline */
129
+ }
package/src/encoder.js CHANGED
@@ -1,100 +1,100 @@
1
- "use strict";
2
- module.exports = encoder;
3
-
4
- var Enum = require("./enum"),
5
- types = require("./types"),
6
- util = require("./util");
7
-
8
- /**
9
- * Generates a partial message type encoder.
10
- * @param {Codegen} gen Codegen instance
11
- * @param {Field} field Reflected field
12
- * @param {number} fieldIndex Field index
13
- * @param {string} ref Variable reference
14
- * @returns {Codegen} Codegen instance
15
- * @ignore
16
- */
17
- function genTypePartial(gen, field, fieldIndex, ref) {
18
- return field.resolvedType.group
19
- ? gen("types[%i].encode(%s,w.uint32(%i)).uint32(%i)", fieldIndex, ref, (field.id << 3 | 3) >>> 0, (field.id << 3 | 4) >>> 0)
20
- : gen("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()", fieldIndex, ref, (field.id << 3 | 2) >>> 0);
21
- }
22
-
23
- /**
24
- * Generates an encoder specific to the specified message type.
25
- * @param {Type} mtype Message type
26
- * @returns {Codegen} Codegen instance
27
- */
28
- function encoder(mtype) {
29
- /* eslint-disable no-unexpected-multiline, block-scoped-var, no-redeclare */
30
- var gen = util.codegen(["m", "w"], mtype.name + "$encode")
31
- ("if(!w)")
32
- ("w=Writer.create()");
33
-
34
- var i, ref;
35
-
36
- // "when a message is serialized its known fields should be written sequentially by field number"
37
- var fields = /* initializes */ mtype.fieldsArray.slice().sort(util.compareFieldsById);
38
-
39
- for (var i = 0; i < fields.length; ++i) {
40
- var field = fields[i].resolve(),
41
- index = mtype._fieldsArray.indexOf(field),
42
- type = field.resolvedType instanceof Enum ? "int32" : field.type,
43
- wireType = types.basic[type];
44
- ref = "m" + util.safeProp(field.name);
45
-
46
- // Map fields
47
- if (field.map) {
48
- gen
49
- ("if(%s!=null&&Object.hasOwnProperty.call(m,%j)){", ref, field.name) // !== undefined && !== null
50
- ("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){", ref)
51
- ("w.uint32(%i).fork().uint32(%i).%s(ks[i])", (field.id << 3 | 2) >>> 0, 8 | types.mapKey[field.keyType], field.keyType);
52
- if (wireType === undefined) gen
53
- ("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()", index, ref); // can't be groups
54
- else gen
55
- (".uint32(%i).%s(%s[ks[i]]).ldelim()", 16 | wireType, type, ref);
56
- gen
57
- ("}")
58
- ("}");
59
-
60
- // Repeated fields
61
- } else if (field.repeated) { gen
62
- ("if(%s!=null&&%s.length){", ref, ref); // !== undefined && !== null
63
-
64
- // Packed repeated
65
- if (field.packed && types.packed[type] !== undefined) { gen
66
-
67
- ("w.uint32(%i).fork()", (field.id << 3 | 2) >>> 0)
68
- ("for(var i=0;i<%s.length;++i)", ref)
69
- ("w.%s(%s[i])", type, ref)
70
- ("w.ldelim()");
71
-
72
- // Non-packed
73
- } else { gen
74
-
75
- ("for(var i=0;i<%s.length;++i)", ref);
76
- if (wireType === undefined)
77
- genTypePartial(gen, field, index, ref + "[i]");
78
- else gen
79
- ("w.uint32(%i).%s(%s[i])", (field.id << 3 | wireType) >>> 0, type, ref);
80
-
81
- } gen
82
- ("}");
83
-
84
- // Non-repeated
85
- } else {
86
- if (field.optional) gen
87
- ("if(%s!=null&&Object.hasOwnProperty.call(m,%j))", ref, field.name); // !== undefined && !== null
88
-
89
- if (wireType === undefined)
90
- genTypePartial(gen, field, index, ref);
91
- else gen
92
- ("w.uint32(%i).%s(%s)", (field.id << 3 | wireType) >>> 0, type, ref);
93
-
94
- }
95
- }
96
-
97
- return gen
98
- ("return w");
99
- /* eslint-enable no-unexpected-multiline, block-scoped-var, no-redeclare */
100
- }
1
+ "use strict";
2
+ module.exports = encoder;
3
+
4
+ var Enum = require("./enum"),
5
+ types = require("./types"),
6
+ util = require("./util");
7
+
8
+ /**
9
+ * Generates a partial message type encoder.
10
+ * @param {Codegen} gen Codegen instance
11
+ * @param {Field} field Reflected field
12
+ * @param {number} fieldIndex Field index
13
+ * @param {string} ref Variable reference
14
+ * @returns {Codegen} Codegen instance
15
+ * @ignore
16
+ */
17
+ function genTypePartial(gen, field, fieldIndex, ref) {
18
+ return field.resolvedType.group
19
+ ? gen("types[%i].encode(%s,w.uint32(%i)).uint32(%i)", fieldIndex, ref, (field.id << 3 | 3) >>> 0, (field.id << 3 | 4) >>> 0)
20
+ : gen("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()", fieldIndex, ref, (field.id << 3 | 2) >>> 0);
21
+ }
22
+
23
+ /**
24
+ * Generates an encoder specific to the specified message type.
25
+ * @param {Type} mtype Message type
26
+ * @returns {Codegen} Codegen instance
27
+ */
28
+ function encoder(mtype) {
29
+ /* eslint-disable no-unexpected-multiline, block-scoped-var, no-redeclare */
30
+ var gen = util.codegen(["m", "w"], mtype.name + "$encode")
31
+ ("if(!w)")
32
+ ("w=Writer.create()");
33
+
34
+ var i, ref;
35
+
36
+ // "when a message is serialized its known fields should be written sequentially by field number"
37
+ var fields = /* initializes */ mtype.fieldsArray.slice().sort(util.compareFieldsById);
38
+
39
+ for (var i = 0; i < fields.length; ++i) {
40
+ var field = fields[i].resolve(),
41
+ index = mtype._fieldsArray.indexOf(field),
42
+ type = field.resolvedType instanceof Enum ? "int32" : field.type,
43
+ wireType = types.basic[type];
44
+ ref = "m" + util.safeProp(field.name);
45
+
46
+ // Map fields
47
+ if (field.map) {
48
+ gen
49
+ ("if(%s!=null&&Object.hasOwnProperty.call(m,%j)){", ref, field.name) // !== undefined && !== null
50
+ ("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){", ref)
51
+ ("w.uint32(%i).fork().uint32(%i).%s(ks[i])", (field.id << 3 | 2) >>> 0, 8 | types.mapKey[field.keyType], field.keyType);
52
+ if (wireType === undefined) gen
53
+ ("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()", index, ref); // can't be groups
54
+ else gen
55
+ (".uint32(%i).%s(%s[ks[i]]).ldelim()", 16 | wireType, type, ref);
56
+ gen
57
+ ("}")
58
+ ("}");
59
+
60
+ // Repeated fields
61
+ } else if (field.repeated) { gen
62
+ ("if(%s!=null&&%s.length){", ref, ref); // !== undefined && !== null
63
+
64
+ // Packed repeated
65
+ if (field.packed && types.packed[type] !== undefined) { gen
66
+
67
+ ("w.uint32(%i).fork()", (field.id << 3 | 2) >>> 0)
68
+ ("for(var i=0;i<%s.length;++i)", ref)
69
+ ("w.%s(%s[i])", type, ref)
70
+ ("w.ldelim()");
71
+
72
+ // Non-packed
73
+ } else { gen
74
+
75
+ ("for(var i=0;i<%s.length;++i)", ref);
76
+ if (wireType === undefined)
77
+ genTypePartial(gen, field, index, ref + "[i]");
78
+ else gen
79
+ ("w.uint32(%i).%s(%s[i])", (field.id << 3 | wireType) >>> 0, type, ref);
80
+
81
+ } gen
82
+ ("}");
83
+
84
+ // Non-repeated
85
+ } else {
86
+ if (field.optional) gen
87
+ ("if(%s!=null&&Object.hasOwnProperty.call(m,%j))", ref, field.name); // !== undefined && !== null
88
+
89
+ if (wireType === undefined)
90
+ genTypePartial(gen, field, index, ref);
91
+ else gen
92
+ ("w.uint32(%i).%s(%s)", (field.id << 3 | wireType) >>> 0, type, ref);
93
+
94
+ }
95
+ }
96
+
97
+ return gen
98
+ ("return w");
99
+ /* eslint-enable no-unexpected-multiline, block-scoped-var, no-redeclare */
100
+ }