@ohos-ports/crc 0.0.0-stage → 4.3.2-beta.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 (163) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +122 -2
  3. package/calculators/crc1.d.ts +3 -0
  4. package/calculators/crc16.d.ts +3 -0
  5. package/calculators/crc16ccitt.d.ts +3 -0
  6. package/calculators/crc16kermit.d.ts +3 -0
  7. package/calculators/crc16modbus.d.ts +3 -0
  8. package/calculators/crc16xmodem.d.ts +3 -0
  9. package/calculators/crc24.d.ts +3 -0
  10. package/calculators/crc32.d.ts +3 -0
  11. package/calculators/crc32mpeg.d.ts +3 -0
  12. package/calculators/crc32mpeg2.d.ts +3 -0
  13. package/calculators/crc5.d.ts +3 -0
  14. package/calculators/crc8.d.ts +3 -0
  15. package/calculators/crc81wire.d.ts +3 -0
  16. package/calculators/crc8dvbs2.d.ts +3 -0
  17. package/calculators/crcjam.d.ts +3 -0
  18. package/cjs/calculators/crc1.js +12 -0
  19. package/cjs/calculators/crc16.js +38 -0
  20. package/cjs/calculators/crc16ccitt.js +38 -0
  21. package/cjs/calculators/crc16kermit.js +38 -0
  22. package/cjs/calculators/crc16modbus.js +38 -0
  23. package/cjs/calculators/crc16xmodem.js +18 -0
  24. package/cjs/calculators/crc24.js +45 -0
  25. package/cjs/calculators/crc32.js +49 -0
  26. package/cjs/calculators/crc32mpeg2.js +48 -0
  27. package/cjs/calculators/crc5.js +37 -0
  28. package/cjs/calculators/crc8.js +32 -0
  29. package/cjs/calculators/crc81wire.js +32 -0
  30. package/cjs/calculators/crc8dvbs2.js +32 -0
  31. package/cjs/calculators/crcjam.js +48 -0
  32. package/cjs/crc1.js +8 -0
  33. package/cjs/crc16.js +8 -0
  34. package/cjs/crc16ccitt.js +8 -0
  35. package/cjs/crc16kermit.js +8 -0
  36. package/cjs/crc16modbus.js +8 -0
  37. package/cjs/crc16xmodem.js +8 -0
  38. package/cjs/crc24.js +8 -0
  39. package/cjs/crc32.js +8 -0
  40. package/cjs/crc32mpeg2.js +8 -0
  41. package/cjs/crc5.js +8 -0
  42. package/cjs/crc8.js +8 -0
  43. package/cjs/crc81wire.js +8 -0
  44. package/cjs/crc8dvbs2.js +8 -0
  45. package/cjs/crcjam.js +8 -0
  46. package/cjs/create_buffer.js +7 -0
  47. package/cjs/define_crc.js +14 -0
  48. package/cjs/index.js +47 -0
  49. package/cjs/package.json +3 -0
  50. package/cjs/types.js +2 -0
  51. package/cjs-default-unwrap/calculators/crc1.js +3 -0
  52. package/cjs-default-unwrap/calculators/crc16.js +3 -0
  53. package/cjs-default-unwrap/calculators/crc16ccitt.js +3 -0
  54. package/cjs-default-unwrap/calculators/crc16kermit.js +3 -0
  55. package/cjs-default-unwrap/calculators/crc16modbus.js +3 -0
  56. package/cjs-default-unwrap/calculators/crc16xmodem.js +3 -0
  57. package/cjs-default-unwrap/calculators/crc24.js +3 -0
  58. package/cjs-default-unwrap/calculators/crc32.js +3 -0
  59. package/cjs-default-unwrap/calculators/crc32mpeg2.js +3 -0
  60. package/cjs-default-unwrap/calculators/crc8.js +3 -0
  61. package/cjs-default-unwrap/calculators/crc81wire.js +3 -0
  62. package/cjs-default-unwrap/calculators/crc8dvbs2.js +3 -0
  63. package/cjs-default-unwrap/calculators/crcjam.js +3 -0
  64. package/cjs-default-unwrap/crc1.js +3 -0
  65. package/cjs-default-unwrap/crc16.js +3 -0
  66. package/cjs-default-unwrap/crc16ccitt.js +3 -0
  67. package/cjs-default-unwrap/crc16kermit.js +3 -0
  68. package/cjs-default-unwrap/crc16modbus.js +3 -0
  69. package/cjs-default-unwrap/crc16xmodem.js +3 -0
  70. package/cjs-default-unwrap/crc24.js +3 -0
  71. package/cjs-default-unwrap/crc32.js +3 -0
  72. package/cjs-default-unwrap/crc32mpeg2.js +3 -0
  73. package/cjs-default-unwrap/crc8.js +3 -0
  74. package/cjs-default-unwrap/crc81wire.js +3 -0
  75. package/cjs-default-unwrap/crc8dvbs2.js +3 -0
  76. package/cjs-default-unwrap/crcjam.js +3 -0
  77. package/cjs-default-unwrap/index.js +17 -0
  78. package/cjs-default-unwrap/package.json +3 -0
  79. package/crc1.d.ts +2 -0
  80. package/crc16.d.ts +2 -0
  81. package/crc16ccitt.d.ts +2 -0
  82. package/crc16kermit.d.ts +2 -0
  83. package/crc16modbus.d.ts +2 -0
  84. package/crc16xmodem.d.ts +2 -0
  85. package/crc24.d.ts +2 -0
  86. package/crc32.d.ts +2 -0
  87. package/crc32mpeg.d.ts +2 -0
  88. package/crc32mpeg2.d.ts +2 -0
  89. package/crc5.d.ts +2 -0
  90. package/crc8.d.ts +2 -0
  91. package/crc81wire.d.ts +2 -0
  92. package/crc8dvbs2.d.ts +2 -0
  93. package/crcjam.d.ts +2 -0
  94. package/create_buffer.d.ts +5 -0
  95. package/define_crc.d.ts +2 -0
  96. package/index.d.ts +42 -0
  97. package/mjs/calculators/crc1.d.ts +3 -0
  98. package/mjs/calculators/crc1.js +10 -0
  99. package/mjs/calculators/crc16.d.ts +3 -0
  100. package/mjs/calculators/crc16.js +36 -0
  101. package/mjs/calculators/crc16ccitt.d.ts +3 -0
  102. package/mjs/calculators/crc16ccitt.js +36 -0
  103. package/mjs/calculators/crc16kermit.d.ts +3 -0
  104. package/mjs/calculators/crc16kermit.js +36 -0
  105. package/mjs/calculators/crc16modbus.d.ts +3 -0
  106. package/mjs/calculators/crc16modbus.js +36 -0
  107. package/mjs/calculators/crc16xmodem.d.ts +3 -0
  108. package/mjs/calculators/crc16xmodem.js +16 -0
  109. package/mjs/calculators/crc24.d.ts +3 -0
  110. package/mjs/calculators/crc24.js +43 -0
  111. package/mjs/calculators/crc32.d.ts +3 -0
  112. package/mjs/calculators/crc32.js +47 -0
  113. package/mjs/calculators/crc32mpeg2.d.ts +3 -0
  114. package/mjs/calculators/crc32mpeg2.js +46 -0
  115. package/mjs/calculators/crc5.d.ts +3 -0
  116. package/mjs/calculators/crc5.js +35 -0
  117. package/mjs/calculators/crc8.d.ts +3 -0
  118. package/mjs/calculators/crc8.js +30 -0
  119. package/mjs/calculators/crc81wire.d.ts +3 -0
  120. package/mjs/calculators/crc81wire.js +30 -0
  121. package/mjs/calculators/crc8dvbs2.d.ts +3 -0
  122. package/mjs/calculators/crc8dvbs2.js +30 -0
  123. package/mjs/calculators/crcjam.d.ts +3 -0
  124. package/mjs/calculators/crcjam.js +46 -0
  125. package/mjs/crc1.d.ts +2 -0
  126. package/mjs/crc1.js +3 -0
  127. package/mjs/crc16.d.ts +2 -0
  128. package/mjs/crc16.js +3 -0
  129. package/mjs/crc16ccitt.d.ts +2 -0
  130. package/mjs/crc16ccitt.js +3 -0
  131. package/mjs/crc16kermit.d.ts +2 -0
  132. package/mjs/crc16kermit.js +3 -0
  133. package/mjs/crc16modbus.d.ts +2 -0
  134. package/mjs/crc16modbus.js +3 -0
  135. package/mjs/crc16xmodem.d.ts +2 -0
  136. package/mjs/crc16xmodem.js +3 -0
  137. package/mjs/crc24.d.ts +2 -0
  138. package/mjs/crc24.js +3 -0
  139. package/mjs/crc32.d.ts +2 -0
  140. package/mjs/crc32.js +3 -0
  141. package/mjs/crc32mpeg2.d.ts +2 -0
  142. package/mjs/crc32mpeg2.js +3 -0
  143. package/mjs/crc5.d.ts +2 -0
  144. package/mjs/crc5.js +3 -0
  145. package/mjs/crc8.d.ts +2 -0
  146. package/mjs/crc8.js +3 -0
  147. package/mjs/crc81wire.d.ts +2 -0
  148. package/mjs/crc81wire.js +3 -0
  149. package/mjs/crc8dvbs2.d.ts +2 -0
  150. package/mjs/crc8dvbs2.js +3 -0
  151. package/mjs/crcjam.d.ts +2 -0
  152. package/mjs/crcjam.js +3 -0
  153. package/mjs/create_buffer.d.ts +5 -0
  154. package/mjs/create_buffer.js +5 -0
  155. package/mjs/define_crc.d.ts +2 -0
  156. package/mjs/define_crc.js +8 -0
  157. package/mjs/index.d.ts +42 -0
  158. package/mjs/index.js +41 -0
  159. package/mjs/package.json +3 -0
  160. package/mjs/types.d.ts +11 -0
  161. package/mjs/types.js +1 -0
  162. package/package.json +191 -4
  163. package/types.d.ts +11 -0
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // Generated by `./pycrc.py --algorithm=table-driven --model=dallas-1-wire --generate=c`
4
+ let TABLE = [
5
+ 0x00, 0x5e, 0xbc, 0xe2, 0x61, 0x3f, 0xdd, 0x83, 0xc2, 0x9c, 0x7e, 0x20, 0xa3, 0xfd, 0x1f, 0x41,
6
+ 0x9d, 0xc3, 0x21, 0x7f, 0xfc, 0xa2, 0x40, 0x1e, 0x5f, 0x01, 0xe3, 0xbd, 0x3e, 0x60, 0x82, 0xdc,
7
+ 0x23, 0x7d, 0x9f, 0xc1, 0x42, 0x1c, 0xfe, 0xa0, 0xe1, 0xbf, 0x5d, 0x03, 0x80, 0xde, 0x3c, 0x62,
8
+ 0xbe, 0xe0, 0x02, 0x5c, 0xdf, 0x81, 0x63, 0x3d, 0x7c, 0x22, 0xc0, 0x9e, 0x1d, 0x43, 0xa1, 0xff,
9
+ 0x46, 0x18, 0xfa, 0xa4, 0x27, 0x79, 0x9b, 0xc5, 0x84, 0xda, 0x38, 0x66, 0xe5, 0xbb, 0x59, 0x07,
10
+ 0xdb, 0x85, 0x67, 0x39, 0xba, 0xe4, 0x06, 0x58, 0x19, 0x47, 0xa5, 0xfb, 0x78, 0x26, 0xc4, 0x9a,
11
+ 0x65, 0x3b, 0xd9, 0x87, 0x04, 0x5a, 0xb8, 0xe6, 0xa7, 0xf9, 0x1b, 0x45, 0xc6, 0x98, 0x7a, 0x24,
12
+ 0xf8, 0xa6, 0x44, 0x1a, 0x99, 0xc7, 0x25, 0x7b, 0x3a, 0x64, 0x86, 0xd8, 0x5b, 0x05, 0xe7, 0xb9,
13
+ 0x8c, 0xd2, 0x30, 0x6e, 0xed, 0xb3, 0x51, 0x0f, 0x4e, 0x10, 0xf2, 0xac, 0x2f, 0x71, 0x93, 0xcd,
14
+ 0x11, 0x4f, 0xad, 0xf3, 0x70, 0x2e, 0xcc, 0x92, 0xd3, 0x8d, 0x6f, 0x31, 0xb2, 0xec, 0x0e, 0x50,
15
+ 0xaf, 0xf1, 0x13, 0x4d, 0xce, 0x90, 0x72, 0x2c, 0x6d, 0x33, 0xd1, 0x8f, 0x0c, 0x52, 0xb0, 0xee,
16
+ 0x32, 0x6c, 0x8e, 0xd0, 0x53, 0x0d, 0xef, 0xb1, 0xf0, 0xae, 0x4c, 0x12, 0x91, 0xcf, 0x2d, 0x73,
17
+ 0xca, 0x94, 0x76, 0x28, 0xab, 0xf5, 0x17, 0x49, 0x08, 0x56, 0xb4, 0xea, 0x69, 0x37, 0xd5, 0x8b,
18
+ 0x57, 0x09, 0xeb, 0xb5, 0x36, 0x68, 0x8a, 0xd4, 0x95, 0xcb, 0x29, 0x77, 0xf4, 0xaa, 0x48, 0x16,
19
+ 0xe9, 0xb7, 0x55, 0x0b, 0x88, 0xd6, 0x34, 0x6a, 0x2b, 0x75, 0x97, 0xc9, 0x4a, 0x14, 0xf6, 0xa8,
20
+ 0x74, 0x2a, 0xc8, 0x96, 0x15, 0x4b, 0xa9, 0xf7, 0xb6, 0xe8, 0x0a, 0x54, 0xd7, 0x89, 0x6b, 0x35,
21
+ ];
22
+ if (typeof Int32Array !== 'undefined') {
23
+ TABLE = new Int32Array(TABLE);
24
+ }
25
+ const crc81wire = (current, previous = 0) => {
26
+ let crc = ~~previous;
27
+ for (let index = 0; index < current.length; index++) {
28
+ crc = TABLE[(crc ^ current[index]) & 0xff] & 0xff;
29
+ }
30
+ return crc;
31
+ };
32
+ exports.default = crc81wire;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // Generated by `./pycrc.py --algorithm=table-driven --generate=c --width=8 --poly=0xd5 --reflect-in=false --reflect-out=false --xor-in=0xff --xor-out=0x00`
4
+ let TABLE = [
5
+ 0x00, 0xd5, 0x7f, 0xaa, 0xfe, 0x2b, 0x81, 0x54, 0x29, 0xfc, 0x56, 0x83, 0xd7, 0x02, 0xa8, 0x7d,
6
+ 0x52, 0x87, 0x2d, 0xf8, 0xac, 0x79, 0xd3, 0x06, 0x7b, 0xae, 0x04, 0xd1, 0x85, 0x50, 0xfa, 0x2f,
7
+ 0xa4, 0x71, 0xdb, 0x0e, 0x5a, 0x8f, 0x25, 0xf0, 0x8d, 0x58, 0xf2, 0x27, 0x73, 0xa6, 0x0c, 0xd9,
8
+ 0xf6, 0x23, 0x89, 0x5c, 0x08, 0xdd, 0x77, 0xa2, 0xdf, 0x0a, 0xa0, 0x75, 0x21, 0xf4, 0x5e, 0x8b,
9
+ 0x9d, 0x48, 0xe2, 0x37, 0x63, 0xb6, 0x1c, 0xc9, 0xb4, 0x61, 0xcb, 0x1e, 0x4a, 0x9f, 0x35, 0xe0,
10
+ 0xcf, 0x1a, 0xb0, 0x65, 0x31, 0xe4, 0x4e, 0x9b, 0xe6, 0x33, 0x99, 0x4c, 0x18, 0xcd, 0x67, 0xb2,
11
+ 0x39, 0xec, 0x46, 0x93, 0xc7, 0x12, 0xb8, 0x6d, 0x10, 0xc5, 0x6f, 0xba, 0xee, 0x3b, 0x91, 0x44,
12
+ 0x6b, 0xbe, 0x14, 0xc1, 0x95, 0x40, 0xea, 0x3f, 0x42, 0x97, 0x3d, 0xe8, 0xbc, 0x69, 0xc3, 0x16,
13
+ 0xef, 0x3a, 0x90, 0x45, 0x11, 0xc4, 0x6e, 0xbb, 0xc6, 0x13, 0xb9, 0x6c, 0x38, 0xed, 0x47, 0x92,
14
+ 0xbd, 0x68, 0xc2, 0x17, 0x43, 0x96, 0x3c, 0xe9, 0x94, 0x41, 0xeb, 0x3e, 0x6a, 0xbf, 0x15, 0xc0,
15
+ 0x4b, 0x9e, 0x34, 0xe1, 0xb5, 0x60, 0xca, 0x1f, 0x62, 0xb7, 0x1d, 0xc8, 0x9c, 0x49, 0xe3, 0x36,
16
+ 0x19, 0xcc, 0x66, 0xb3, 0xe7, 0x32, 0x98, 0x4d, 0x30, 0xe5, 0x4f, 0x9a, 0xce, 0x1b, 0xb1, 0x64,
17
+ 0x72, 0xa7, 0x0d, 0xd8, 0x8c, 0x59, 0xf3, 0x26, 0x5b, 0x8e, 0x24, 0xf1, 0xa5, 0x70, 0xda, 0x0f,
18
+ 0x20, 0xf5, 0x5f, 0x8a, 0xde, 0x0b, 0xa1, 0x74, 0x09, 0xdc, 0x76, 0xa3, 0xf7, 0x22, 0x88, 0x5d,
19
+ 0xd6, 0x03, 0xa9, 0x7c, 0x28, 0xfd, 0x57, 0x82, 0xff, 0x2a, 0x80, 0x55, 0x01, 0xd4, 0x7e, 0xab,
20
+ 0x84, 0x51, 0xfb, 0x2e, 0x7a, 0xaf, 0x05, 0xd0, 0xad, 0x78, 0xd2, 0x07, 0x53, 0x86, 0x2c, 0xf9,
21
+ ];
22
+ if (typeof Int32Array !== 'undefined') {
23
+ TABLE = new Int32Array(TABLE);
24
+ }
25
+ const crc8dvbs2 = (current, previous = 0) => {
26
+ let crc = ~~previous;
27
+ for (let index = 0; index < current.length; index++) {
28
+ crc = TABLE[(crc ^ current[index]) & 0xff] & 0xff;
29
+ }
30
+ return crc;
31
+ };
32
+ exports.default = crc8dvbs2;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // Generated by `./pycrc.py --algorithm=table-driven --model=jam --generate=c`
4
+ let TABLE = [
5
+ 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3,
6
+ 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91,
7
+ 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7,
8
+ 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5,
9
+ 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b,
10
+ 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59,
11
+ 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f,
12
+ 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d,
13
+ 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433,
14
+ 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01,
15
+ 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457,
16
+ 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65,
17
+ 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb,
18
+ 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9,
19
+ 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f,
20
+ 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad,
21
+ 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683,
22
+ 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1,
23
+ 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7,
24
+ 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5,
25
+ 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b,
26
+ 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79,
27
+ 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f,
28
+ 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d,
29
+ 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713,
30
+ 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21,
31
+ 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777,
32
+ 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45,
33
+ 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db,
34
+ 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9,
35
+ 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf,
36
+ 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d,
37
+ ];
38
+ if (typeof Int32Array !== 'undefined') {
39
+ TABLE = new Int32Array(TABLE);
40
+ }
41
+ const crcjam = (current, previous = -1) => {
42
+ let crc = previous === 0 ? 0 : ~~previous;
43
+ for (let index = 0; index < current.length; index++) {
44
+ crc = TABLE[(crc ^ current[index]) & 0xff] ^ (crc >>> 8);
45
+ }
46
+ return crc;
47
+ };
48
+ exports.default = crcjam;
package/cjs/crc1.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc1_js_1 = __importDefault(require("./calculators/crc1.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc1', crc1_js_1.default);
package/cjs/crc16.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc16_js_1 = __importDefault(require("./calculators/crc16.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-16', crc16_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc16ccitt_js_1 = __importDefault(require("./calculators/crc16ccitt.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('ccitt', crc16ccitt_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc16kermit_js_1 = __importDefault(require("./calculators/crc16kermit.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('kermit', crc16kermit_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc16modbus_js_1 = __importDefault(require("./calculators/crc16modbus.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-16-modbus', crc16modbus_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc16xmodem_js_1 = __importDefault(require("./calculators/crc16xmodem.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('xmodem', crc16xmodem_js_1.default);
package/cjs/crc24.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc24_js_1 = __importDefault(require("./calculators/crc24.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-24', crc24_js_1.default);
package/cjs/crc32.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc32_js_1 = __importDefault(require("./calculators/crc32.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-32', crc32_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc32mpeg2_js_1 = __importDefault(require("./calculators/crc32mpeg2.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-32-mpeg', crc32mpeg2_js_1.default);
package/cjs/crc5.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc5_js_1 = __importDefault(require("./calculators/crc5.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-5', crc5_js_1.default);
package/cjs/crc8.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc8_js_1 = __importDefault(require("./calculators/crc8.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-8', crc8_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc81wire_js_1 = __importDefault(require("./calculators/crc81wire.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('dallas-1-wire', crc81wire_js_1.default);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crc8dvbs2_js_1 = __importDefault(require("./calculators/crc8dvbs2.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('crc-8-dvbs2', crc8dvbs2_js_1.default);
package/cjs/crcjam.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const crcjam_js_1 = __importDefault(require("./calculators/crcjam.js"));
7
+ const define_crc_js_1 = __importDefault(require("./define_crc.js"));
8
+ exports.default = (0, define_crc_js_1.default)('jam', crcjam_js_1.default);
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /* eslint-disable @typescript-eslint/no-explicit-any */
4
+ /* eslint-disable no-prototype-builtins */
5
+ const buffer_1 = require("buffer");
6
+ const createBuffer = (value, encoding) => buffer_1.Buffer.from(value, encoding);
7
+ exports.default = createBuffer;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const create_buffer_js_1 = __importDefault(require("./create_buffer.js"));
7
+ function defineCrc(model, calculator) {
8
+ const result = (value, previous) => calculator((0, create_buffer_js_1.default)(value), previous) >>> 0;
9
+ result.signed = (value, previous) => calculator((0, create_buffer_js_1.default)(value), previous);
10
+ result.unsigned = result;
11
+ result.model = model;
12
+ return result;
13
+ }
14
+ exports.default = defineCrc;
package/cjs/index.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.crcjam = exports.crc32mpeg2 = exports.crc32 = exports.crc24 = exports.crc16kermit = exports.crc16xmodem = exports.crc16modbus = exports.crc16ccitt = exports.crc16 = exports.crc8dvbs2 = exports.crc81wire = exports.crc8 = exports.crc1 = void 0;
7
+ const crc1_js_1 = __importDefault(require("./crc1.js"));
8
+ exports.crc1 = crc1_js_1.default;
9
+ const crc8_js_1 = __importDefault(require("./crc8.js"));
10
+ exports.crc8 = crc8_js_1.default;
11
+ const crc81wire_js_1 = __importDefault(require("./crc81wire.js"));
12
+ exports.crc81wire = crc81wire_js_1.default;
13
+ const crc8dvbs2_js_1 = __importDefault(require("./crc8dvbs2.js"));
14
+ exports.crc8dvbs2 = crc8dvbs2_js_1.default;
15
+ const crc16_js_1 = __importDefault(require("./crc16.js"));
16
+ exports.crc16 = crc16_js_1.default;
17
+ const crc16ccitt_js_1 = __importDefault(require("./crc16ccitt.js"));
18
+ exports.crc16ccitt = crc16ccitt_js_1.default;
19
+ const crc16modbus_js_1 = __importDefault(require("./crc16modbus.js"));
20
+ exports.crc16modbus = crc16modbus_js_1.default;
21
+ const crc16xmodem_js_1 = __importDefault(require("./crc16xmodem.js"));
22
+ exports.crc16xmodem = crc16xmodem_js_1.default;
23
+ const crc16kermit_js_1 = __importDefault(require("./crc16kermit.js"));
24
+ exports.crc16kermit = crc16kermit_js_1.default;
25
+ const crc24_js_1 = __importDefault(require("./crc24.js"));
26
+ exports.crc24 = crc24_js_1.default;
27
+ const crc32_js_1 = __importDefault(require("./crc32.js"));
28
+ exports.crc32 = crc32_js_1.default;
29
+ const crc32mpeg2_js_1 = __importDefault(require("./crc32mpeg2.js"));
30
+ exports.crc32mpeg2 = crc32mpeg2_js_1.default;
31
+ const crcjam_js_1 = __importDefault(require("./crcjam.js"));
32
+ exports.crcjam = crcjam_js_1.default;
33
+ exports.default = {
34
+ crc1: crc1_js_1.default,
35
+ crc8: crc8_js_1.default,
36
+ crc81wire: crc81wire_js_1.default,
37
+ crc8dvbs2: crc8dvbs2_js_1.default,
38
+ crc16: crc16_js_1.default,
39
+ crc16ccitt: crc16ccitt_js_1.default,
40
+ crc16modbus: crc16modbus_js_1.default,
41
+ crc16xmodem: crc16xmodem_js_1.default,
42
+ crc16kermit: crc16kermit_js_1.default,
43
+ crc24: crc24_js_1.default,
44
+ crc32: crc32_js_1.default,
45
+ crc32mpeg2: crc32mpeg2_js_1.default,
46
+ crcjam: crcjam_js_1.default,
47
+ };
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
package/cjs/types.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc1').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc16').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc16ccitt').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc16kermit').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc16modbus').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc16xmodem').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc24').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc32').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc32mpeg2').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc8').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc81wire').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crc8dvbs2').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../../cjs/calculators/crcjam').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc1').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc16').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc16ccitt').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc16kermit').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc16modbus').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc16xmodem').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc24').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc32').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc32mpeg2').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc8').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc81wire').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crc8dvbs2').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,3 @@
1
+ const results = require('../cjs/crcjam').default;
2
+ module.exports = results;
3
+ module.exports.default = results;
@@ -0,0 +1,17 @@
1
+ module.exports = {
2
+ crc1: require('./crc1'),
3
+ crc8: require('./crc8'),
4
+ crc8dvbs2: require('./crc8dvbs2'),
5
+ crc81wire: require('./crc81wire'),
6
+ crc16: require('./crc16'),
7
+ crc16ccitt: require('./crc16ccitt'),
8
+ crc16modbus: require('./crc16modbus'),
9
+ crc16xmodem: require('./crc16xmodem'),
10
+ crc16kermit: require('./crc16kermit'),
11
+ crc24: require('./crc24'),
12
+ crc32: require('./crc32'),
13
+ crc32mpeg: require('./crc32mpeg2'),
14
+ crcjam: require('./crcjam'),
15
+ };
16
+
17
+ module.exports.default = module.exports;
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
package/crc1.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc16.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc24.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc32.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc32mpeg.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc5.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc8.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc81wire.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crc8dvbs2.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
package/crcjam.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: import("./types.js").CRCModule;
2
+ export default _default;
@@ -0,0 +1,5 @@
1
+ /// <reference types="node" />
2
+ import { Buffer } from 'buffer';
3
+ import { BufferInput } from './types.js';
4
+ declare const createBuffer: (value: BufferInput, encoding?: BufferEncoding) => Buffer;
5
+ export default createBuffer;
@@ -0,0 +1,2 @@
1
+ import { CRCCalculator, CRCModule } from './types.js';
2
+ export default function defineCrc(model: string, calculator: CRCCalculator<Uint8Array>): CRCModule;
package/index.d.ts ADDED
@@ -0,0 +1,42 @@
1
+ import crc1 from './crc1.js';
2
+ import crc8 from './crc8.js';
3
+ import crc81wire from './crc81wire.js';
4
+ import crc8dvbs2 from './crc8dvbs2.js';
5
+ import crc16 from './crc16.js';
6
+ import crc16ccitt from './crc16ccitt.js';
7
+ import crc16modbus from './crc16modbus.js';
8
+ import crc16xmodem from './crc16xmodem.js';
9
+ import crc16kermit from './crc16kermit.js';
10
+ import crc24 from './crc24.js';
11
+ import crc32 from './crc32.js';
12
+ import crc32mpeg2 from './crc32mpeg2.js';
13
+ import crcjam from './crcjam.js';
14
+ export { crc1 };
15
+ export { crc8 };
16
+ export { crc81wire };
17
+ export { crc8dvbs2 };
18
+ export { crc16 };
19
+ export { crc16ccitt };
20
+ export { crc16modbus };
21
+ export { crc16xmodem };
22
+ export { crc16kermit };
23
+ export { crc24 };
24
+ export { crc32 };
25
+ export { crc32mpeg2 };
26
+ export { crcjam };
27
+ declare const _default: {
28
+ crc1: import("./types.js").CRCModule;
29
+ crc8: import("./types.js").CRCModule;
30
+ crc81wire: import("./types.js").CRCModule;
31
+ crc8dvbs2: import("./types.js").CRCModule;
32
+ crc16: import("./types.js").CRCModule;
33
+ crc16ccitt: import("./types.js").CRCModule;
34
+ crc16modbus: import("./types.js").CRCModule;
35
+ crc16xmodem: import("./types.js").CRCModule;
36
+ crc16kermit: import("./types.js").CRCModule;
37
+ crc24: import("./types.js").CRCModule;
38
+ crc32: import("./types.js").CRCModule;
39
+ crc32mpeg2: import("./types.js").CRCModule;
40
+ crcjam: import("./types.js").CRCModule;
41
+ };
42
+ export default _default;