constants.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. 'use strict';
  2. // Standard start end and middle bits
  3. var SIDE_BIN = '101';
  4. var MIDDLE_BIN = '01010';
  5. var BINARIES = {
  6. 'L': [ // The L (left) type of encoding
  7. '0001101', '0011001', '0010011', '0111101', '0100011', '0110001', '0101111', '0111011', '0110111',
  8. '0001011'
  9. ],
  10. 'G': [ // The G type of encoding
  11. '0100111', '0110011', '0011011', '0100001', '0011101', '0111001', '0000101', '0010001', '0001001',
  12. '0010111'
  13. ],
  14. 'R': [ // The R (right) type of encoding
  15. '1110010', '1100110', '1101100', '1000010', '1011100', '1001110', '1010000', '1000100', '1001000',
  16. '1110100'
  17. ],
  18. 'O': [ // The O (odd) encoding for UPC-E
  19. '0001101', '0011001', '0010011', '0111101', '0100011', '0110001', '0101111', '0111011', '0110111',
  20. '0001011'
  21. ],
  22. 'E': [ // The E (even) encoding for UPC-E
  23. '0100111', '0110011', '0011011', '0100001', '0011101', '0111001', '0000101', '0010001', '0001001',
  24. '0010111'
  25. ]
  26. };
  27. // Define the EAN-2 structure
  28. var EAN2_STRUCTURE = ['LL', 'LG', 'GL', 'GG'];
  29. // Define the EAN-5 structure
  30. var EAN5_STRUCTURE = ['GGLLL', 'GLGLL', 'GLLGL', 'GLLLG', 'LGGLL', 'LLGGL', 'LLLGG', 'LGLGL', 'LGLLG', 'LLGLG'];
  31. // Define the EAN-13 structure
  32. var EAN13_STRUCTURE = ['LLLLLL', 'LLGLGG', 'LLGGLG', 'LLGGGL', 'LGLLGG', 'LGGLLG', 'LGGGLL', 'LGLGLG', 'LGLGGL',
  33. 'LGGLGL'
  34. ];
  35. export default {
  36. SIDE_BIN,
  37. MIDDLE_BIN,
  38. BINARIES,
  39. EAN2_STRUCTURE,
  40. EAN5_STRUCTURE,
  41. EAN13_STRUCTURE
  42. }