Rename themes -> flavours ? ?
This commit is contained in:
33
app/javascript/flavours/glitch/util/link_header.js
Normal file
33
app/javascript/flavours/glitch/util/link_header.js
Normal file
@@ -0,0 +1,33 @@
|
||||
import Link from 'http-link-header';
|
||||
import querystring from 'querystring';
|
||||
|
||||
Link.parseAttrs = (link, parts) => {
|
||||
let match = null;
|
||||
let attr = '';
|
||||
let value = '';
|
||||
let attrs = '';
|
||||
|
||||
let uriAttrs = /<(.*)>;\s*(.*)/gi.exec(parts);
|
||||
|
||||
if(uriAttrs) {
|
||||
attrs = uriAttrs[2];
|
||||
link = Link.parseParams(link, uriAttrs[1]);
|
||||
}
|
||||
|
||||
while(match = Link.attrPattern.exec(attrs)) { // eslint-disable-line no-cond-assign
|
||||
attr = match[1].toLowerCase();
|
||||
value = match[4] || match[3] || match[2];
|
||||
|
||||
if( /\*$/.test(attr)) {
|
||||
Link.setAttr(link, attr, Link.parseExtendedValue(value));
|
||||
} else if(/%/.test(value)) {
|
||||
Link.setAttr(link, attr, querystring.decode(value));
|
||||
} else {
|
||||
Link.setAttr(link, attr, value);
|
||||
}
|
||||
}
|
||||
|
||||
return link;
|
||||
};
|
||||
|
||||
export default Link;
|
Reference in New Issue
Block a user