forked from postmanlabs/httpsnippet-fsless
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhelpers.js
More file actions
85 lines (72 loc) · 1.55 KB
/
helpers.js
File metadata and controls
85 lines (72 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
'use strict'
var convert = function (obj, indent, last_indent) {
var i, result
if (!last_indent) {
last_indent = ''
}
switch (Object.prototype.toString.call(obj)) {
case '[object Null]':
result = 'null'
break
case '[object Undefined]':
result = 'null'
break
case '[object String]':
result = "'" + obj.replace(/\\/g, '\\\\').replace(/\'/g, "\'") + "'"
break
case '[object Number]':
result = obj.toString()
break
case '[object Array]':
result = []
obj.map(function (item) {
result.push(convert(item, indent + indent, indent))
})
result = 'array(\n' + indent + result.join(',\n' + indent) + '\n' + last_indent + ')'
break
case '[object Object]':
result = []
for (i in obj) {
if (obj.hasOwnProperty(i)) {
result.push(convert(i, indent) + ' => ' + convert(obj[i], indent + indent, indent))
}
}
result = 'array(\n' + indent + result.join(',\n' + indent) + '\n' + last_indent + ')'
break
default:
result = 'null'
}
return result
}
module.exports = {
convert: convert,
methods: [
'ACL',
'BASELINE_CONTROL',
'CHECKIN',
'CHECKOUT',
'CONNECT',
'COPY',
'DELETE',
'GET',
'HEAD',
'LABEL',
'LOCK',
'MERGE',
'MKACTIVITY',
'MKCOL',
'MKWORKSPACE',
'MOVE',
'OPTIONS',
'POST',
'PROPFIND',
'PROPPATCH',
'PUT',
'REPORT',
'TRACE',
'UNCHECKOUT',
'UNLOCK',
'UPDATE',
'VERSION_CONTROL'
]
}