protobufjs 8.6.1 → 8.6.2

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 (105) hide show
  1. package/LICENSE +39 -39
  2. package/README.md +441 -441
  3. package/dist/light/protobuf.js +8455 -8455
  4. package/dist/light/protobuf.js.map +1 -1
  5. package/dist/light/protobuf.min.js +3 -3
  6. package/dist/light/protobuf.min.js.map +1 -1
  7. package/dist/minimal/protobuf.js +2999 -2999
  8. package/dist/minimal/protobuf.js.map +1 -1
  9. package/dist/minimal/protobuf.min.js +3 -3
  10. package/dist/minimal/protobuf.min.js.map +1 -1
  11. package/dist/protobuf.js +10359 -10359
  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/README.md +70 -70
  16. package/ext/debug/README.md +4 -4
  17. package/ext/debug/index.js +71 -71
  18. package/ext/descriptor/README.md +5 -5
  19. package/ext/descriptor/index.d.ts +2 -2
  20. package/ext/descriptor/index.js +2 -2
  21. package/ext/descriptor.d.ts +87 -87
  22. package/ext/descriptor.js +1354 -1354
  23. package/ext/protojson.LICENSE +201 -201
  24. package/ext/protojson.d.ts +20 -20
  25. package/ext/protojson.js +925 -925
  26. package/ext/textformat.d.ts +19 -19
  27. package/ext/textformat.js +1256 -1256
  28. package/google/LICENSE +27 -27
  29. package/google/README.md +1 -1
  30. package/google/api/annotations.json +82 -82
  31. package/google/api/annotations.proto +10 -10
  32. package/google/api/http.json +85 -85
  33. package/google/api/http.proto +30 -30
  34. package/google/protobuf/api.json +117 -117
  35. package/google/protobuf/api.proto +33 -33
  36. package/google/protobuf/compiler/plugin.json +126 -126
  37. package/google/protobuf/compiler/plugin.proto +47 -47
  38. package/google/protobuf/descriptor.json +1381 -1381
  39. package/google/protobuf/descriptor.proto +534 -534
  40. package/google/protobuf/source_context.json +19 -19
  41. package/google/protobuf/source_context.proto +7 -7
  42. package/google/protobuf/type.json +201 -201
  43. package/google/protobuf/type.proto +89 -89
  44. package/index.d.ts +1 -1
  45. package/index.js +4 -4
  46. package/light.d.ts +2 -2
  47. package/light.js +3 -3
  48. package/minimal.d.ts +2 -2
  49. package/minimal.js +4 -4
  50. package/package.json +93 -93
  51. package/src/common.js +399 -399
  52. package/src/converter.js +344 -344
  53. package/src/decoder.js +208 -208
  54. package/src/encoder.js +111 -111
  55. package/src/enum.js +231 -231
  56. package/src/field.js +497 -497
  57. package/src/index-light.js +104 -104
  58. package/src/index-minimal.js +36 -36
  59. package/src/index.js +12 -12
  60. package/src/mapfield.js +136 -136
  61. package/src/message.js +137 -137
  62. package/src/method.js +175 -175
  63. package/src/namespace.js +565 -565
  64. package/src/object.js +382 -382
  65. package/src/oneof.js +225 -225
  66. package/src/parse.js +1068 -1068
  67. package/src/reader.js +543 -543
  68. package/src/reader_buffer.js +72 -72
  69. package/src/root.js +416 -416
  70. package/src/roots.js +18 -18
  71. package/src/rpc/service.js +148 -148
  72. package/src/rpc.js +36 -36
  73. package/src/service.js +198 -198
  74. package/src/tokenize.js +421 -421
  75. package/src/type.js +655 -655
  76. package/src/types.js +196 -196
  77. package/src/typescript.js +25 -25
  78. package/src/util/aspromise.d.ts +13 -13
  79. package/src/util/aspromise.js +52 -52
  80. package/src/util/base64.d.ts +32 -32
  81. package/src/util/base64.js +146 -146
  82. package/src/util/codegen.d.ts +31 -31
  83. package/src/util/codegen.js +113 -113
  84. package/src/util/eventemitter.d.ts +45 -45
  85. package/src/util/eventemitter.js +86 -86
  86. package/src/util/fetch.d.ts +56 -56
  87. package/src/util/fetch.js +112 -112
  88. package/src/util/float.d.ts +83 -83
  89. package/src/util/float.js +335 -335
  90. package/src/util/fs.js +11 -11
  91. package/src/util/longbits.js +200 -200
  92. package/src/util/minimal.js +515 -515
  93. package/src/util/path.d.ts +22 -22
  94. package/src/util/path.js +72 -72
  95. package/src/util/patterns.js +7 -7
  96. package/src/util/pool.d.ts +32 -32
  97. package/src/util/pool.js +48 -48
  98. package/src/util/utf8.d.ts +24 -24
  99. package/src/util/utf8.js +130 -130
  100. package/src/util.js +242 -242
  101. package/src/verifier.js +180 -180
  102. package/src/wrappers.js +106 -106
  103. package/src/writer.js +495 -495
  104. package/src/writer_buffer.js +102 -102
  105. package/tsconfig.json +6 -6
package/src/oneof.js CHANGED
@@ -1,225 +1,225 @@
1
- "use strict";
2
- module.exports = OneOf;
3
-
4
- // extends ReflectionObject
5
- var ReflectionObject = require("./object");
6
- ((OneOf.prototype = Object.create(ReflectionObject.prototype)).constructor = OneOf).className = "OneOf";
7
-
8
- var Field = require("./field"),
9
- util = require("./util");
10
-
11
- /**
12
- * Constructs a new oneof instance.
13
- * @classdesc Reflected oneof.
14
- * @extends ReflectionObject
15
- * @constructor
16
- * @param {string} name Oneof name
17
- * @param {string[]|Object.<string,*>} [fieldNames] Field names
18
- * @param {Object.<string,*>} [options] Declared options
19
- * @param {string} [comment] Comment associated with this field
20
- */
21
- function OneOf(name, fieldNames, options, comment) {
22
- if (!Array.isArray(fieldNames)) {
23
- options = fieldNames;
24
- fieldNames = undefined;
25
- }
26
- ReflectionObject.call(this, name, options);
27
-
28
- /* istanbul ignore if */
29
- if (!(fieldNames === undefined || Array.isArray(fieldNames)))
30
- throw TypeError("fieldNames must be an Array");
31
-
32
- /**
33
- * Field names that belong to this oneof.
34
- * @type {string[]}
35
- */
36
- this.oneof = fieldNames || []; // toJSON, marker
37
-
38
- /**
39
- * Fields that belong to this oneof as an array for iteration.
40
- * @type {Field[]}
41
- * @readonly
42
- */
43
- this.fieldsArray = []; // declared readonly for conformance, possibly not yet added to parent
44
-
45
- /**
46
- * Comment for this field.
47
- * @type {string|null}
48
- */
49
- this.comment = comment;
50
- }
51
-
52
- /**
53
- * Oneof descriptor.
54
- * @interface IOneOf
55
- * @property {Array.<string>} oneof Oneof field names
56
- * @property {Object.<string,*>} [options] Oneof options
57
- * @property {string|null} [comment] Oneof comment
58
- */
59
-
60
- /**
61
- * Constructs a oneof from a oneof descriptor.
62
- * @param {string} name Oneof name
63
- * @param {IOneOf} json Oneof descriptor
64
- * @returns {OneOf} Created oneof
65
- * @throws {TypeError} If arguments are invalid
66
- */
67
- OneOf.fromJSON = function fromJSON(name, json) {
68
- return new OneOf(name, json.oneof, json.options, json.comment);
69
- };
70
-
71
- /**
72
- * Converts this oneof to a oneof descriptor.
73
- * @param {IToJSONOptions} [toJSONOptions] JSON conversion options
74
- * @returns {IOneOf} Oneof descriptor
75
- */
76
- OneOf.prototype.toJSON = function toJSON(toJSONOptions) {
77
- var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false;
78
- return util.toObject([
79
- "options" , this.options,
80
- "oneof" , this.oneof,
81
- "comment" , keepComments ? this.comment : undefined
82
- ]);
83
- };
84
-
85
- /**
86
- * Adds the fields of the specified oneof to the parent if not already done so.
87
- * @param {OneOf} oneof The oneof
88
- * @returns {undefined}
89
- * @inner
90
- * @ignore
91
- */
92
- function addFieldsToParent(oneof) {
93
- if (oneof.parent)
94
- for (var i = 0; i < oneof.fieldsArray.length; ++i)
95
- if (!oneof.fieldsArray[i].parent)
96
- oneof.parent.add(oneof.fieldsArray[i]);
97
- }
98
-
99
- /**
100
- * Adds a field to this oneof and removes it from its current parent, if any.
101
- * @param {Field} field Field to add
102
- * @returns {OneOf} `this`
103
- */
104
- OneOf.prototype.add = function add(field) {
105
-
106
- /* istanbul ignore if */
107
- if (!(field instanceof Field))
108
- throw TypeError("field must be a Field");
109
-
110
- if (field.parent && field.parent !== this.parent)
111
- field.parent.remove(field);
112
- this.oneof.push(field.name);
113
- this.fieldsArray.push(field);
114
- field.partOf = this; // field.parent remains null
115
- addFieldsToParent(this);
116
- return this;
117
- };
118
-
119
- /**
120
- * Removes a field from this oneof and puts it back to the oneof's parent.
121
- * @param {Field} field Field to remove
122
- * @returns {OneOf} `this`
123
- */
124
- OneOf.prototype.remove = function remove(field) {
125
-
126
- /* istanbul ignore if */
127
- if (!(field instanceof Field))
128
- throw TypeError("field must be a Field");
129
-
130
- var index = this.fieldsArray.indexOf(field);
131
-
132
- /* istanbul ignore if */
133
- if (index < 0)
134
- throw Error(field + " is not a member of " + this);
135
-
136
- this.fieldsArray.splice(index, 1);
137
- index = this.oneof.indexOf(field.name);
138
-
139
- /* istanbul ignore else */
140
- if (index > -1) // theoretical
141
- this.oneof.splice(index, 1);
142
-
143
- field.partOf = null;
144
- return this;
145
- };
146
-
147
- /**
148
- * @override
149
- */
150
- OneOf.prototype.onAdd = function onAdd(parent) {
151
- ReflectionObject.prototype.onAdd.call(this, parent);
152
- var self = this;
153
- // Collect present fields
154
- for (var i = 0; i < this.oneof.length; ++i) {
155
- var field = parent.get(this.oneof[i]);
156
- if (field && !field.partOf) {
157
- field.partOf = self;
158
- self.fieldsArray.push(field);
159
- }
160
- }
161
- // Add not yet present fields
162
- addFieldsToParent(this);
163
- };
164
-
165
- /**
166
- * @override
167
- */
168
- OneOf.prototype.onRemove = function onRemove(parent) {
169
- for (var i = 0, field; i < this.fieldsArray.length; ++i)
170
- if ((field = this.fieldsArray[i]).parent)
171
- field.parent.remove(field);
172
- ReflectionObject.prototype.onRemove.call(this, parent);
173
- };
174
-
175
- /**
176
- * Determines whether this field corresponds to a synthetic oneof created for
177
- * a proto3 optional field. No behavioral logic should depend on this, but it
178
- * can be relevant for reflection.
179
- * @name OneOf#isProto3Optional
180
- * @type {boolean}
181
- * @readonly
182
- */
183
- Object.defineProperty(OneOf.prototype, "isProto3Optional", {
184
- get: function() {
185
- if (this.fieldsArray == null || this.fieldsArray.length !== 1) {
186
- return false;
187
- }
188
-
189
- var field = this.fieldsArray[0];
190
- return field.options != null && field.options["proto3_optional"] === true;
191
- }
192
- });
193
-
194
- /**
195
- * Decorator function as returned by {@link OneOf.d} (TypeScript).
196
- * @typedef OneOfDecorator
197
- * @type {function}
198
- * @param {Object} prototype Target prototype
199
- * @param {string} oneofName OneOf name
200
- * @returns {undefined}
201
- * @deprecated Legacy TypeScript decorator support. Will be removed in a future release.
202
- */
203
-
204
- /**
205
- * OneOf decorator (TypeScript).
206
- * @function
207
- * @param {...string} fieldNames Field names
208
- * @returns {OneOfDecorator} Decorator function
209
- * @template T extends string
210
- * @deprecated Legacy TypeScript decorator support. Will be removed in a future release.
211
- */
212
- OneOf.d = function decorateOneOf() {
213
- var fieldNames = new Array(arguments.length),
214
- index = 0;
215
- while (index < arguments.length)
216
- fieldNames[index] = arguments[index++];
217
- return function oneOfDecorator(prototype, oneofName) {
218
- util.decorateType(prototype.constructor)
219
- .add(new OneOf(oneofName, fieldNames));
220
- Object.defineProperty(prototype, oneofName, {
221
- get: util.oneOfGetter(fieldNames),
222
- set: util.oneOfSetter(fieldNames)
223
- });
224
- };
225
- };
1
+ "use strict";
2
+ module.exports = OneOf;
3
+
4
+ // extends ReflectionObject
5
+ var ReflectionObject = require("./object");
6
+ ((OneOf.prototype = Object.create(ReflectionObject.prototype)).constructor = OneOf).className = "OneOf";
7
+
8
+ var Field = require("./field"),
9
+ util = require("./util");
10
+
11
+ /**
12
+ * Constructs a new oneof instance.
13
+ * @classdesc Reflected oneof.
14
+ * @extends ReflectionObject
15
+ * @constructor
16
+ * @param {string} name Oneof name
17
+ * @param {string[]|Object.<string,*>} [fieldNames] Field names
18
+ * @param {Object.<string,*>} [options] Declared options
19
+ * @param {string} [comment] Comment associated with this field
20
+ */
21
+ function OneOf(name, fieldNames, options, comment) {
22
+ if (!Array.isArray(fieldNames)) {
23
+ options = fieldNames;
24
+ fieldNames = undefined;
25
+ }
26
+ ReflectionObject.call(this, name, options);
27
+
28
+ /* istanbul ignore if */
29
+ if (!(fieldNames === undefined || Array.isArray(fieldNames)))
30
+ throw TypeError("fieldNames must be an Array");
31
+
32
+ /**
33
+ * Field names that belong to this oneof.
34
+ * @type {string[]}
35
+ */
36
+ this.oneof = fieldNames || []; // toJSON, marker
37
+
38
+ /**
39
+ * Fields that belong to this oneof as an array for iteration.
40
+ * @type {Field[]}
41
+ * @readonly
42
+ */
43
+ this.fieldsArray = []; // declared readonly for conformance, possibly not yet added to parent
44
+
45
+ /**
46
+ * Comment for this field.
47
+ * @type {string|null}
48
+ */
49
+ this.comment = comment;
50
+ }
51
+
52
+ /**
53
+ * Oneof descriptor.
54
+ * @interface IOneOf
55
+ * @property {Array.<string>} oneof Oneof field names
56
+ * @property {Object.<string,*>} [options] Oneof options
57
+ * @property {string|null} [comment] Oneof comment
58
+ */
59
+
60
+ /**
61
+ * Constructs a oneof from a oneof descriptor.
62
+ * @param {string} name Oneof name
63
+ * @param {IOneOf} json Oneof descriptor
64
+ * @returns {OneOf} Created oneof
65
+ * @throws {TypeError} If arguments are invalid
66
+ */
67
+ OneOf.fromJSON = function fromJSON(name, json) {
68
+ return new OneOf(name, json.oneof, json.options, json.comment);
69
+ };
70
+
71
+ /**
72
+ * Converts this oneof to a oneof descriptor.
73
+ * @param {IToJSONOptions} [toJSONOptions] JSON conversion options
74
+ * @returns {IOneOf} Oneof descriptor
75
+ */
76
+ OneOf.prototype.toJSON = function toJSON(toJSONOptions) {
77
+ var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false;
78
+ return util.toObject([
79
+ "options" , this.options,
80
+ "oneof" , this.oneof,
81
+ "comment" , keepComments ? this.comment : undefined
82
+ ]);
83
+ };
84
+
85
+ /**
86
+ * Adds the fields of the specified oneof to the parent if not already done so.
87
+ * @param {OneOf} oneof The oneof
88
+ * @returns {undefined}
89
+ * @inner
90
+ * @ignore
91
+ */
92
+ function addFieldsToParent(oneof) {
93
+ if (oneof.parent)
94
+ for (var i = 0; i < oneof.fieldsArray.length; ++i)
95
+ if (!oneof.fieldsArray[i].parent)
96
+ oneof.parent.add(oneof.fieldsArray[i]);
97
+ }
98
+
99
+ /**
100
+ * Adds a field to this oneof and removes it from its current parent, if any.
101
+ * @param {Field} field Field to add
102
+ * @returns {OneOf} `this`
103
+ */
104
+ OneOf.prototype.add = function add(field) {
105
+
106
+ /* istanbul ignore if */
107
+ if (!(field instanceof Field))
108
+ throw TypeError("field must be a Field");
109
+
110
+ if (field.parent && field.parent !== this.parent)
111
+ field.parent.remove(field);
112
+ this.oneof.push(field.name);
113
+ this.fieldsArray.push(field);
114
+ field.partOf = this; // field.parent remains null
115
+ addFieldsToParent(this);
116
+ return this;
117
+ };
118
+
119
+ /**
120
+ * Removes a field from this oneof and puts it back to the oneof's parent.
121
+ * @param {Field} field Field to remove
122
+ * @returns {OneOf} `this`
123
+ */
124
+ OneOf.prototype.remove = function remove(field) {
125
+
126
+ /* istanbul ignore if */
127
+ if (!(field instanceof Field))
128
+ throw TypeError("field must be a Field");
129
+
130
+ var index = this.fieldsArray.indexOf(field);
131
+
132
+ /* istanbul ignore if */
133
+ if (index < 0)
134
+ throw Error(field + " is not a member of " + this);
135
+
136
+ this.fieldsArray.splice(index, 1);
137
+ index = this.oneof.indexOf(field.name);
138
+
139
+ /* istanbul ignore else */
140
+ if (index > -1) // theoretical
141
+ this.oneof.splice(index, 1);
142
+
143
+ field.partOf = null;
144
+ return this;
145
+ };
146
+
147
+ /**
148
+ * @override
149
+ */
150
+ OneOf.prototype.onAdd = function onAdd(parent) {
151
+ ReflectionObject.prototype.onAdd.call(this, parent);
152
+ var self = this;
153
+ // Collect present fields
154
+ for (var i = 0; i < this.oneof.length; ++i) {
155
+ var field = parent.get(this.oneof[i]);
156
+ if (field && !field.partOf) {
157
+ field.partOf = self;
158
+ self.fieldsArray.push(field);
159
+ }
160
+ }
161
+ // Add not yet present fields
162
+ addFieldsToParent(this);
163
+ };
164
+
165
+ /**
166
+ * @override
167
+ */
168
+ OneOf.prototype.onRemove = function onRemove(parent) {
169
+ for (var i = 0, field; i < this.fieldsArray.length; ++i)
170
+ if ((field = this.fieldsArray[i]).parent)
171
+ field.parent.remove(field);
172
+ ReflectionObject.prototype.onRemove.call(this, parent);
173
+ };
174
+
175
+ /**
176
+ * Determines whether this field corresponds to a synthetic oneof created for
177
+ * a proto3 optional field. No behavioral logic should depend on this, but it
178
+ * can be relevant for reflection.
179
+ * @name OneOf#isProto3Optional
180
+ * @type {boolean}
181
+ * @readonly
182
+ */
183
+ Object.defineProperty(OneOf.prototype, "isProto3Optional", {
184
+ get: function() {
185
+ if (this.fieldsArray == null || this.fieldsArray.length !== 1) {
186
+ return false;
187
+ }
188
+
189
+ var field = this.fieldsArray[0];
190
+ return field.options != null && field.options["proto3_optional"] === true;
191
+ }
192
+ });
193
+
194
+ /**
195
+ * Decorator function as returned by {@link OneOf.d} (TypeScript).
196
+ * @typedef OneOfDecorator
197
+ * @type {function}
198
+ * @param {Object} prototype Target prototype
199
+ * @param {string} oneofName OneOf name
200
+ * @returns {undefined}
201
+ * @deprecated Legacy TypeScript decorator support. Will be removed in a future release.
202
+ */
203
+
204
+ /**
205
+ * OneOf decorator (TypeScript).
206
+ * @function
207
+ * @param {...string} fieldNames Field names
208
+ * @returns {OneOfDecorator} Decorator function
209
+ * @template T extends string
210
+ * @deprecated Legacy TypeScript decorator support. Will be removed in a future release.
211
+ */
212
+ OneOf.d = function decorateOneOf() {
213
+ var fieldNames = new Array(arguments.length),
214
+ index = 0;
215
+ while (index < arguments.length)
216
+ fieldNames[index] = arguments[index++];
217
+ return function oneOfDecorator(prototype, oneofName) {
218
+ util.decorateType(prototype.constructor)
219
+ .add(new OneOf(oneofName, fieldNames));
220
+ Object.defineProperty(prototype, oneofName, {
221
+ get: util.oneOfGetter(fieldNames),
222
+ set: util.oneOfSetter(fieldNames)
223
+ });
224
+ };
225
+ };