@fireberry/sdk 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/{node_modules/asynckit/LICENSE → LICENSE.md} +2 -2
  2. package/README.md +85 -37
  3. package/dist/cjs/constants/index.d.ts +13 -0
  4. package/dist/cjs/constants/index.d.ts.map +1 -0
  5. package/dist/cjs/constants/index.js +16 -0
  6. package/dist/cjs/constants/index.js.map +1 -0
  7. package/dist/cjs/context/context.d.ts +7 -0
  8. package/dist/cjs/context/context.d.ts.map +1 -0
  9. package/dist/cjs/context/context.js +11 -0
  10. package/dist/cjs/context/context.js.map +1 -0
  11. package/dist/cjs/context/index.d.ts +2 -0
  12. package/dist/cjs/context/index.d.ts.map +1 -0
  13. package/dist/cjs/context/index.js.map +1 -0
  14. package/dist/cjs/fireberrySDK.client.d.ts +18 -0
  15. package/dist/cjs/fireberrySDK.client.d.ts.map +1 -0
  16. package/dist/cjs/fireberrySDK.client.js +66 -0
  17. package/dist/cjs/fireberrySDK.client.js.map +1 -0
  18. package/dist/cjs/iframeMessageManager.d.ts +12 -0
  19. package/dist/cjs/iframeMessageManager.d.ts.map +1 -0
  20. package/dist/cjs/iframeMessageManager.js +68 -0
  21. package/dist/cjs/iframeMessageManager.js.map +1 -0
  22. package/dist/cjs/types/index.d.ts +67 -0
  23. package/dist/cjs/types/index.d.ts.map +1 -0
  24. package/dist/{fireberryAPI/types.js → cjs/types/index.js} +1 -1
  25. package/dist/cjs/types/index.js.map +1 -0
  26. package/dist/esm/constants/index.d.ts +13 -0
  27. package/dist/esm/constants/index.d.ts.map +1 -0
  28. package/dist/esm/constants/index.js +13 -0
  29. package/dist/esm/constants/index.js.map +1 -0
  30. package/dist/esm/context/context.d.ts +7 -0
  31. package/dist/esm/context/context.d.ts.map +1 -0
  32. package/dist/esm/context/context.js +7 -0
  33. package/dist/esm/context/context.js.map +1 -0
  34. package/dist/esm/context/index.d.ts +2 -0
  35. package/dist/esm/context/index.d.ts.map +1 -0
  36. package/dist/esm/context/index.js +2 -0
  37. package/dist/esm/context/index.js.map +1 -0
  38. package/dist/esm/fireberrySDK.client.d.ts +18 -0
  39. package/dist/esm/fireberrySDK.client.d.ts.map +1 -0
  40. package/dist/esm/fireberrySDK.client.js +62 -0
  41. package/dist/esm/fireberrySDK.client.js.map +1 -0
  42. package/dist/esm/iframeMessageManager.d.ts +12 -0
  43. package/dist/esm/iframeMessageManager.d.ts.map +1 -0
  44. package/dist/esm/iframeMessageManager.js +64 -0
  45. package/dist/esm/iframeMessageManager.js.map +1 -0
  46. package/dist/esm/types/index.d.ts +67 -0
  47. package/dist/esm/types/index.d.ts.map +1 -0
  48. package/dist/esm/types/index.js +2 -0
  49. package/dist/esm/types/index.js.map +1 -0
  50. package/package.json +54 -27
  51. package/.eslintrc.json +0 -36
  52. package/.prettierrc.json +0 -7
  53. package/.vscode/settings.json +0 -35
  54. package/dist/base.fireberrySDK.d.ts +0 -7
  55. package/dist/base.fireberrySDK.js +0 -10
  56. package/dist/base.fireberrySDK.js.map +0 -1
  57. package/dist/context/context.d.ts +0 -13
  58. package/dist/context/context.js +0 -22
  59. package/dist/context/context.js.map +0 -1
  60. package/dist/context/context.record.test.d.ts +0 -1
  61. package/dist/context/context.record.test.js +0 -45
  62. package/dist/context/context.record.test.js.map +0 -1
  63. package/dist/context/index.d.ts +0 -5
  64. package/dist/context/index.js.map +0 -1
  65. package/dist/context/record.d.ts +0 -9
  66. package/dist/context/record.js +0 -33
  67. package/dist/context/record.js.map +0 -1
  68. package/dist/context/user.d.ts +0 -5
  69. package/dist/context/user.js +0 -27
  70. package/dist/context/user.js.map +0 -1
  71. package/dist/fireberry.sdk.d.ts +0 -4
  72. package/dist/fireberry.sdk.js +0 -13
  73. package/dist/fireberry.sdk.js.map +0 -1
  74. package/dist/fireberryAPI/fireberryV2Api.d.ts +0 -17
  75. package/dist/fireberryAPI/fireberryV2Api.js +0 -54
  76. package/dist/fireberryAPI/fireberryV2Api.js.map +0 -1
  77. package/dist/fireberryAPI/fireberryV2Api.test.d.ts +0 -1
  78. package/dist/fireberryAPI/fireberryV2Api.test.js +0 -56
  79. package/dist/fireberryAPI/fireberryV2Api.test.js.map +0 -1
  80. package/dist/fireberryAPI/index.d.ts +0 -2
  81. package/dist/fireberryAPI/index.js +0 -21
  82. package/dist/fireberryAPI/index.js.map +0 -1
  83. package/dist/fireberryAPI/types.d.ts +0 -10
  84. package/dist/fireberryAPI/types.js.map +0 -1
  85. package/dist/fireberrySDK.client.d.ts +0 -5
  86. package/dist/fireberrySDK.client.js +0 -13
  87. package/dist/fireberrySDK.client.js.map +0 -1
  88. package/dist/fireberrySDK.server.d.ts +0 -6
  89. package/dist/fireberrySDK.server.js +0 -12
  90. package/dist/fireberrySDK.server.js.map +0 -1
  91. package/dist/index.d.ts +0 -6
  92. package/dist/index.js +0 -25
  93. package/dist/index.js.map +0 -1
  94. package/dist/utils/axios.util.d.ts +0 -6
  95. package/dist/utils/axios.util.js +0 -24
  96. package/dist/utils/axios.util.js.map +0 -1
  97. package/dist/utils/index.d.ts +0 -2
  98. package/dist/utils/index.js +0 -19
  99. package/dist/utils/index.js.map +0 -1
  100. package/dist/utils/queryParam.util.d.ts +0 -1
  101. package/dist/utils/queryParam.util.js +0 -12
  102. package/dist/utils/queryParam.util.js.map +0 -1
  103. package/jest.config.ts +0 -10
  104. package/node_modules/asynckit/README.md +0 -233
  105. package/node_modules/asynckit/bench.js +0 -76
  106. package/node_modules/asynckit/index.js +0 -6
  107. package/node_modules/asynckit/lib/abort.js +0 -29
  108. package/node_modules/asynckit/lib/async.js +0 -34
  109. package/node_modules/asynckit/lib/defer.js +0 -26
  110. package/node_modules/asynckit/lib/iterate.js +0 -75
  111. package/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  112. package/node_modules/asynckit/lib/readable_parallel.js +0 -25
  113. package/node_modules/asynckit/lib/readable_serial.js +0 -25
  114. package/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  115. package/node_modules/asynckit/lib/state.js +0 -37
  116. package/node_modules/asynckit/lib/streamify.js +0 -141
  117. package/node_modules/asynckit/lib/terminator.js +0 -29
  118. package/node_modules/asynckit/package.json +0 -63
  119. package/node_modules/asynckit/parallel.js +0 -43
  120. package/node_modules/asynckit/serial.js +0 -17
  121. package/node_modules/asynckit/serialOrdered.js +0 -75
  122. package/node_modules/asynckit/stream.js +0 -21
  123. package/node_modules/axios/CHANGELOG.md +0 -874
  124. package/node_modules/axios/LICENSE +0 -7
  125. package/node_modules/axios/MIGRATION_GUIDE.md +0 -3
  126. package/node_modules/axios/README.md +0 -1650
  127. package/node_modules/axios/SECURITY.md +0 -6
  128. package/node_modules/axios/dist/axios.js +0 -3448
  129. package/node_modules/axios/dist/axios.js.map +0 -1
  130. package/node_modules/axios/dist/axios.min.js +0 -2
  131. package/node_modules/axios/dist/axios.min.js.map +0 -1
  132. package/node_modules/axios/dist/browser/axios.cjs +0 -3258
  133. package/node_modules/axios/dist/browser/axios.cjs.map +0 -1
  134. package/node_modules/axios/dist/esm/axios.js +0 -3281
  135. package/node_modules/axios/dist/esm/axios.js.map +0 -1
  136. package/node_modules/axios/dist/esm/axios.min.js +0 -2
  137. package/node_modules/axios/dist/esm/axios.min.js.map +0 -1
  138. package/node_modules/axios/dist/node/axios.cjs +0 -4354
  139. package/node_modules/axios/dist/node/axios.cjs.map +0 -1
  140. package/node_modules/axios/index.d.cts +0 -542
  141. package/node_modules/axios/index.d.ts +0 -559
  142. package/node_modules/axios/index.js +0 -43
  143. package/node_modules/axios/lib/adapters/README.md +0 -37
  144. package/node_modules/axios/lib/adapters/adapters.js +0 -77
  145. package/node_modules/axios/lib/adapters/http.js +0 -685
  146. package/node_modules/axios/lib/adapters/xhr.js +0 -260
  147. package/node_modules/axios/lib/axios.js +0 -89
  148. package/node_modules/axios/lib/cancel/CancelToken.js +0 -121
  149. package/node_modules/axios/lib/cancel/CanceledError.js +0 -25
  150. package/node_modules/axios/lib/cancel/isCancel.js +0 -5
  151. package/node_modules/axios/lib/core/Axios.js +0 -225
  152. package/node_modules/axios/lib/core/AxiosError.js +0 -100
  153. package/node_modules/axios/lib/core/AxiosHeaders.js +0 -298
  154. package/node_modules/axios/lib/core/InterceptorManager.js +0 -71
  155. package/node_modules/axios/lib/core/README.md +0 -8
  156. package/node_modules/axios/lib/core/buildFullPath.js +0 -21
  157. package/node_modules/axios/lib/core/dispatchRequest.js +0 -81
  158. package/node_modules/axios/lib/core/mergeConfig.js +0 -106
  159. package/node_modules/axios/lib/core/settle.js +0 -27
  160. package/node_modules/axios/lib/core/transformData.js +0 -28
  161. package/node_modules/axios/lib/defaults/index.js +0 -156
  162. package/node_modules/axios/lib/defaults/transitional.js +0 -7
  163. package/node_modules/axios/lib/env/README.md +0 -3
  164. package/node_modules/axios/lib/env/classes/FormData.js +0 -2
  165. package/node_modules/axios/lib/env/data.js +0 -1
  166. package/node_modules/axios/lib/helpers/AxiosTransformStream.js +0 -191
  167. package/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +0 -58
  168. package/node_modules/axios/lib/helpers/HttpStatusCode.js +0 -71
  169. package/node_modules/axios/lib/helpers/README.md +0 -7
  170. package/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +0 -28
  171. package/node_modules/axios/lib/helpers/bind.js +0 -7
  172. package/node_modules/axios/lib/helpers/buildURL.js +0 -63
  173. package/node_modules/axios/lib/helpers/callbackify.js +0 -16
  174. package/node_modules/axios/lib/helpers/combineURLs.js +0 -15
  175. package/node_modules/axios/lib/helpers/cookies.js +0 -42
  176. package/node_modules/axios/lib/helpers/deprecatedMethod.js +0 -26
  177. package/node_modules/axios/lib/helpers/formDataToJSON.js +0 -95
  178. package/node_modules/axios/lib/helpers/formDataToStream.js +0 -111
  179. package/node_modules/axios/lib/helpers/fromDataURI.js +0 -53
  180. package/node_modules/axios/lib/helpers/isAbsoluteURL.js +0 -15
  181. package/node_modules/axios/lib/helpers/isAxiosError.js +0 -14
  182. package/node_modules/axios/lib/helpers/isURLSameOrigin.js +0 -67
  183. package/node_modules/axios/lib/helpers/null.js +0 -2
  184. package/node_modules/axios/lib/helpers/parseHeaders.js +0 -55
  185. package/node_modules/axios/lib/helpers/parseProtocol.js +0 -6
  186. package/node_modules/axios/lib/helpers/readBlob.js +0 -15
  187. package/node_modules/axios/lib/helpers/speedometer.js +0 -55
  188. package/node_modules/axios/lib/helpers/spread.js +0 -28
  189. package/node_modules/axios/lib/helpers/throttle.js +0 -33
  190. package/node_modules/axios/lib/helpers/toFormData.js +0 -219
  191. package/node_modules/axios/lib/helpers/toURLEncodedForm.js +0 -18
  192. package/node_modules/axios/lib/helpers/validator.js +0 -91
  193. package/node_modules/axios/lib/platform/browser/classes/Blob.js +0 -3
  194. package/node_modules/axios/lib/platform/browser/classes/FormData.js +0 -3
  195. package/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +0 -4
  196. package/node_modules/axios/lib/platform/browser/index.js +0 -13
  197. package/node_modules/axios/lib/platform/common/utils.js +0 -47
  198. package/node_modules/axios/lib/platform/index.js +0 -7
  199. package/node_modules/axios/lib/platform/node/classes/FormData.js +0 -3
  200. package/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +0 -4
  201. package/node_modules/axios/lib/platform/node/index.js +0 -12
  202. package/node_modules/axios/lib/utils.js +0 -723
  203. package/node_modules/axios/package.json +0 -218
  204. package/node_modules/combined-stream/License +0 -19
  205. package/node_modules/combined-stream/Readme.md +0 -138
  206. package/node_modules/combined-stream/lib/combined_stream.js +0 -208
  207. package/node_modules/combined-stream/package.json +0 -25
  208. package/node_modules/delayed-stream/.npmignore +0 -1
  209. package/node_modules/delayed-stream/License +0 -19
  210. package/node_modules/delayed-stream/Makefile +0 -7
  211. package/node_modules/delayed-stream/Readme.md +0 -141
  212. package/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  213. package/node_modules/delayed-stream/package.json +0 -27
  214. package/node_modules/dotenv/CHANGELOG.md +0 -475
  215. package/node_modules/dotenv/LICENSE +0 -23
  216. package/node_modules/dotenv/README-es.md +0 -448
  217. package/node_modules/dotenv/README.md +0 -728
  218. package/node_modules/dotenv/config.d.ts +0 -1
  219. package/node_modules/dotenv/config.js +0 -9
  220. package/node_modules/dotenv/lib/cli-options.js +0 -11
  221. package/node_modules/dotenv/lib/env-options.js +0 -24
  222. package/node_modules/dotenv/lib/main.d.ts +0 -153
  223. package/node_modules/dotenv/lib/main.js +0 -361
  224. package/node_modules/dotenv/package.json +0 -65
  225. package/node_modules/follow-redirects/LICENSE +0 -18
  226. package/node_modules/follow-redirects/README.md +0 -155
  227. package/node_modules/follow-redirects/debug.js +0 -15
  228. package/node_modules/follow-redirects/http.js +0 -1
  229. package/node_modules/follow-redirects/https.js +0 -1
  230. package/node_modules/follow-redirects/index.js +0 -672
  231. package/node_modules/follow-redirects/package.json +0 -58
  232. package/node_modules/form-data/License +0 -19
  233. package/node_modules/form-data/README.md.bak +0 -358
  234. package/node_modules/form-data/Readme.md +0 -358
  235. package/node_modules/form-data/index.d.ts +0 -62
  236. package/node_modules/form-data/lib/browser.js +0 -2
  237. package/node_modules/form-data/lib/form_data.js +0 -501
  238. package/node_modules/form-data/lib/populate.js +0 -10
  239. package/node_modules/form-data/package.json +0 -68
  240. package/node_modules/mime-db/HISTORY.md +0 -507
  241. package/node_modules/mime-db/LICENSE +0 -23
  242. package/node_modules/mime-db/README.md +0 -100
  243. package/node_modules/mime-db/db.json +0 -8519
  244. package/node_modules/mime-db/index.js +0 -12
  245. package/node_modules/mime-db/package.json +0 -60
  246. package/node_modules/mime-types/HISTORY.md +0 -397
  247. package/node_modules/mime-types/LICENSE +0 -23
  248. package/node_modules/mime-types/README.md +0 -113
  249. package/node_modules/mime-types/index.js +0 -188
  250. package/node_modules/mime-types/package.json +0 -44
  251. package/node_modules/proxy-from-env/.eslintrc +0 -29
  252. package/node_modules/proxy-from-env/.travis.yml +0 -10
  253. package/node_modules/proxy-from-env/LICENSE +0 -20
  254. package/node_modules/proxy-from-env/README.md +0 -131
  255. package/node_modules/proxy-from-env/index.js +0 -108
  256. package/node_modules/proxy-from-env/package.json +0 -34
  257. package/node_modules/proxy-from-env/test.js +0 -483
  258. package/src/base.fireberrySDK.ts +0 -7
  259. package/src/context/context.record.test.ts +0 -47
  260. package/src/context/context.ts +0 -28
  261. package/src/context/index.ts +0 -6
  262. package/src/context/record.ts +0 -22
  263. package/src/context/user.ts +0 -15
  264. package/src/fireberry.sdk.ts +0 -14
  265. package/src/fireberryAPI/fireberryV2Api.test.ts +0 -57
  266. package/src/fireberryAPI/fireberryV2Api.ts +0 -61
  267. package/src/fireberryAPI/index.ts +0 -2
  268. package/src/fireberryAPI/types.ts +0 -10
  269. package/src/fireberrySDK.client.ts +0 -10
  270. package/src/fireberrySDK.server.ts +0 -8
  271. package/src/index.ts +0 -9
  272. package/src/utils/axios.util.ts +0 -20
  273. package/src/utils/index.ts +0 -2
  274. package/src/utils/queryParam.util.ts +0 -8
  275. package/tsconfig.json +0 -123
  276. /package/dist/{context → cjs/context}/index.js +0 -0
@@ -1,723 +0,0 @@
1
- 'use strict';
2
-
3
- import bind from './helpers/bind.js';
4
-
5
- // utils is a library of generic helper functions non-specific to axios
6
-
7
- const {toString} = Object.prototype;
8
- const {getPrototypeOf} = Object;
9
-
10
- const kindOf = (cache => thing => {
11
- const str = toString.call(thing);
12
- return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());
13
- })(Object.create(null));
14
-
15
- const kindOfTest = (type) => {
16
- type = type.toLowerCase();
17
- return (thing) => kindOf(thing) === type
18
- }
19
-
20
- const typeOfTest = type => thing => typeof thing === type;
21
-
22
- /**
23
- * Determine if a value is an Array
24
- *
25
- * @param {Object} val The value to test
26
- *
27
- * @returns {boolean} True if value is an Array, otherwise false
28
- */
29
- const {isArray} = Array;
30
-
31
- /**
32
- * Determine if a value is undefined
33
- *
34
- * @param {*} val The value to test
35
- *
36
- * @returns {boolean} True if the value is undefined, otherwise false
37
- */
38
- const isUndefined = typeOfTest('undefined');
39
-
40
- /**
41
- * Determine if a value is a Buffer
42
- *
43
- * @param {*} val The value to test
44
- *
45
- * @returns {boolean} True if value is a Buffer, otherwise false
46
- */
47
- function isBuffer(val) {
48
- return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
49
- && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);
50
- }
51
-
52
- /**
53
- * Determine if a value is an ArrayBuffer
54
- *
55
- * @param {*} val The value to test
56
- *
57
- * @returns {boolean} True if value is an ArrayBuffer, otherwise false
58
- */
59
- const isArrayBuffer = kindOfTest('ArrayBuffer');
60
-
61
-
62
- /**
63
- * Determine if a value is a view on an ArrayBuffer
64
- *
65
- * @param {*} val The value to test
66
- *
67
- * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
68
- */
69
- function isArrayBufferView(val) {
70
- let result;
71
- if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
72
- result = ArrayBuffer.isView(val);
73
- } else {
74
- result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));
75
- }
76
- return result;
77
- }
78
-
79
- /**
80
- * Determine if a value is a String
81
- *
82
- * @param {*} val The value to test
83
- *
84
- * @returns {boolean} True if value is a String, otherwise false
85
- */
86
- const isString = typeOfTest('string');
87
-
88
- /**
89
- * Determine if a value is a Function
90
- *
91
- * @param {*} val The value to test
92
- * @returns {boolean} True if value is a Function, otherwise false
93
- */
94
- const isFunction = typeOfTest('function');
95
-
96
- /**
97
- * Determine if a value is a Number
98
- *
99
- * @param {*} val The value to test
100
- *
101
- * @returns {boolean} True if value is a Number, otherwise false
102
- */
103
- const isNumber = typeOfTest('number');
104
-
105
- /**
106
- * Determine if a value is an Object
107
- *
108
- * @param {*} thing The value to test
109
- *
110
- * @returns {boolean} True if value is an Object, otherwise false
111
- */
112
- const isObject = (thing) => thing !== null && typeof thing === 'object';
113
-
114
- /**
115
- * Determine if a value is a Boolean
116
- *
117
- * @param {*} thing The value to test
118
- * @returns {boolean} True if value is a Boolean, otherwise false
119
- */
120
- const isBoolean = thing => thing === true || thing === false;
121
-
122
- /**
123
- * Determine if a value is a plain Object
124
- *
125
- * @param {*} val The value to test
126
- *
127
- * @returns {boolean} True if value is a plain Object, otherwise false
128
- */
129
- const isPlainObject = (val) => {
130
- if (kindOf(val) !== 'object') {
131
- return false;
132
- }
133
-
134
- const prototype = getPrototypeOf(val);
135
- return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);
136
- }
137
-
138
- /**
139
- * Determine if a value is a Date
140
- *
141
- * @param {*} val The value to test
142
- *
143
- * @returns {boolean} True if value is a Date, otherwise false
144
- */
145
- const isDate = kindOfTest('Date');
146
-
147
- /**
148
- * Determine if a value is a File
149
- *
150
- * @param {*} val The value to test
151
- *
152
- * @returns {boolean} True if value is a File, otherwise false
153
- */
154
- const isFile = kindOfTest('File');
155
-
156
- /**
157
- * Determine if a value is a Blob
158
- *
159
- * @param {*} val The value to test
160
- *
161
- * @returns {boolean} True if value is a Blob, otherwise false
162
- */
163
- const isBlob = kindOfTest('Blob');
164
-
165
- /**
166
- * Determine if a value is a FileList
167
- *
168
- * @param {*} val The value to test
169
- *
170
- * @returns {boolean} True if value is a File, otherwise false
171
- */
172
- const isFileList = kindOfTest('FileList');
173
-
174
- /**
175
- * Determine if a value is a Stream
176
- *
177
- * @param {*} val The value to test
178
- *
179
- * @returns {boolean} True if value is a Stream, otherwise false
180
- */
181
- const isStream = (val) => isObject(val) && isFunction(val.pipe);
182
-
183
- /**
184
- * Determine if a value is a FormData
185
- *
186
- * @param {*} thing The value to test
187
- *
188
- * @returns {boolean} True if value is an FormData, otherwise false
189
- */
190
- const isFormData = (thing) => {
191
- let kind;
192
- return thing && (
193
- (typeof FormData === 'function' && thing instanceof FormData) || (
194
- isFunction(thing.append) && (
195
- (kind = kindOf(thing)) === 'formdata' ||
196
- // detect form-data instance
197
- (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')
198
- )
199
- )
200
- )
201
- }
202
-
203
- /**
204
- * Determine if a value is a URLSearchParams object
205
- *
206
- * @param {*} val The value to test
207
- *
208
- * @returns {boolean} True if value is a URLSearchParams object, otherwise false
209
- */
210
- const isURLSearchParams = kindOfTest('URLSearchParams');
211
-
212
- /**
213
- * Trim excess whitespace off the beginning and end of a string
214
- *
215
- * @param {String} str The String to trim
216
- *
217
- * @returns {String} The String freed of excess whitespace
218
- */
219
- const trim = (str) => str.trim ?
220
- str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
221
-
222
- /**
223
- * Iterate over an Array or an Object invoking a function for each item.
224
- *
225
- * If `obj` is an Array callback will be called passing
226
- * the value, index, and complete array for each item.
227
- *
228
- * If 'obj' is an Object callback will be called passing
229
- * the value, key, and complete object for each property.
230
- *
231
- * @param {Object|Array} obj The object to iterate
232
- * @param {Function} fn The callback to invoke for each item
233
- *
234
- * @param {Boolean} [allOwnKeys = false]
235
- * @returns {any}
236
- */
237
- function forEach(obj, fn, {allOwnKeys = false} = {}) {
238
- // Don't bother if no value provided
239
- if (obj === null || typeof obj === 'undefined') {
240
- return;
241
- }
242
-
243
- let i;
244
- let l;
245
-
246
- // Force an array if not already something iterable
247
- if (typeof obj !== 'object') {
248
- /*eslint no-param-reassign:0*/
249
- obj = [obj];
250
- }
251
-
252
- if (isArray(obj)) {
253
- // Iterate over array values
254
- for (i = 0, l = obj.length; i < l; i++) {
255
- fn.call(null, obj[i], i, obj);
256
- }
257
- } else {
258
- // Iterate over object keys
259
- const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);
260
- const len = keys.length;
261
- let key;
262
-
263
- for (i = 0; i < len; i++) {
264
- key = keys[i];
265
- fn.call(null, obj[key], key, obj);
266
- }
267
- }
268
- }
269
-
270
- function findKey(obj, key) {
271
- key = key.toLowerCase();
272
- const keys = Object.keys(obj);
273
- let i = keys.length;
274
- let _key;
275
- while (i-- > 0) {
276
- _key = keys[i];
277
- if (key === _key.toLowerCase()) {
278
- return _key;
279
- }
280
- }
281
- return null;
282
- }
283
-
284
- const _global = (() => {
285
- /*eslint no-undef:0*/
286
- if (typeof globalThis !== "undefined") return globalThis;
287
- return typeof self !== "undefined" ? self : (typeof window !== 'undefined' ? window : global)
288
- })();
289
-
290
- const isContextDefined = (context) => !isUndefined(context) && context !== _global;
291
-
292
- /**
293
- * Accepts varargs expecting each argument to be an object, then
294
- * immutably merges the properties of each object and returns result.
295
- *
296
- * When multiple objects contain the same key the later object in
297
- * the arguments list will take precedence.
298
- *
299
- * Example:
300
- *
301
- * ```js
302
- * var result = merge({foo: 123}, {foo: 456});
303
- * console.log(result.foo); // outputs 456
304
- * ```
305
- *
306
- * @param {Object} obj1 Object to merge
307
- *
308
- * @returns {Object} Result of all merge properties
309
- */
310
- function merge(/* obj1, obj2, obj3, ... */) {
311
- const {caseless} = isContextDefined(this) && this || {};
312
- const result = {};
313
- const assignValue = (val, key) => {
314
- const targetKey = caseless && findKey(result, key) || key;
315
- if (isPlainObject(result[targetKey]) && isPlainObject(val)) {
316
- result[targetKey] = merge(result[targetKey], val);
317
- } else if (isPlainObject(val)) {
318
- result[targetKey] = merge({}, val);
319
- } else if (isArray(val)) {
320
- result[targetKey] = val.slice();
321
- } else {
322
- result[targetKey] = val;
323
- }
324
- }
325
-
326
- for (let i = 0, l = arguments.length; i < l; i++) {
327
- arguments[i] && forEach(arguments[i], assignValue);
328
- }
329
- return result;
330
- }
331
-
332
- /**
333
- * Extends object a by mutably adding to it the properties of object b.
334
- *
335
- * @param {Object} a The object to be extended
336
- * @param {Object} b The object to copy properties from
337
- * @param {Object} thisArg The object to bind function to
338
- *
339
- * @param {Boolean} [allOwnKeys]
340
- * @returns {Object} The resulting value of object a
341
- */
342
- const extend = (a, b, thisArg, {allOwnKeys}= {}) => {
343
- forEach(b, (val, key) => {
344
- if (thisArg && isFunction(val)) {
345
- a[key] = bind(val, thisArg);
346
- } else {
347
- a[key] = val;
348
- }
349
- }, {allOwnKeys});
350
- return a;
351
- }
352
-
353
- /**
354
- * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
355
- *
356
- * @param {string} content with BOM
357
- *
358
- * @returns {string} content value without BOM
359
- */
360
- const stripBOM = (content) => {
361
- if (content.charCodeAt(0) === 0xFEFF) {
362
- content = content.slice(1);
363
- }
364
- return content;
365
- }
366
-
367
- /**
368
- * Inherit the prototype methods from one constructor into another
369
- * @param {function} constructor
370
- * @param {function} superConstructor
371
- * @param {object} [props]
372
- * @param {object} [descriptors]
373
- *
374
- * @returns {void}
375
- */
376
- const inherits = (constructor, superConstructor, props, descriptors) => {
377
- constructor.prototype = Object.create(superConstructor.prototype, descriptors);
378
- constructor.prototype.constructor = constructor;
379
- Object.defineProperty(constructor, 'super', {
380
- value: superConstructor.prototype
381
- });
382
- props && Object.assign(constructor.prototype, props);
383
- }
384
-
385
- /**
386
- * Resolve object with deep prototype chain to a flat object
387
- * @param {Object} sourceObj source object
388
- * @param {Object} [destObj]
389
- * @param {Function|Boolean} [filter]
390
- * @param {Function} [propFilter]
391
- *
392
- * @returns {Object}
393
- */
394
- const toFlatObject = (sourceObj, destObj, filter, propFilter) => {
395
- let props;
396
- let i;
397
- let prop;
398
- const merged = {};
399
-
400
- destObj = destObj || {};
401
- // eslint-disable-next-line no-eq-null,eqeqeq
402
- if (sourceObj == null) return destObj;
403
-
404
- do {
405
- props = Object.getOwnPropertyNames(sourceObj);
406
- i = props.length;
407
- while (i-- > 0) {
408
- prop = props[i];
409
- if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {
410
- destObj[prop] = sourceObj[prop];
411
- merged[prop] = true;
412
- }
413
- }
414
- sourceObj = filter !== false && getPrototypeOf(sourceObj);
415
- } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);
416
-
417
- return destObj;
418
- }
419
-
420
- /**
421
- * Determines whether a string ends with the characters of a specified string
422
- *
423
- * @param {String} str
424
- * @param {String} searchString
425
- * @param {Number} [position= 0]
426
- *
427
- * @returns {boolean}
428
- */
429
- const endsWith = (str, searchString, position) => {
430
- str = String(str);
431
- if (position === undefined || position > str.length) {
432
- position = str.length;
433
- }
434
- position -= searchString.length;
435
- const lastIndex = str.indexOf(searchString, position);
436
- return lastIndex !== -1 && lastIndex === position;
437
- }
438
-
439
-
440
- /**
441
- * Returns new array from array like object or null if failed
442
- *
443
- * @param {*} [thing]
444
- *
445
- * @returns {?Array}
446
- */
447
- const toArray = (thing) => {
448
- if (!thing) return null;
449
- if (isArray(thing)) return thing;
450
- let i = thing.length;
451
- if (!isNumber(i)) return null;
452
- const arr = new Array(i);
453
- while (i-- > 0) {
454
- arr[i] = thing[i];
455
- }
456
- return arr;
457
- }
458
-
459
- /**
460
- * Checking if the Uint8Array exists and if it does, it returns a function that checks if the
461
- * thing passed in is an instance of Uint8Array
462
- *
463
- * @param {TypedArray}
464
- *
465
- * @returns {Array}
466
- */
467
- // eslint-disable-next-line func-names
468
- const isTypedArray = (TypedArray => {
469
- // eslint-disable-next-line func-names
470
- return thing => {
471
- return TypedArray && thing instanceof TypedArray;
472
- };
473
- })(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));
474
-
475
- /**
476
- * For each entry in the object, call the function with the key and value.
477
- *
478
- * @param {Object<any, any>} obj - The object to iterate over.
479
- * @param {Function} fn - The function to call for each entry.
480
- *
481
- * @returns {void}
482
- */
483
- const forEachEntry = (obj, fn) => {
484
- const generator = obj && obj[Symbol.iterator];
485
-
486
- const iterator = generator.call(obj);
487
-
488
- let result;
489
-
490
- while ((result = iterator.next()) && !result.done) {
491
- const pair = result.value;
492
- fn.call(obj, pair[0], pair[1]);
493
- }
494
- }
495
-
496
- /**
497
- * It takes a regular expression and a string, and returns an array of all the matches
498
- *
499
- * @param {string} regExp - The regular expression to match against.
500
- * @param {string} str - The string to search.
501
- *
502
- * @returns {Array<boolean>}
503
- */
504
- const matchAll = (regExp, str) => {
505
- let matches;
506
- const arr = [];
507
-
508
- while ((matches = regExp.exec(str)) !== null) {
509
- arr.push(matches);
510
- }
511
-
512
- return arr;
513
- }
514
-
515
- /* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */
516
- const isHTMLForm = kindOfTest('HTMLFormElement');
517
-
518
- const toCamelCase = str => {
519
- return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,
520
- function replacer(m, p1, p2) {
521
- return p1.toUpperCase() + p2;
522
- }
523
- );
524
- };
525
-
526
- /* Creating a function that will check if an object has a property. */
527
- const hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);
528
-
529
- /**
530
- * Determine if a value is a RegExp object
531
- *
532
- * @param {*} val The value to test
533
- *
534
- * @returns {boolean} True if value is a RegExp object, otherwise false
535
- */
536
- const isRegExp = kindOfTest('RegExp');
537
-
538
- const reduceDescriptors = (obj, reducer) => {
539
- const descriptors = Object.getOwnPropertyDescriptors(obj);
540
- const reducedDescriptors = {};
541
-
542
- forEach(descriptors, (descriptor, name) => {
543
- let ret;
544
- if ((ret = reducer(descriptor, name, obj)) !== false) {
545
- reducedDescriptors[name] = ret || descriptor;
546
- }
547
- });
548
-
549
- Object.defineProperties(obj, reducedDescriptors);
550
- }
551
-
552
- /**
553
- * Makes all methods read-only
554
- * @param {Object} obj
555
- */
556
-
557
- const freezeMethods = (obj) => {
558
- reduceDescriptors(obj, (descriptor, name) => {
559
- // skip restricted props in strict mode
560
- if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {
561
- return false;
562
- }
563
-
564
- const value = obj[name];
565
-
566
- if (!isFunction(value)) return;
567
-
568
- descriptor.enumerable = false;
569
-
570
- if ('writable' in descriptor) {
571
- descriptor.writable = false;
572
- return;
573
- }
574
-
575
- if (!descriptor.set) {
576
- descriptor.set = () => {
577
- throw Error('Can not rewrite read-only method \'' + name + '\'');
578
- };
579
- }
580
- });
581
- }
582
-
583
- const toObjectSet = (arrayOrString, delimiter) => {
584
- const obj = {};
585
-
586
- const define = (arr) => {
587
- arr.forEach(value => {
588
- obj[value] = true;
589
- });
590
- }
591
-
592
- isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));
593
-
594
- return obj;
595
- }
596
-
597
- const noop = () => {}
598
-
599
- const toFiniteNumber = (value, defaultValue) => {
600
- value = +value;
601
- return Number.isFinite(value) ? value : defaultValue;
602
- }
603
-
604
- const ALPHA = 'abcdefghijklmnopqrstuvwxyz'
605
-
606
- const DIGIT = '0123456789';
607
-
608
- const ALPHABET = {
609
- DIGIT,
610
- ALPHA,
611
- ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT
612
- }
613
-
614
- const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {
615
- let str = '';
616
- const {length} = alphabet;
617
- while (size--) {
618
- str += alphabet[Math.random() * length|0]
619
- }
620
-
621
- return str;
622
- }
623
-
624
- /**
625
- * If the thing is a FormData object, return true, otherwise return false.
626
- *
627
- * @param {unknown} thing - The thing to check.
628
- *
629
- * @returns {boolean}
630
- */
631
- function isSpecCompliantForm(thing) {
632
- return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);
633
- }
634
-
635
- const toJSONObject = (obj) => {
636
- const stack = new Array(10);
637
-
638
- const visit = (source, i) => {
639
-
640
- if (isObject(source)) {
641
- if (stack.indexOf(source) >= 0) {
642
- return;
643
- }
644
-
645
- if(!('toJSON' in source)) {
646
- stack[i] = source;
647
- const target = isArray(source) ? [] : {};
648
-
649
- forEach(source, (value, key) => {
650
- const reducedValue = visit(value, i + 1);
651
- !isUndefined(reducedValue) && (target[key] = reducedValue);
652
- });
653
-
654
- stack[i] = undefined;
655
-
656
- return target;
657
- }
658
- }
659
-
660
- return source;
661
- }
662
-
663
- return visit(obj, 0);
664
- }
665
-
666
- const isAsyncFn = kindOfTest('AsyncFunction');
667
-
668
- const isThenable = (thing) =>
669
- thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);
670
-
671
- export default {
672
- isArray,
673
- isArrayBuffer,
674
- isBuffer,
675
- isFormData,
676
- isArrayBufferView,
677
- isString,
678
- isNumber,
679
- isBoolean,
680
- isObject,
681
- isPlainObject,
682
- isUndefined,
683
- isDate,
684
- isFile,
685
- isBlob,
686
- isRegExp,
687
- isFunction,
688
- isStream,
689
- isURLSearchParams,
690
- isTypedArray,
691
- isFileList,
692
- forEach,
693
- merge,
694
- extend,
695
- trim,
696
- stripBOM,
697
- inherits,
698
- toFlatObject,
699
- kindOf,
700
- kindOfTest,
701
- endsWith,
702
- toArray,
703
- forEachEntry,
704
- matchAll,
705
- isHTMLForm,
706
- hasOwnProperty,
707
- hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection
708
- reduceDescriptors,
709
- freezeMethods,
710
- toObjectSet,
711
- toCamelCase,
712
- noop,
713
- toFiniteNumber,
714
- findKey,
715
- global: _global,
716
- isContextDefined,
717
- ALPHABET,
718
- generateString,
719
- isSpecCompliantForm,
720
- toJSONObject,
721
- isAsyncFn,
722
- isThenable
723
- };