protobufjs 8.0.1-experimental → 8.0.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 (98) hide show
  1. package/LICENSE +39 -39
  2. package/README.md +727 -727
  3. package/dist/light/protobuf.js +7724 -7352
  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 +2606 -2546
  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 +9593 -9132
  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 +195 -191
  19. package/ext/descriptor/index.js +1181 -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 +1381 -738
  30. package/google/protobuf/descriptor.proto +535 -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 +2817 -2792
  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 +96 -112
  42. package/scripts/postinstall.js +32 -32
  43. package/src/common.js +399 -399
  44. package/src/converter.js +310 -301
  45. package/src/decoder.js +135 -127
  46. package/src/encoder.js +100 -100
  47. package/src/enum.js +226 -241
  48. package/src/field.js +453 -432
  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 +139 -139
  54. package/src/method.js +160 -160
  55. package/src/namespace.js +550 -434
  56. package/src/object.js +385 -330
  57. package/src/oneof.js +222 -222
  58. package/src/parse.js +1032 -948
  59. package/src/reader.js +426 -416
  60. package/src/reader_buffer.js +51 -51
  61. package/src/root.js +404 -384
  62. package/src/roots.js +17 -17
  63. package/src/rpc/service.js +142 -142
  64. package/src/rpc.js +36 -36
  65. package/src/service.js +193 -168
  66. package/src/tokenize.js +421 -416
  67. package/src/type.js +625 -590
  68. package/src/types.js +196 -196
  69. package/src/typescript.jsdoc +15 -15
  70. package/src/util/aspromise.d.ts +13 -0
  71. package/src/util/aspromise.js +52 -0
  72. package/src/util/base64.d.ts +32 -0
  73. package/src/util/base64.js +139 -0
  74. package/src/util/codegen.d.ts +31 -0
  75. package/src/util/codegen.js +113 -0
  76. package/src/util/eventemitter.d.ts +45 -0
  77. package/src/util/eventemitter.js +84 -0
  78. package/src/util/fetch.d.ts +56 -0
  79. package/src/util/fetch.js +114 -0
  80. package/src/util/float.d.ts +83 -0
  81. package/src/util/float.js +335 -0
  82. package/src/util/inquire.d.ts +9 -0
  83. package/src/util/inquire.js +37 -0
  84. package/src/util/longbits.js +200 -200
  85. package/src/util/minimal.js +461 -438
  86. package/src/util/path.d.ts +22 -0
  87. package/src/util/path.js +72 -0
  88. package/src/util/patterns.js +8 -0
  89. package/src/util/pool.d.ts +32 -0
  90. package/src/util/pool.js +48 -0
  91. package/src/util/utf8.d.ts +24 -0
  92. package/src/util/utf8.js +104 -0
  93. package/src/util.js +215 -213
  94. package/src/verifier.js +180 -177
  95. package/src/wrappers.js +103 -102
  96. package/src/writer.js +465 -465
  97. package/src/writer_buffer.js +85 -85
  98. package/tsconfig.json +8 -8
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Tests if the specified path is absolute.
3
+ * @param {string} path Path to test
4
+ * @returns {boolean} `true` if path is absolute
5
+ */
6
+ export function isAbsolute(path: string): boolean;
7
+
8
+ /**
9
+ * Normalizes the specified path.
10
+ * @param {string} path Path to normalize
11
+ * @returns {string} Normalized path
12
+ */
13
+ export function normalize(path: string): string;
14
+
15
+ /**
16
+ * Resolves the specified include path against the specified origin path.
17
+ * @param {string} originPath Path to the origin file
18
+ * @param {string} includePath Include path relative to origin path
19
+ * @param {boolean} [alreadyNormalized=false] `true` if both paths are already known to be normalized
20
+ * @returns {string} Path to the include file
21
+ */
22
+ export function resolve(originPath: string, includePath: string, alreadyNormalized?: boolean): string;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * A minimal path module to resolve Unix, Windows and URL paths alike.
5
+ * @memberof util
6
+ * @namespace
7
+ */
8
+ var path = exports;
9
+
10
+ var isAbsolute =
11
+ /**
12
+ * Tests if the specified path is absolute.
13
+ * @param {string} path Path to test
14
+ * @returns {boolean} `true` if path is absolute
15
+ */
16
+ path.isAbsolute = function isAbsolute(path) {
17
+ return /^(?:\/|\w+:|\\\\\w+)/.test(path);
18
+ };
19
+
20
+ var normalize =
21
+ /**
22
+ * Normalizes the specified path.
23
+ * @param {string} path Path to normalize
24
+ * @returns {string} Normalized path
25
+ */
26
+ path.normalize = function normalize(path) {
27
+ var firstTwoCharacters = path.substring(0,2);
28
+ var uncPrefix = "";
29
+ if (firstTwoCharacters === "\\\\") {
30
+ uncPrefix = firstTwoCharacters;
31
+ path = path.substring(2);
32
+ }
33
+
34
+ path = path.replace(/\\/g, "/")
35
+ .replace(/\/{2,}/g, "/");
36
+ var parts = path.split("/"),
37
+ absolute = isAbsolute(path),
38
+ prefix = "";
39
+ if (absolute)
40
+ prefix = parts.shift() + "/";
41
+ for (var i = 0; i < parts.length;) {
42
+ if (parts[i] === "..") {
43
+ if (i > 0 && parts[i - 1] !== "..")
44
+ parts.splice(--i, 2);
45
+ else if (absolute)
46
+ parts.splice(i, 1);
47
+ else
48
+ ++i;
49
+ } else if (parts[i] === ".")
50
+ parts.splice(i, 1);
51
+ else
52
+ ++i;
53
+ }
54
+ return uncPrefix + prefix + parts.join("/");
55
+ };
56
+
57
+ /**
58
+ * Resolves the specified include path against the specified origin path.
59
+ * @param {string} originPath Path to the origin file
60
+ * @param {string} includePath Include path relative to origin path
61
+ * @param {boolean} [alreadyNormalized=false] `true` if both paths are already known to be normalized
62
+ * @returns {string} Path to the include file
63
+ */
64
+ path.resolve = function resolve(originPath, includePath, alreadyNormalized) {
65
+ if (!alreadyNormalized)
66
+ includePath = normalize(includePath);
67
+ if (isAbsolute(includePath))
68
+ return includePath;
69
+ if (!alreadyNormalized)
70
+ originPath = normalize(originPath);
71
+ return (originPath = originPath.replace(/(?:\/|^)[^/]+$/, "")).length ? normalize(originPath + "/" + includePath) : includePath;
72
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ var patterns = exports;
4
+
5
+ patterns.numberRe = /^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/;
6
+ patterns.typeRefRe = /^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/;
7
+ patterns.reservedRe = /^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/;
8
+ patterns.unsafePropertyRe = /^(?:__proto__|prototype|constructor)$/;
@@ -0,0 +1,32 @@
1
+ export = pool;
2
+
3
+ /**
4
+ * An allocator as used by {@link util.pool}.
5
+ * @typedef PoolAllocator
6
+ * @type {function}
7
+ * @param {number} size Buffer size
8
+ * @returns {Uint8Array} Buffer
9
+ */
10
+ type PoolAllocator = (size: number) => Uint8Array;
11
+
12
+ /**
13
+ * A slicer as used by {@link util.pool}.
14
+ * @typedef PoolSlicer
15
+ * @type {function}
16
+ * @param {number} start Start offset
17
+ * @param {number} end End offset
18
+ * @returns {Uint8Array} Buffer slice
19
+ * @this {Uint8Array}
20
+ */
21
+ type PoolSlicer = (this: Uint8Array, start: number, end: number) => Uint8Array;
22
+
23
+ /**
24
+ * A general purpose buffer pool.
25
+ * @memberof util
26
+ * @function
27
+ * @param {PoolAllocator} alloc Allocator
28
+ * @param {PoolSlicer} slice Slicer
29
+ * @param {number} [size=8192] Slab size
30
+ * @returns {PoolAllocator} Pooled allocator
31
+ */
32
+ declare function pool(alloc: PoolAllocator, slice: PoolSlicer, size?: number): PoolAllocator;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ module.exports = pool;
3
+
4
+ /**
5
+ * An allocator as used by {@link util.pool}.
6
+ * @typedef PoolAllocator
7
+ * @type {function}
8
+ * @param {number} size Buffer size
9
+ * @returns {Uint8Array} Buffer
10
+ */
11
+
12
+ /**
13
+ * A slicer as used by {@link util.pool}.
14
+ * @typedef PoolSlicer
15
+ * @type {function}
16
+ * @param {number} start Start offset
17
+ * @param {number} end End offset
18
+ * @returns {Uint8Array} Buffer slice
19
+ * @this {Uint8Array}
20
+ */
21
+
22
+ /**
23
+ * A general purpose buffer pool.
24
+ * @memberof util
25
+ * @function
26
+ * @param {PoolAllocator} alloc Allocator
27
+ * @param {PoolSlicer} slice Slicer
28
+ * @param {number} [size=8192] Slab size
29
+ * @returns {PoolAllocator} Pooled allocator
30
+ */
31
+ function pool(alloc, slice, size) {
32
+ var SIZE = size || 8192;
33
+ var MAX = SIZE >>> 1;
34
+ var slab = null;
35
+ var offset = SIZE;
36
+ return function pool_alloc(size) {
37
+ if (size < 1 || size > MAX)
38
+ return alloc(size);
39
+ if (offset + size > SIZE) {
40
+ slab = alloc(SIZE);
41
+ offset = 0;
42
+ }
43
+ var buf = slice.call(slab, offset, offset += size);
44
+ if (offset & 7) // align to 32 bit
45
+ offset = (offset | 7) + 1;
46
+ return buf;
47
+ };
48
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Calculates the UTF8 byte length of a string.
3
+ * @param {string} string String
4
+ * @returns {number} Byte length
5
+ */
6
+ export function length(string: string): number;
7
+
8
+ /**
9
+ * Reads UTF8 bytes as a string.
10
+ * @param {Uint8Array} buffer Source buffer
11
+ * @param {number} start Source start
12
+ * @param {number} end Source end
13
+ * @returns {string} String read
14
+ */
15
+ export function read(buffer: Uint8Array, start: number, end: number): string;
16
+
17
+ /**
18
+ * Writes a string as UTF8 bytes.
19
+ * @param {string} string Source string
20
+ * @param {Uint8Array} buffer Destination buffer
21
+ * @param {number} offset Destination offset
22
+ * @returns {number} Bytes written
23
+ */
24
+ export function write(string: string, buffer: Uint8Array, offset: number): number;
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * A minimal UTF8 implementation for number arrays.
5
+ * @memberof util
6
+ * @namespace
7
+ */
8
+ var utf8 = exports,
9
+ replacementChar = "\ufffd";
10
+
11
+ /**
12
+ * Calculates the UTF8 byte length of a string.
13
+ * @param {string} string String
14
+ * @returns {number} Byte length
15
+ */
16
+ utf8.length = function utf8_length(string) {
17
+ var len = 0,
18
+ c = 0;
19
+ for (var i = 0; i < string.length; ++i) {
20
+ c = string.charCodeAt(i);
21
+ if (c < 128)
22
+ len += 1;
23
+ else if (c < 2048)
24
+ len += 2;
25
+ else if ((c & 0xFC00) === 0xD800 && (string.charCodeAt(i + 1) & 0xFC00) === 0xDC00) {
26
+ ++i;
27
+ len += 4;
28
+ } else
29
+ len += 3;
30
+ }
31
+ return len;
32
+ };
33
+
34
+ /**
35
+ * Reads UTF8 bytes as a string.
36
+ * @param {Uint8Array} buffer Source buffer
37
+ * @param {number} start Source start
38
+ * @param {number} end Source end
39
+ * @returns {string} String read
40
+ */
41
+ utf8.read = function utf8_read(buffer, start, end) {
42
+ if (end - start < 1) {
43
+ return "";
44
+ }
45
+
46
+ var str = "";
47
+ for (var i = start; i < end;) {
48
+ var t = buffer[i++];
49
+ if (t <= 0x7F) {
50
+ str += String.fromCharCode(t);
51
+ } else if (t >= 0xC0 && t < 0xE0) {
52
+ var c2 = (t & 0x1F) << 6 | buffer[i++] & 0x3F;
53
+ str += c2 >= 0x80 ? String.fromCharCode(c2) : replacementChar;
54
+ } else if (t >= 0xE0 && t < 0xF0) {
55
+ var c3 = (t & 0xF) << 12 | (buffer[i++] & 0x3F) << 6 | buffer[i++] & 0x3F;
56
+ str += c3 >= 0x800 ? String.fromCharCode(c3) : replacementChar;
57
+ } else if (t >= 0xF0) {
58
+ var t2 = (t & 7) << 18 | (buffer[i++] & 0x3F) << 12 | (buffer[i++] & 0x3F) << 6 | buffer[i++] & 0x3F;
59
+ if (t2 < 0x10000 || t2 > 0x10FFFF)
60
+ str += replacementChar;
61
+ else {
62
+ t2 -= 0x10000;
63
+ str += String.fromCharCode(0xD800 + (t2 >> 10));
64
+ str += String.fromCharCode(0xDC00 + (t2 & 0x3FF));
65
+ }
66
+ }
67
+ }
68
+
69
+ return str;
70
+ };
71
+
72
+ /**
73
+ * Writes a string as UTF8 bytes.
74
+ * @param {string} string Source string
75
+ * @param {Uint8Array} buffer Destination buffer
76
+ * @param {number} offset Destination offset
77
+ * @returns {number} Bytes written
78
+ */
79
+ utf8.write = function utf8_write(string, buffer, offset) {
80
+ var start = offset,
81
+ c1, // character 1
82
+ c2; // character 2
83
+ for (var i = 0; i < string.length; ++i) {
84
+ c1 = string.charCodeAt(i);
85
+ if (c1 < 128) {
86
+ buffer[offset++] = c1;
87
+ } else if (c1 < 2048) {
88
+ buffer[offset++] = c1 >> 6 | 192;
89
+ buffer[offset++] = c1 & 63 | 128;
90
+ } else if ((c1 & 0xFC00) === 0xD800 && ((c2 = string.charCodeAt(i + 1)) & 0xFC00) === 0xDC00) {
91
+ c1 = 0x10000 + ((c1 & 0x03FF) << 10) + (c2 & 0x03FF);
92
+ ++i;
93
+ buffer[offset++] = c1 >> 18 | 240;
94
+ buffer[offset++] = c1 >> 12 & 63 | 128;
95
+ buffer[offset++] = c1 >> 6 & 63 | 128;
96
+ buffer[offset++] = c1 & 63 | 128;
97
+ } else {
98
+ buffer[offset++] = c1 >> 12 | 224;
99
+ buffer[offset++] = c1 >> 6 & 63 | 128;
100
+ buffer[offset++] = c1 & 63 | 128;
101
+ }
102
+ }
103
+ return offset - start;
104
+ };