OverviewFilesCommitsIssuesDocsReleasesPeers

keet-deobfuscated / @holepunchto / keet-core-schemas / lib / config / ops.js

29 lines · javascript ref:
const e = require("compact-encoding"),
  n = {
    TYPE: 11,
    preencode(n, d) {
      ;(n.end++, e.string.preencode(n, d.key), d.value && e.string.preencode(n, d.value))
    },
    encode(n, d) {
      const o = n.start++
      e.string.encode(n, d.key)
      let r = 0
      ;(d.value && ((r |= 1), e.string.encode(n, d.value)), (n.buffer[o] = r))
    },
    decode(n) {
      const d = e.uint.decode(n)
      return { key: e.string.decode(n), value: 1 & d ? e.string.decode(n) : null }
    },
  },
  d = {
    TYPE: 26,
    preencode(n, d) {
      ;(e.string.preencode(n, d.key), e.buffer.preencode(n, d.value))
    },
    encode(n, d) {
      ;(e.string.encode(n, d.key), e.buffer.encode(n, d.value))
    },
    decode: (n) => ({ key: e.string.decode(n), value: e.buffer.decode(n) }),
  }
module.exports = { UpdateConfigOperationV1: n, UpdateConfigOperationV2: d }