protobufjs 8.6.2 → 8.6.4

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 +8582 -8454
  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 +3071 -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 +10486 -10358
  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 +945 -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 +30 -0
  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 +214 -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 +35 -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 +566 -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 +558 -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 +654 -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 +100 -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 +188 -130
  100. package/src/util.js +264 -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/service.js CHANGED
@@ -1,198 +1,198 @@
1
- "use strict";
2
- module.exports = Service;
3
-
4
- // extends Namespace
5
- var Namespace = require("./namespace");
6
- ((Service.prototype = Object.create(Namespace.prototype)).constructor = Service).className = "Service";
7
-
8
- var Method = require("./method"),
9
- util = require("./util"),
10
- rpc = require("./rpc");
11
-
12
- /**
13
- * Constructs a new service instance.
14
- * @classdesc Reflected service.
15
- * @extends NamespaceBase
16
- * @constructor
17
- * @param {string} name Service name
18
- * @param {Object.<string,*>} [options] Service options
19
- * @throws {TypeError} If arguments are invalid
20
- */
21
- function Service(name, options) {
22
- Namespace.call(this, name, options);
23
-
24
- /**
25
- * Service methods.
26
- * @type {Object.<string,Method>}
27
- */
28
- this.methods = {}; // toJSON, marker
29
-
30
- /**
31
- * Cached methods as an array.
32
- * @type {Method[]|null}
33
- * @private
34
- */
35
- this._methodsArray = null;
36
- }
37
-
38
- /**
39
- * Service descriptor.
40
- * @interface IService
41
- * @extends INamespace
42
- * @property {string} [edition] Edition
43
- * @property {Object.<string,IMethod>} methods Method descriptors
44
- * @property {string|null} [comment] Service comment
45
- */
46
-
47
- /**
48
- * Constructs a service from a service descriptor.
49
- * @param {string} name Service name
50
- * @param {IService} json Service descriptor
51
- * @param {number} [depth] Current nesting depth, defaults to `0`
52
- * @returns {Service} Created service
53
- * @throws {TypeError} If arguments are invalid
54
- */
55
- Service.fromJSON = function fromJSON(name, json, depth) {
56
- if (depth === undefined)
57
- depth = 0;
58
- if (depth > util.recursionLimit)
59
- throw Error("max depth exceeded");
60
- var service = new Service(name, json.options);
61
- /* istanbul ignore else */
62
- if (json.methods)
63
- for (var names = Object.keys(json.methods), i = 0; i < names.length; ++i)
64
- service.add(Method.fromJSON(names[i], json.methods[names[i]]));
65
- if (json.nested)
66
- service.addJSON(json.nested, depth);
67
- if (json.edition)
68
- service._edition = json.edition;
69
- service.comment = json.comment;
70
- service._defaultEdition = "proto3"; // For backwards-compatibility.
71
- return service;
72
- };
73
-
74
- /**
75
- * Converts this service to a service descriptor.
76
- * @param {IToJSONOptions} [toJSONOptions] JSON conversion options
77
- * @returns {IService} Service descriptor
78
- */
79
- Service.prototype.toJSON = function toJSON(toJSONOptions) {
80
- var inherited = Namespace.prototype.toJSON.call(this, toJSONOptions);
81
- var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false;
82
- return util.toObject([
83
- "edition" , this._editionToJSON(),
84
- "options" , inherited && inherited.options || undefined,
85
- "methods" , Namespace.arrayToJSON(this.methodsArray, toJSONOptions) || /* istanbul ignore next */ {},
86
- "nested" , inherited && inherited.nested || undefined,
87
- "comment" , keepComments ? this.comment : undefined
88
- ]);
89
- };
90
-
91
- /**
92
- * Methods of this service as an array for iteration.
93
- * @name Service#methodsArray
94
- * @type {Method[]}
95
- * @readonly
96
- */
97
- Object.defineProperty(Service.prototype, "methodsArray", {
98
- get: function() {
99
- return this._methodsArray || (this._methodsArray = util.toArray(this.methods));
100
- }
101
- });
102
-
103
- function clearCache(service) {
104
- service._methodsArray = null;
105
- return service;
106
- }
107
-
108
- /**
109
- * @override
110
- */
111
- Service.prototype.get = function get(name) {
112
- return Object.prototype.hasOwnProperty.call(this.methods, name)
113
- ? this.methods[name]
114
- : Namespace.prototype.get.call(this, name);
115
- };
116
-
117
- /**
118
- * @override
119
- */
120
- Service.prototype.resolveAll = function resolveAll() {
121
- if (!this._needsRecursiveResolve) return this;
122
-
123
- Namespace.prototype.resolve.call(this);
124
- var methods = this.methodsArray;
125
- for (var i = 0; i < methods.length; ++i)
126
- methods[i].resolve();
127
- return this;
128
- };
129
-
130
- /**
131
- * @override
132
- */
133
- Service.prototype._resolveFeaturesRecursive = function _resolveFeaturesRecursive(edition) {
134
- if (!this._needsRecursiveFeatureResolution) return this;
135
-
136
- edition = this._edition || edition;
137
-
138
- Namespace.prototype._resolveFeaturesRecursive.call(this, edition);
139
- this.methodsArray.forEach(method => {
140
- method._resolveFeaturesRecursive(edition);
141
- });
142
- return this;
143
- };
144
-
145
- /**
146
- * @override
147
- */
148
- Service.prototype.add = function add(object) {
149
- /* istanbul ignore if */
150
- if (this.get(object.name))
151
- throw Error("duplicate name '" + object.name + "' in " + this);
152
-
153
- if (object instanceof Method) {
154
- if (object.name === "__proto__")
155
- return this;
156
- this.methods[object.name] = object;
157
- object.parent = this;
158
- return clearCache(this);
159
- }
160
- return Namespace.prototype.add.call(this, object);
161
- };
162
-
163
- /**
164
- * @override
165
- */
166
- Service.prototype.remove = function remove(object) {
167
- if (object instanceof Method) {
168
-
169
- /* istanbul ignore if */
170
- if (this.methods[object.name] !== object)
171
- throw Error(object + " is not a member of " + this);
172
-
173
- delete this.methods[object.name];
174
- object.parent = null;
175
- return clearCache(this);
176
- }
177
- return Namespace.prototype.remove.call(this, object);
178
- };
179
-
180
- /**
181
- * Creates a runtime service using the specified rpc implementation.
182
- * @param {RPCImpl} rpcImpl RPC implementation
183
- * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
184
- * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
185
- * @returns {rpc.Service} RPC service. Useful where requests and/or responses are streamed.
186
- */
187
- Service.prototype.create = function create(rpcImpl, requestDelimited, responseDelimited) {
188
- var rpcService = new rpc.Service(rpcImpl, requestDelimited, responseDelimited);
189
- for (var i = 0, method; i < /* initializes */ this.methodsArray.length; ++i) {
190
- var methodName = util.lcFirst((method = this._methodsArray[i]).resolve().name).replace(/[^$\w_]/g, "");
191
- rpcService[methodName] = (function(method, requestType, responseType) {
192
- return function rpcMethod(request, callback) {
193
- return rpc.Service.prototype.rpcCall.call(this, method, requestType, responseType, request, callback);
194
- };
195
- })(method, method.resolvedRequestType.ctor, method.resolvedResponseType.ctor);
196
- }
197
- return rpcService;
198
- };
1
+ "use strict";
2
+ module.exports = Service;
3
+
4
+ // extends Namespace
5
+ var Namespace = require("./namespace");
6
+ ((Service.prototype = Object.create(Namespace.prototype)).constructor = Service).className = "Service";
7
+
8
+ var Method = require("./method"),
9
+ util = require("./util"),
10
+ rpc = require("./rpc");
11
+
12
+ /**
13
+ * Constructs a new service instance.
14
+ * @classdesc Reflected service.
15
+ * @extends NamespaceBase
16
+ * @constructor
17
+ * @param {string} name Service name
18
+ * @param {Object.<string,*>} [options] Service options
19
+ * @throws {TypeError} If arguments are invalid
20
+ */
21
+ function Service(name, options) {
22
+ Namespace.call(this, name, options);
23
+
24
+ /**
25
+ * Service methods.
26
+ * @type {Object.<string,Method>}
27
+ */
28
+ this.methods = {}; // toJSON, marker
29
+
30
+ /**
31
+ * Cached methods as an array.
32
+ * @type {Method[]|null}
33
+ * @private
34
+ */
35
+ this._methodsArray = null;
36
+ }
37
+
38
+ /**
39
+ * Service descriptor.
40
+ * @interface IService
41
+ * @extends INamespace
42
+ * @property {string} [edition] Edition
43
+ * @property {Object.<string,IMethod>} methods Method descriptors
44
+ * @property {string|null} [comment] Service comment
45
+ */
46
+
47
+ /**
48
+ * Constructs a service from a service descriptor.
49
+ * @param {string} name Service name
50
+ * @param {IService} json Service descriptor
51
+ * @param {number} [depth] Current nesting depth, defaults to `0`
52
+ * @returns {Service} Created service
53
+ * @throws {TypeError} If arguments are invalid
54
+ */
55
+ Service.fromJSON = function fromJSON(name, json, depth) {
56
+ if (depth === undefined)
57
+ depth = 0;
58
+ if (depth > util.recursionLimit)
59
+ throw Error("max depth exceeded");
60
+ var service = new Service(name, json.options);
61
+ /* istanbul ignore else */
62
+ if (json.methods)
63
+ for (var names = Object.keys(json.methods), i = 0; i < names.length; ++i)
64
+ service.add(Method.fromJSON(names[i], json.methods[names[i]]));
65
+ if (json.nested)
66
+ service.addJSON(json.nested, depth);
67
+ if (json.edition)
68
+ service._edition = json.edition;
69
+ service.comment = json.comment;
70
+ service._defaultEdition = "proto3"; // For backwards-compatibility.
71
+ return service;
72
+ };
73
+
74
+ /**
75
+ * Converts this service to a service descriptor.
76
+ * @param {IToJSONOptions} [toJSONOptions] JSON conversion options
77
+ * @returns {IService} Service descriptor
78
+ */
79
+ Service.prototype.toJSON = function toJSON(toJSONOptions) {
80
+ var inherited = Namespace.prototype.toJSON.call(this, toJSONOptions);
81
+ var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false;
82
+ return util.toObject([
83
+ "edition" , this._editionToJSON(),
84
+ "options" , inherited && inherited.options || undefined,
85
+ "methods" , Namespace.arrayToJSON(this.methodsArray, toJSONOptions) || /* istanbul ignore next */ {},
86
+ "nested" , inherited && inherited.nested || undefined,
87
+ "comment" , keepComments ? this.comment : undefined
88
+ ]);
89
+ };
90
+
91
+ /**
92
+ * Methods of this service as an array for iteration.
93
+ * @name Service#methodsArray
94
+ * @type {Method[]}
95
+ * @readonly
96
+ */
97
+ Object.defineProperty(Service.prototype, "methodsArray", {
98
+ get: function() {
99
+ return this._methodsArray || (this._methodsArray = util.toArray(this.methods));
100
+ }
101
+ });
102
+
103
+ function clearCache(service) {
104
+ service._methodsArray = null;
105
+ return service;
106
+ }
107
+
108
+ /**
109
+ * @override
110
+ */
111
+ Service.prototype.get = function get(name) {
112
+ return Object.prototype.hasOwnProperty.call(this.methods, name)
113
+ ? this.methods[name]
114
+ : Namespace.prototype.get.call(this, name);
115
+ };
116
+
117
+ /**
118
+ * @override
119
+ */
120
+ Service.prototype.resolveAll = function resolveAll() {
121
+ if (!this._needsRecursiveResolve) return this;
122
+
123
+ Namespace.prototype.resolve.call(this);
124
+ var methods = this.methodsArray;
125
+ for (var i = 0; i < methods.length; ++i)
126
+ methods[i].resolve();
127
+ return this;
128
+ };
129
+
130
+ /**
131
+ * @override
132
+ */
133
+ Service.prototype._resolveFeaturesRecursive = function _resolveFeaturesRecursive(edition) {
134
+ if (!this._needsRecursiveFeatureResolution) return this;
135
+
136
+ edition = this._edition || edition;
137
+
138
+ Namespace.prototype._resolveFeaturesRecursive.call(this, edition);
139
+ this.methodsArray.forEach(method => {
140
+ method._resolveFeaturesRecursive(edition);
141
+ });
142
+ return this;
143
+ };
144
+
145
+ /**
146
+ * @override
147
+ */
148
+ Service.prototype.add = function add(object) {
149
+ /* istanbul ignore if */
150
+ if (this.get(object.name))
151
+ throw Error("duplicate name '" + object.name + "' in " + this);
152
+
153
+ if (object instanceof Method) {
154
+ if (object.name === "__proto__")
155
+ return this;
156
+ this.methods[object.name] = object;
157
+ object.parent = this;
158
+ return clearCache(this);
159
+ }
160
+ return Namespace.prototype.add.call(this, object);
161
+ };
162
+
163
+ /**
164
+ * @override
165
+ */
166
+ Service.prototype.remove = function remove(object) {
167
+ if (object instanceof Method) {
168
+
169
+ /* istanbul ignore if */
170
+ if (this.methods[object.name] !== object)
171
+ throw Error(object + " is not a member of " + this);
172
+
173
+ delete this.methods[object.name];
174
+ object.parent = null;
175
+ return clearCache(this);
176
+ }
177
+ return Namespace.prototype.remove.call(this, object);
178
+ };
179
+
180
+ /**
181
+ * Creates a runtime service using the specified rpc implementation.
182
+ * @param {RPCImpl} rpcImpl RPC implementation
183
+ * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
184
+ * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
185
+ * @returns {rpc.Service} RPC service. Useful where requests and/or responses are streamed.
186
+ */
187
+ Service.prototype.create = function create(rpcImpl, requestDelimited, responseDelimited) {
188
+ var rpcService = new rpc.Service(rpcImpl, requestDelimited, responseDelimited);
189
+ for (var i = 0, method; i < /* initializes */ this.methodsArray.length; ++i) {
190
+ var methodName = util.lcFirst((method = this._methodsArray[i]).resolve().name).replace(/[^$\w_]/g, "");
191
+ rpcService[methodName] = (function(method, requestType, responseType) {
192
+ return function rpcMethod(request, callback) {
193
+ return rpc.Service.prototype.rpcCall.call(this, method, requestType, responseType, request, callback);
194
+ };
195
+ })(method, method.resolvedRequestType.ctor, method.resolvedResponseType.ctor);
196
+ }
197
+ return rpcService;
198
+ };