code: function getKeyValueChunks(raw) {
    var chunks = [];
    var offset = 0;
    var sep = ';';
    var hasUnclosedUrl = /url\([^\)]+$/;
    var chunk = '';
    var nextSplit;
    while (offset < raw.length) {
      nextSplit = raw.indexOf(sep, offset);
      if (nextSplit === -1) { nextSplit = raw.length; }
  
      chunk += raw.substring(offset, nextSplit);
  
      // data URIs can contain semicolons, so make sure we get the whole thing
      if (hasUnclosedUrl.test(chunk)) {
        chunk += ';';
        offset = nextSplit + 1;
        continue;
      }
  
      chunks.push(chunk);
      chunk = '';
      offset = nextSplit + 1;
    }
  
    return chunks;
  }
docs: /*
  
  `getKeyValueChunks`
  ----
  
  Split a string into chunks matching `<key>: <value>`
  
   /*:: declare function getKeyValueChunks (raw: string): Array<string>