encoder.js 506 B

1234567891011121314151617181920212223
  1. 'use strict';
  2. import _constants from './constants'
  3. // Encode data string
  4. var encode = function encode(data, structure, separator) {
  5. var encoded = data.split('').map(function(val, idx) {
  6. return _constants.BINARIES[structure[idx]];
  7. }).map(function(val, idx) {
  8. return val ? val[data[idx]] : '';
  9. });
  10. if (separator) {
  11. var last = data.length - 1;
  12. encoded = encoded.map(function(val, idx) {
  13. return idx < last ? val + separator : val;
  14. });
  15. }
  16. return encoded.join('');
  17. };
  18. export default encode