protobufjs 6.8.8 → 6.8.9

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 (104) hide show
  1. package/LICENSE +39 -39
  2. package/README.md +879 -879
  3. package/cli/LICENSE +33 -33
  4. package/cli/README.md +11 -11
  5. package/cli/index.d.ts +3 -3
  6. package/cli/index.js +3 -3
  7. package/cli/lib/tsd-jsdoc/LICENSE +20 -20
  8. package/cli/lib/tsd-jsdoc/README.md +23 -23
  9. package/cli/lib/tsd-jsdoc/plugin.js +21 -21
  10. package/cli/lib/tsd-jsdoc/publish.js +693 -693
  11. package/cli/lib/tsd-jsdoc.json +18 -18
  12. package/cli/package.standalone.json +31 -31
  13. package/cli/pbjs.d.ts +9 -9
  14. package/cli/pbjs.js +329 -329
  15. package/cli/pbts.d.ts +9 -9
  16. package/cli/pbts.js +197 -197
  17. package/cli/targets/json-module.js +38 -38
  18. package/cli/targets/json.js +8 -8
  19. package/cli/targets/proto.js +326 -326
  20. package/cli/targets/proto2.js +10 -10
  21. package/cli/targets/proto3.js +10 -10
  22. package/cli/targets/static-module.js +29 -29
  23. package/cli/targets/static.js +702 -702
  24. package/cli/util.js +183 -183
  25. package/cli/wrappers/amd.js +7 -7
  26. package/cli/wrappers/closure.js +7 -7
  27. package/cli/wrappers/commonjs.js +7 -7
  28. package/cli/wrappers/default.js +15 -15
  29. package/cli/wrappers/es6.js +5 -5
  30. package/dist/README.md +31 -31
  31. package/dist/light/README.md +31 -31
  32. package/dist/light/protobuf.js +6030 -6030
  33. package/dist/light/protobuf.js.map +1 -1
  34. package/dist/light/protobuf.min.js +1 -1
  35. package/dist/light/protobuf.min.js.map +1 -1
  36. package/dist/minimal/README.md +31 -31
  37. package/dist/minimal/protobuf.js +1876 -1876
  38. package/dist/minimal/protobuf.js.map +1 -1
  39. package/dist/minimal/protobuf.min.js +1 -1
  40. package/dist/minimal/protobuf.min.js.map +1 -1
  41. package/dist/protobuf.js +7595 -7595
  42. package/dist/protobuf.js.map +1 -1
  43. package/dist/protobuf.min.js +1 -1
  44. package/dist/protobuf.min.js.map +1 -1
  45. package/ext/debug/README.md +4 -4
  46. package/ext/debug/index.js +71 -71
  47. package/ext/descriptor/README.md +72 -72
  48. package/ext/descriptor/index.js +1052 -1052
  49. package/ext/descriptor/test.js +54 -54
  50. package/google/LICENSE +27 -27
  51. package/google/README.md +1 -1
  52. package/google/api/annotations.proto +10 -10
  53. package/google/protobuf/descriptor.proto +286 -286
  54. package/google/protobuf/source_context.proto +7 -7
  55. package/index.js +4 -4
  56. package/light.d.ts +2 -2
  57. package/light.js +3 -3
  58. package/minimal.d.ts +2 -2
  59. package/minimal.js +4 -4
  60. package/package-lock.json +1748 -642
  61. package/package.json +119 -122
  62. package/scripts/changelog.js +150 -150
  63. package/scripts/postinstall.js +35 -35
  64. package/src/common.js +399 -399
  65. package/src/converter.js +293 -293
  66. package/src/decoder.js +106 -106
  67. package/src/encoder.js +99 -99
  68. package/src/enum.js +181 -181
  69. package/src/field.js +371 -371
  70. package/src/index-light.js +104 -104
  71. package/src/index-minimal.js +36 -36
  72. package/src/index.js +12 -12
  73. package/src/mapfield.js +126 -126
  74. package/src/message.js +138 -138
  75. package/src/method.js +151 -151
  76. package/src/namespace.js +433 -433
  77. package/src/object.js +200 -200
  78. package/src/oneof.js +203 -203
  79. package/src/parse.js +758 -758
  80. package/src/reader.js +405 -405
  81. package/src/reader_buffer.js +44 -44
  82. package/src/root.js +351 -351
  83. package/src/roots.js +18 -18
  84. package/src/rpc/service.js +142 -142
  85. package/src/rpc.js +36 -36
  86. package/src/service.js +167 -167
  87. package/src/tokenize.js +397 -397
  88. package/src/type.js +589 -589
  89. package/src/types.js +196 -196
  90. package/src/typescript.jsdoc +15 -15
  91. package/src/util/longbits.js +200 -200
  92. package/src/util/minimal.js +414 -414
  93. package/src/util.js +178 -178
  94. package/src/verifier.js +176 -176
  95. package/src/wrappers.js +83 -83
  96. package/src/writer.js +459 -459
  97. package/src/writer_buffer.js +81 -81
  98. package/tsconfig.json +6 -6
  99. package/cli/node_modules/os-tmpdir/index.js +0 -25
  100. package/cli/node_modules/os-tmpdir/license +0 -21
  101. package/cli/node_modules/os-tmpdir/readme.md +0 -32
  102. package/cli/node_modules/tmp/LICENSE +0 -21
  103. package/cli/node_modules/tmp/README.md +0 -314
  104. package/cli/node_modules/tmp/lib/tmp.js +0 -611
package/src/enum.js CHANGED
@@ -1,181 +1,181 @@
1
- "use strict";
2
- module.exports = Enum;
3
-
4
- // extends ReflectionObject
5
- var ReflectionObject = require("./object");
6
- ((Enum.prototype = Object.create(ReflectionObject.prototype)).constructor = Enum).className = "Enum";
7
-
8
- var Namespace = require("./namespace"),
9
- util = require("./util");
10
-
11
- /**
12
- * Constructs a new enum instance.
13
- * @classdesc Reflected enum.
14
- * @extends ReflectionObject
15
- * @constructor
16
- * @param {string} name Unique name within its namespace
17
- * @param {Object.<string,number>} [values] Enum values as an object, by name
18
- * @param {Object.<string,*>} [options] Declared options
19
- * @param {string} [comment] The comment for this enum
20
- * @param {Object.<string,string>} [comments] The value comments for this enum
21
- */
22
- function Enum(name, values, options, comment, comments) {
23
- ReflectionObject.call(this, name, options);
24
-
25
- if (values && typeof values !== "object")
26
- throw TypeError("values must be an object");
27
-
28
- /**
29
- * Enum values by id.
30
- * @type {Object.<number,string>}
31
- */
32
- this.valuesById = {};
33
-
34
- /**
35
- * Enum values by name.
36
- * @type {Object.<string,number>}
37
- */
38
- this.values = Object.create(this.valuesById); // toJSON, marker
39
-
40
- /**
41
- * Enum comment text.
42
- * @type {string|null}
43
- */
44
- this.comment = comment;
45
-
46
- /**
47
- * Value comment texts, if any.
48
- * @type {Object.<string,string>}
49
- */
50
- this.comments = comments || {};
51
-
52
- /**
53
- * Reserved ranges, if any.
54
- * @type {Array.<number[]|string>}
55
- */
56
- this.reserved = undefined; // toJSON
57
-
58
- // Note that values inherit valuesById on their prototype which makes them a TypeScript-
59
- // compatible enum. This is used by pbts to write actual enum definitions that work for
60
- // static and reflection code alike instead of emitting generic object definitions.
61
-
62
- if (values)
63
- for (var keys = Object.keys(values), i = 0; i < keys.length; ++i)
64
- if (typeof values[keys[i]] === "number") // use forward entries only
65
- this.valuesById[ this.values[keys[i]] = values[keys[i]] ] = keys[i];
66
- }
67
-
68
- /**
69
- * Enum descriptor.
70
- * @interface IEnum
71
- * @property {Object.<string,number>} values Enum values
72
- * @property {Object.<string,*>} [options] Enum options
73
- */
74
-
75
- /**
76
- * Constructs an enum from an enum descriptor.
77
- * @param {string} name Enum name
78
- * @param {IEnum} json Enum descriptor
79
- * @returns {Enum} Created enum
80
- * @throws {TypeError} If arguments are invalid
81
- */
82
- Enum.fromJSON = function fromJSON(name, json) {
83
- var enm = new Enum(name, json.values, json.options, json.comment, json.comments);
84
- enm.reserved = json.reserved;
85
- return enm;
86
- };
87
-
88
- /**
89
- * Converts this enum to an enum descriptor.
90
- * @param {IToJSONOptions} [toJSONOptions] JSON conversion options
91
- * @returns {IEnum} Enum descriptor
92
- */
93
- Enum.prototype.toJSON = function toJSON(toJSONOptions) {
94
- var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false;
95
- return util.toObject([
96
- "options" , this.options,
97
- "values" , this.values,
98
- "reserved" , this.reserved && this.reserved.length ? this.reserved : undefined,
99
- "comment" , keepComments ? this.comment : undefined,
100
- "comments" , keepComments ? this.comments : undefined
101
- ]);
102
- };
103
-
104
- /**
105
- * Adds a value to this enum.
106
- * @param {string} name Value name
107
- * @param {number} id Value id
108
- * @param {string} [comment] Comment, if any
109
- * @returns {Enum} `this`
110
- * @throws {TypeError} If arguments are invalid
111
- * @throws {Error} If there is already a value with this name or id
112
- */
113
- Enum.prototype.add = function add(name, id, comment) {
114
- // utilized by the parser but not by .fromJSON
115
-
116
- if (!util.isString(name))
117
- throw TypeError("name must be a string");
118
-
119
- if (!util.isInteger(id))
120
- throw TypeError("id must be an integer");
121
-
122
- if (this.values[name] !== undefined)
123
- throw Error("duplicate name '" + name + "' in " + this);
124
-
125
- if (this.isReservedId(id))
126
- throw Error("id " + id + " is reserved in " + this);
127
-
128
- if (this.isReservedName(name))
129
- throw Error("name '" + name + "' is reserved in " + this);
130
-
131
- if (this.valuesById[id] !== undefined) {
132
- if (!(this.options && this.options.allow_alias))
133
- throw Error("duplicate id " + id + " in " + this);
134
- this.values[name] = id;
135
- } else
136
- this.valuesById[this.values[name] = id] = name;
137
-
138
- this.comments[name] = comment || null;
139
- return this;
140
- };
141
-
142
- /**
143
- * Removes a value from this enum
144
- * @param {string} name Value name
145
- * @returns {Enum} `this`
146
- * @throws {TypeError} If arguments are invalid
147
- * @throws {Error} If `name` is not a name of this enum
148
- */
149
- Enum.prototype.remove = function remove(name) {
150
-
151
- if (!util.isString(name))
152
- throw TypeError("name must be a string");
153
-
154
- var val = this.values[name];
155
- if (val == null)
156
- throw Error("name '" + name + "' does not exist in " + this);
157
-
158
- delete this.valuesById[val];
159
- delete this.values[name];
160
- delete this.comments[name];
161
-
162
- return this;
163
- };
164
-
165
- /**
166
- * Tests if the specified id is reserved.
167
- * @param {number} id Id to test
168
- * @returns {boolean} `true` if reserved, otherwise `false`
169
- */
170
- Enum.prototype.isReservedId = function isReservedId(id) {
171
- return Namespace.isReservedId(this.reserved, id);
172
- };
173
-
174
- /**
175
- * Tests if the specified name is reserved.
176
- * @param {string} name Name to test
177
- * @returns {boolean} `true` if reserved, otherwise `false`
178
- */
179
- Enum.prototype.isReservedName = function isReservedName(name) {
180
- return Namespace.isReservedName(this.reserved, name);
181
- };
1
+ "use strict";
2
+ module.exports = Enum;
3
+
4
+ // extends ReflectionObject
5
+ var ReflectionObject = require("./object");
6
+ ((Enum.prototype = Object.create(ReflectionObject.prototype)).constructor = Enum).className = "Enum";
7
+
8
+ var Namespace = require("./namespace"),
9
+ util = require("./util");
10
+
11
+ /**
12
+ * Constructs a new enum instance.
13
+ * @classdesc Reflected enum.
14
+ * @extends ReflectionObject
15
+ * @constructor
16
+ * @param {string} name Unique name within its namespace
17
+ * @param {Object.<string,number>} [values] Enum values as an object, by name
18
+ * @param {Object.<string,*>} [options] Declared options
19
+ * @param {string} [comment] The comment for this enum
20
+ * @param {Object.<string,string>} [comments] The value comments for this enum
21
+ */
22
+ function Enum(name, values, options, comment, comments) {
23
+ ReflectionObject.call(this, name, options);
24
+
25
+ if (values && typeof values !== "object")
26
+ throw TypeError("values must be an object");
27
+
28
+ /**
29
+ * Enum values by id.
30
+ * @type {Object.<number,string>}
31
+ */
32
+ this.valuesById = {};
33
+
34
+ /**
35
+ * Enum values by name.
36
+ * @type {Object.<string,number>}
37
+ */
38
+ this.values = Object.create(this.valuesById); // toJSON, marker
39
+
40
+ /**
41
+ * Enum comment text.
42
+ * @type {string|null}
43
+ */
44
+ this.comment = comment;
45
+
46
+ /**
47
+ * Value comment texts, if any.
48
+ * @type {Object.<string,string>}
49
+ */
50
+ this.comments = comments || {};
51
+
52
+ /**
53
+ * Reserved ranges, if any.
54
+ * @type {Array.<number[]|string>}
55
+ */
56
+ this.reserved = undefined; // toJSON
57
+
58
+ // Note that values inherit valuesById on their prototype which makes them a TypeScript-
59
+ // compatible enum. This is used by pbts to write actual enum definitions that work for
60
+ // static and reflection code alike instead of emitting generic object definitions.
61
+
62
+ if (values)
63
+ for (var keys = Object.keys(values), i = 0; i < keys.length; ++i)
64
+ if (typeof values[keys[i]] === "number") // use forward entries only
65
+ this.valuesById[ this.values[keys[i]] = values[keys[i]] ] = keys[i];
66
+ }
67
+
68
+ /**
69
+ * Enum descriptor.
70
+ * @interface IEnum
71
+ * @property {Object.<string,number>} values Enum values
72
+ * @property {Object.<string,*>} [options] Enum options
73
+ */
74
+
75
+ /**
76
+ * Constructs an enum from an enum descriptor.
77
+ * @param {string} name Enum name
78
+ * @param {IEnum} json Enum descriptor
79
+ * @returns {Enum} Created enum
80
+ * @throws {TypeError} If arguments are invalid
81
+ */
82
+ Enum.fromJSON = function fromJSON(name, json) {
83
+ var enm = new Enum(name, json.values, json.options, json.comment, json.comments);
84
+ enm.reserved = json.reserved;
85
+ return enm;
86
+ };
87
+
88
+ /**
89
+ * Converts this enum to an enum descriptor.
90
+ * @param {IToJSONOptions} [toJSONOptions] JSON conversion options
91
+ * @returns {IEnum} Enum descriptor
92
+ */
93
+ Enum.prototype.toJSON = function toJSON(toJSONOptions) {
94
+ var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false;
95
+ return util.toObject([
96
+ "options" , this.options,
97
+ "values" , this.values,
98
+ "reserved" , this.reserved && this.reserved.length ? this.reserved : undefined,
99
+ "comment" , keepComments ? this.comment : undefined,
100
+ "comments" , keepComments ? this.comments : undefined
101
+ ]);
102
+ };
103
+
104
+ /**
105
+ * Adds a value to this enum.
106
+ * @param {string} name Value name
107
+ * @param {number} id Value id
108
+ * @param {string} [comment] Comment, if any
109
+ * @returns {Enum} `this`
110
+ * @throws {TypeError} If arguments are invalid
111
+ * @throws {Error} If there is already a value with this name or id
112
+ */
113
+ Enum.prototype.add = function add(name, id, comment) {
114
+ // utilized by the parser but not by .fromJSON
115
+
116
+ if (!util.isString(name))
117
+ throw TypeError("name must be a string");
118
+
119
+ if (!util.isInteger(id))
120
+ throw TypeError("id must be an integer");
121
+
122
+ if (this.values[name] !== undefined)
123
+ throw Error("duplicate name '" + name + "' in " + this);
124
+
125
+ if (this.isReservedId(id))
126
+ throw Error("id " + id + " is reserved in " + this);
127
+
128
+ if (this.isReservedName(name))
129
+ throw Error("name '" + name + "' is reserved in " + this);
130
+
131
+ if (this.valuesById[id] !== undefined) {
132
+ if (!(this.options && this.options.allow_alias))
133
+ throw Error("duplicate id " + id + " in " + this);
134
+ this.values[name] = id;
135
+ } else
136
+ this.valuesById[this.values[name] = id] = name;
137
+
138
+ this.comments[name] = comment || null;
139
+ return this;
140
+ };
141
+
142
+ /**
143
+ * Removes a value from this enum
144
+ * @param {string} name Value name
145
+ * @returns {Enum} `this`
146
+ * @throws {TypeError} If arguments are invalid
147
+ * @throws {Error} If `name` is not a name of this enum
148
+ */
149
+ Enum.prototype.remove = function remove(name) {
150
+
151
+ if (!util.isString(name))
152
+ throw TypeError("name must be a string");
153
+
154
+ var val = this.values[name];
155
+ if (val == null)
156
+ throw Error("name '" + name + "' does not exist in " + this);
157
+
158
+ delete this.valuesById[val];
159
+ delete this.values[name];
160
+ delete this.comments[name];
161
+
162
+ return this;
163
+ };
164
+
165
+ /**
166
+ * Tests if the specified id is reserved.
167
+ * @param {number} id Id to test
168
+ * @returns {boolean} `true` if reserved, otherwise `false`
169
+ */
170
+ Enum.prototype.isReservedId = function isReservedId(id) {
171
+ return Namespace.isReservedId(this.reserved, id);
172
+ };
173
+
174
+ /**
175
+ * Tests if the specified name is reserved.
176
+ * @param {string} name Name to test
177
+ * @returns {boolean} `true` if reserved, otherwise `false`
178
+ */
179
+ Enum.prototype.isReservedName = function isReservedName(name) {
180
+ return Namespace.isReservedName(this.reserved, name);
181
+ };