@wener/utils 1.0.1 → 1.1.0

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 (241) hide show
  1. package/dist/utils.cjs +497 -0
  2. package/dist/utils.cjs.map +7 -0
  3. package/dist/utils.js +445 -0
  4. package/dist/utils.js.map +7 -0
  5. package/dist/utils.mjs +475 -0
  6. package/dist/utils.mjs.map +7 -0
  7. package/jest.config.js +7 -5
  8. package/lib/cjs/arrays/MaybeArray.js +3 -8
  9. package/lib/cjs/arrays/MaybeArray.js.map +1 -1
  10. package/lib/cjs/arrays/index.js +1 -1
  11. package/lib/cjs/asyncs/AsyncInterval.js +8 -18
  12. package/lib/cjs/asyncs/AsyncInterval.js.map +1 -1
  13. package/lib/cjs/asyncs/LazyPromise.js +6 -6
  14. package/lib/cjs/asyncs/LazyPromise.js.map +1 -1
  15. package/lib/cjs/asyncs/generatorOfStream.js +11 -23
  16. package/lib/cjs/asyncs/generatorOfStream.js.map +1 -1
  17. package/lib/cjs/asyncs/index.js +1 -1
  18. package/lib/cjs/asyncs/promiseOfCallback.js +2 -2
  19. package/lib/cjs/asyncs/promiseOfCallback.js.map +1 -1
  20. package/lib/cjs/asyncs/sleep.js +2 -1
  21. package/lib/cjs/asyncs/sleep.js.map +1 -1
  22. package/lib/cjs/asyncs/timeout.js +10 -13
  23. package/lib/cjs/asyncs/timeout.js.map +1 -1
  24. package/lib/cjs/browsers/{clipboard.d.ts → copy.d.ts} +0 -0
  25. package/lib/cjs/browsers/{clipboard.js → copy.js} +7 -8
  26. package/lib/cjs/browsers/copy.js.map +1 -0
  27. package/lib/cjs/browsers/download.js +7 -8
  28. package/lib/cjs/browsers/download.js.map +1 -1
  29. package/lib/cjs/browsers/getFileFromDataTransfer.d.ts +4 -0
  30. package/lib/cjs/browsers/getFileFromDataTransfer.js +41 -0
  31. package/lib/cjs/browsers/getFileFromDataTransfer.js.map +1 -0
  32. package/lib/cjs/browsers/index.d.ts +2 -2
  33. package/lib/cjs/browsers/index.js +3 -3
  34. package/lib/cjs/browsers/index.js.map +1 -1
  35. package/lib/cjs/browsers/loaders.js +9 -12
  36. package/lib/cjs/browsers/loaders.js.map +1 -1
  37. package/lib/cjs/formats/formatBytes.d.ts +11 -0
  38. package/lib/cjs/formats/formatBytes.js +31 -0
  39. package/lib/cjs/formats/formatBytes.js.map +1 -0
  40. package/lib/cjs/index.d.ts +1 -1
  41. package/lib/cjs/index.js +4 -2
  42. package/lib/cjs/index.js.map +1 -1
  43. package/lib/cjs/io/index.js +1 -1
  44. package/lib/cjs/isomorphics/getGlobalThis.d.ts +1 -1
  45. package/lib/cjs/isomorphics/getGlobalThis.js +4 -7
  46. package/lib/cjs/isomorphics/getGlobalThis.js.map +1 -1
  47. package/lib/cjs/isomorphics/index.js +1 -1
  48. package/lib/cjs/maths/index.js +1 -1
  49. package/lib/cjs/maths/random.d.ts +2 -2
  50. package/lib/cjs/maths/random.js +8 -9
  51. package/lib/cjs/maths/random.js.map +1 -1
  52. package/lib/cjs/strings/camelCase.js +14 -15
  53. package/lib/cjs/strings/camelCase.js.map +1 -1
  54. package/lib/cjs/strings/index.js +1 -1
  55. package/lib/cjs/strings/templates.js +1 -1
  56. package/lib/cjs/strings/templates.js.map +1 -1
  57. package/lib/cjs/strings/urljoin.d.ts +2 -1
  58. package/lib/cjs/strings/urljoin.js +23 -15
  59. package/lib/cjs/strings/urljoin.js.map +1 -1
  60. package/lib/cjs/strings/urljoin.test.js +3 -3
  61. package/lib/cjs/strings/urljoin.test.js.map +1 -1
  62. package/lib/cjs/validations/index.js +1 -1
  63. package/lib/esm/arrays/MaybeArray.js +29 -29
  64. package/lib/esm/arrays/index.js +1 -2
  65. package/lib/esm/asyncs/AsyncInterval.js +14 -21
  66. package/lib/esm/asyncs/LazyPromise.js +23 -21
  67. package/lib/esm/asyncs/MaybePromise.js +0 -1
  68. package/lib/esm/asyncs/generatorOfStream.js +14 -24
  69. package/lib/esm/asyncs/index.js +7 -8
  70. package/lib/esm/asyncs/isPromise.js +5 -3
  71. package/lib/esm/asyncs/promiseOfCallback.js +16 -16
  72. package/lib/esm/asyncs/sleep.js +4 -2
  73. package/lib/esm/asyncs/timeout.js +24 -25
  74. package/lib/esm/browsers/{clipboard.d.ts → copy.d.ts} +0 -0
  75. package/lib/esm/browsers/copy.js +52 -0
  76. package/lib/esm/browsers/download.js +25 -29
  77. package/lib/esm/browsers/getFileFromDataTransfer.d.ts +4 -0
  78. package/lib/esm/browsers/getFileFromDataTransfer.js +29 -0
  79. package/lib/esm/browsers/index.d.ts +2 -2
  80. package/lib/esm/browsers/index.js +4 -5
  81. package/lib/esm/browsers/loaders.js +31 -32
  82. package/lib/esm/formats/formatBytes.d.ts +11 -0
  83. package/lib/esm/formats/formatBytes.js +17 -0
  84. package/lib/esm/index.d.ts +1 -1
  85. package/lib/esm/index.js +12 -10
  86. package/lib/esm/io/index.js +1 -2
  87. package/lib/esm/io/isBuffer.js +5 -7
  88. package/lib/esm/isomorphics/getGlobalThis.d.ts +1 -1
  89. package/lib/esm/isomorphics/getGlobalThis.js +13 -24
  90. package/lib/esm/isomorphics/index.js +1 -2
  91. package/lib/esm/maths/index.js +1 -2
  92. package/lib/esm/maths/random.d.ts +2 -2
  93. package/lib/esm/maths/random.js +15 -15
  94. package/lib/esm/strings/camelCase.js +52 -64
  95. package/lib/esm/strings/index.js +3 -4
  96. package/lib/esm/strings/templates.js +7 -13
  97. package/lib/esm/strings/urljoin.d.ts +2 -1
  98. package/lib/esm/strings/urljoin.js +48 -52
  99. package/lib/esm/strings/urljoin.test.js +3 -4
  100. package/lib/esm/validations/asserts.js +8 -11
  101. package/lib/esm/validations/index.js +4 -5
  102. package/lib/esm/validations/isClass.js +5 -3
  103. package/lib/esm/validations/isDefined.js +5 -3
  104. package/lib/esm/validations/isEmptyObject.js +8 -6
  105. package/lib/esnext/arrays/MaybeArray.js +3 -8
  106. package/lib/esnext/arrays/MaybeArray.js.map +1 -1
  107. package/lib/esnext/asyncs/AsyncInterval.js +8 -18
  108. package/lib/esnext/asyncs/AsyncInterval.js.map +1 -1
  109. package/lib/esnext/asyncs/LazyPromise.js +6 -6
  110. package/lib/esnext/asyncs/LazyPromise.js.map +1 -1
  111. package/lib/esnext/asyncs/MaybePromise.js +1 -0
  112. package/lib/esnext/asyncs/generatorOfStream.js +11 -23
  113. package/lib/esnext/asyncs/generatorOfStream.js.map +1 -1
  114. package/lib/esnext/asyncs/promiseOfCallback.js +2 -2
  115. package/lib/esnext/asyncs/promiseOfCallback.js.map +1 -1
  116. package/lib/esnext/asyncs/sleep.js +1 -1
  117. package/lib/esnext/asyncs/sleep.js.map +1 -1
  118. package/lib/esnext/asyncs/timeout.js +10 -14
  119. package/lib/esnext/asyncs/timeout.js.map +1 -1
  120. package/lib/esnext/browsers/{clipboard.d.ts → copy.d.ts} +0 -0
  121. package/lib/esnext/browsers/{clipboard.js → copy.js} +7 -8
  122. package/lib/esnext/browsers/copy.js.map +1 -0
  123. package/lib/esnext/browsers/download.js +7 -8
  124. package/lib/esnext/browsers/download.js.map +1 -1
  125. package/lib/esnext/browsers/getFileFromDataTransfer.d.ts +4 -0
  126. package/lib/esnext/browsers/getFileFromDataTransfer.js +37 -0
  127. package/lib/esnext/browsers/getFileFromDataTransfer.js.map +1 -0
  128. package/lib/esnext/browsers/index.d.ts +2 -2
  129. package/lib/esnext/browsers/index.js +2 -2
  130. package/lib/esnext/browsers/index.js.map +1 -1
  131. package/lib/esnext/browsers/loaders.js +9 -12
  132. package/lib/esnext/browsers/loaders.js.map +1 -1
  133. package/lib/esnext/formats/formatBytes.d.ts +11 -0
  134. package/lib/esnext/formats/formatBytes.js +27 -0
  135. package/lib/esnext/formats/formatBytes.js.map +1 -0
  136. package/lib/esnext/index.d.ts +1 -1
  137. package/lib/esnext/index.js +1 -1
  138. package/lib/esnext/index.js.map +1 -1
  139. package/lib/esnext/isomorphics/getGlobalThis.d.ts +1 -1
  140. package/lib/esnext/isomorphics/getGlobalThis.js +3 -7
  141. package/lib/esnext/isomorphics/getGlobalThis.js.map +1 -1
  142. package/lib/esnext/maths/random.d.ts +2 -2
  143. package/lib/esnext/maths/random.js +8 -9
  144. package/lib/esnext/maths/random.js.map +1 -1
  145. package/lib/esnext/strings/camelCase.js +14 -15
  146. package/lib/esnext/strings/camelCase.js.map +1 -1
  147. package/lib/esnext/strings/templates.js +1 -1
  148. package/lib/esnext/strings/templates.js.map +1 -1
  149. package/lib/esnext/strings/urljoin.d.ts +2 -1
  150. package/lib/esnext/strings/urljoin.js +22 -14
  151. package/lib/esnext/strings/urljoin.js.map +1 -1
  152. package/lib/esnext/strings/urljoin.test.js +2 -2
  153. package/lib/esnext/strings/urljoin.test.js.map +1 -1
  154. package/package.json +22 -27
  155. package/src/arrays/MaybeArray.ts +5 -2
  156. package/src/asyncs/timeout.ts +1 -1
  157. package/src/browsers/{clipboard.ts → copy.ts} +0 -0
  158. package/src/browsers/{transfers.ts → getFileFromDataTransfer.ts} +12 -7
  159. package/src/browsers/index.ts +2 -2
  160. package/src/formats/formatBytes.ts +30 -0
  161. package/src/index.ts +2 -1
  162. package/src/isomorphics/getGlobalThis.ts +2 -4
  163. package/src/maths/random.ts +5 -5
  164. package/src/strings/urljoin.test.ts +1 -1
  165. package/src/strings/urljoin.ts +22 -5
  166. package/tsconfig.json +14 -3
  167. package/dist/wener-utils.cjs +0 -879
  168. package/dist/wener-utils.cjs.map +0 -1
  169. package/dist/wener-utils.esm.js +0 -846
  170. package/dist/wener-utils.esm.js.map +0 -1
  171. package/dist/wener-utils.system.js +0 -882
  172. package/dist/wener-utils.system.js.map +0 -1
  173. package/dist/wener-utils.umd.js +0 -885
  174. package/dist/wener-utils.umd.js.map +0 -1
  175. package/index.d.ts +0 -1
  176. package/index.js +0 -10
  177. package/lib/cjs/browsers/clipboard.js.map +0 -1
  178. package/lib/cjs/browsers/transfers.d.ts +0 -4
  179. package/lib/cjs/browsers/transfers.js +0 -38
  180. package/lib/cjs/browsers/transfers.js.map +0 -1
  181. package/lib/cjs/envs/index.d.ts +0 -1
  182. package/lib/cjs/envs/index.js +0 -5
  183. package/lib/cjs/envs/index.js.map +0 -1
  184. package/lib/cjs/envs/isDev.d.ts +0 -1
  185. package/lib/cjs/envs/isDev.js +0 -8
  186. package/lib/cjs/envs/isDev.js.map +0 -1
  187. package/lib/esm/arrays/MaybeArray.js.map +0 -1
  188. package/lib/esm/arrays/index.js.map +0 -1
  189. package/lib/esm/asyncs/AsyncInterval.js.map +0 -1
  190. package/lib/esm/asyncs/LazyPromise.js.map +0 -1
  191. package/lib/esm/asyncs/MaybePromise.js.map +0 -1
  192. package/lib/esm/asyncs/generatorOfStream.js.map +0 -1
  193. package/lib/esm/asyncs/index.js.map +0 -1
  194. package/lib/esm/asyncs/isPromise.js.map +0 -1
  195. package/lib/esm/asyncs/promiseOfCallback.js.map +0 -1
  196. package/lib/esm/asyncs/sleep.js.map +0 -1
  197. package/lib/esm/asyncs/timeout.js.map +0 -1
  198. package/lib/esm/browsers/clipboard.js +0 -52
  199. package/lib/esm/browsers/clipboard.js.map +0 -1
  200. package/lib/esm/browsers/download.js.map +0 -1
  201. package/lib/esm/browsers/index.js.map +0 -1
  202. package/lib/esm/browsers/loaders.js.map +0 -1
  203. package/lib/esm/browsers/transfers.d.ts +0 -4
  204. package/lib/esm/browsers/transfers.js +0 -34
  205. package/lib/esm/browsers/transfers.js.map +0 -1
  206. package/lib/esm/envs/index.d.ts +0 -1
  207. package/lib/esm/envs/index.js +0 -2
  208. package/lib/esm/envs/index.js.map +0 -1
  209. package/lib/esm/envs/isDev.d.ts +0 -1
  210. package/lib/esm/envs/isDev.js +0 -5
  211. package/lib/esm/envs/isDev.js.map +0 -1
  212. package/lib/esm/index.js.map +0 -1
  213. package/lib/esm/io/index.js.map +0 -1
  214. package/lib/esm/io/isBuffer.js.map +0 -1
  215. package/lib/esm/isomorphics/getGlobalThis.js.map +0 -1
  216. package/lib/esm/isomorphics/index.js.map +0 -1
  217. package/lib/esm/maths/index.js.map +0 -1
  218. package/lib/esm/maths/random.js.map +0 -1
  219. package/lib/esm/strings/camelCase.js.map +0 -1
  220. package/lib/esm/strings/index.js.map +0 -1
  221. package/lib/esm/strings/templates.js.map +0 -1
  222. package/lib/esm/strings/urljoin.js.map +0 -1
  223. package/lib/esm/strings/urljoin.test.js.map +0 -1
  224. package/lib/esm/validations/asserts.js.map +0 -1
  225. package/lib/esm/validations/index.js.map +0 -1
  226. package/lib/esm/validations/isClass.js.map +0 -1
  227. package/lib/esm/validations/isDefined.js.map +0 -1
  228. package/lib/esm/validations/isEmptyObject.js.map +0 -1
  229. package/lib/esnext/browsers/clipboard.js.map +0 -1
  230. package/lib/esnext/browsers/transfers.d.ts +0 -4
  231. package/lib/esnext/browsers/transfers.js +0 -34
  232. package/lib/esnext/browsers/transfers.js.map +0 -1
  233. package/lib/esnext/envs/index.d.ts +0 -1
  234. package/lib/esnext/envs/index.js +0 -2
  235. package/lib/esnext/envs/index.js.map +0 -1
  236. package/lib/esnext/envs/isDev.d.ts +0 -1
  237. package/lib/esnext/envs/isDev.js +0 -5
  238. package/lib/esnext/envs/isDev.js.map +0 -1
  239. package/rollup.config.ts +0 -76
  240. package/src/envs/index.ts +0 -1
  241. package/src/envs/isDev.ts +0 -3
@@ -3,11 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.camelCase = exports.pascalCase = void 0;
5
5
  function preserveCamelCase(string) {
6
- var isLastCharLower = false;
7
- var isLastCharUpper = false;
8
- var isLastLastCharUpper = false;
9
- for (var i = 0; i < string.length; i++) {
10
- var character = string[i];
6
+ let isLastCharLower = false;
7
+ let isLastCharUpper = false;
8
+ let isLastLastCharUpper = false;
9
+ for (let i = 0; i < string.length; i++) {
10
+ const character = string[i];
11
11
  if (isLastCharLower && /[a-zA-Z]/.test(character) && character.toUpperCase() === character) {
12
12
  string = string.slice(0, i) + '-' + string.slice(i);
13
13
  isLastCharLower = false;
@@ -36,18 +36,17 @@ function pascalCase(input) {
36
36
  return camelCase(input, { pascalCase: true });
37
37
  }
38
38
  exports.pascalCase = pascalCase;
39
- function camelCase(input, options) {
40
- if (options === void 0) { options = {
41
- pascalCase: false,
42
- }; }
39
+ function camelCase(input, options = {
40
+ pascalCase: false,
41
+ }) {
43
42
  if (!(typeof input === 'string' || Array.isArray(input))) {
44
43
  throw new TypeError('Expected the input to be `string | string[]`');
45
44
  }
46
- var postProcess = function (x) { return (options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x); };
45
+ const postProcess = (x) => (options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x);
47
46
  if (Array.isArray(input)) {
48
47
  input = input
49
- .map(function (x) { return x.trim(); })
50
- .filter(function (x) { return x.length; })
48
+ .map((x) => x.trim())
49
+ .filter((x) => x.length)
51
50
  .join('-');
52
51
  }
53
52
  else {
@@ -59,15 +58,15 @@ function camelCase(input, options) {
59
58
  if (input.length === 1) {
60
59
  return options.pascalCase ? input.toUpperCase() : input.toLowerCase();
61
60
  }
62
- var hasUpperCase = input !== input.toLowerCase();
61
+ const hasUpperCase = input !== input.toLowerCase();
63
62
  if (hasUpperCase) {
64
63
  input = preserveCamelCase(input);
65
64
  }
66
65
  input = input
67
66
  .replace(/^[_.\- ]+/, '')
68
67
  .toLowerCase()
69
- .replace(/[_.\- ]+(\w|$)/g, function (_, p1) { return p1.toUpperCase(); })
70
- .replace(/\d+(\w|$)/g, function (m) { return m.toUpperCase(); });
68
+ .replace(/[_.\- ]+(\w|$)/g, (_, p1) => p1.toUpperCase())
69
+ .replace(/\d+(\w|$)/g, (m) => m.toUpperCase());
71
70
  return postProcess(input);
72
71
  }
73
72
  exports.camelCase = camelCase;
@@ -1 +1 @@
1
- {"version":3,"file":"camelCase.js","sourceRoot":"","sources":["../../../src/strings/camelCase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"camelCase.js","sourceRoot":"","sources":["../../../src/strings/camelCase.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
3
+ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./camelCase"), exports);
5
5
  tslib_1.__exportStar(require("./templates"), exports);
6
6
  tslib_1.__exportStar(require("./urljoin"), exports);
@@ -8,7 +8,7 @@ exports.templateString = void 0;
8
8
  * templateString('My name is ${name}',{name:'wener'})
9
9
  */
10
10
  function templateString(template, getter) {
11
- return template.replace(/\${(.*?)}/g, function (_, g) {
11
+ return template.replace(/\${(.*?)}/g, (_, g) => {
12
12
  // variables[g.trim()]
13
13
  // 支持路径 - 例如 a.b[0]
14
14
  return getter(g.trim());
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../src/strings/templates.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,QAAgB,EAAE,MAA0B;IACzE,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,UAAC,CAAC,EAAE,CAAC;QACzC,sBAAsB;QACtB,mBAAmB;QACnB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAND,wCAMC"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../src/strings/templates.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,QAAgB,EAAE,MAA0B;IACzE,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC7C,sBAAsB;QACtB,mBAAmB;QACnB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAND,wCAMC"}
@@ -1 +1,2 @@
1
- export declare function urljoin(...strArray: string[]): string;
1
+ export declare function urljoin(...strArray: string[]): any;
2
+ export declare function urljoin(strArray: string[]): any;
@@ -1,13 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.urljoin = void 0;
4
- /// see https://github.com/jfromaniello/url-join
5
- function urljoin() {
6
- var strArray = [];
7
- for (var _i = 0; _i < arguments.length; _i++) {
8
- strArray[_i] = arguments[_i];
4
+ /**
5
+ * @see {@link https://github.com/jfromaniello/url-join}
6
+ */
7
+ function urljoin(...args) {
8
+ let input;
9
+ if (typeof args[0] === 'object') {
10
+ input = args[0];
9
11
  }
10
- var resultArray = [];
12
+ else {
13
+ input = args;
14
+ }
15
+ return normalize(input);
16
+ }
17
+ exports.urljoin = urljoin;
18
+ function normalize(strArray) {
19
+ const resultArray = [];
11
20
  if (strArray.length === 0) {
12
21
  return '';
13
22
  }
@@ -16,7 +25,7 @@ function urljoin() {
16
25
  }
17
26
  // If the first part is a plain protocol, we combine it with the next part.
18
27
  if (strArray[0].match(/^[^/:]+:\/*$/) && strArray.length > 1) {
19
- var first = strArray.shift();
28
+ const first = strArray.shift();
20
29
  strArray[0] = first + strArray[0];
21
30
  }
22
31
  // There must be two or three slashes in the file protocol, two slashes in anything else.
@@ -26,8 +35,8 @@ function urljoin() {
26
35
  else {
27
36
  strArray[0] = strArray[0].replace(/^([^/:]+):\/*/, '$1://');
28
37
  }
29
- for (var i = 0; i < strArray.length; i++) {
30
- var component = strArray[i];
38
+ for (let i = 0; i < strArray.length; i++) {
39
+ let component = strArray[i];
31
40
  if (typeof component !== 'string') {
32
41
  throw new TypeError('Url must be a string. Received ' + component);
33
42
  }
@@ -36,26 +45,25 @@ function urljoin() {
36
45
  }
37
46
  if (i > 0) {
38
47
  // Removing the starting slashes for each component but the first.
39
- component = component.replace(/^[/]+/, '');
48
+ component = component.replace(/^[\/]+/, '');
40
49
  }
41
50
  if (i < strArray.length - 1) {
42
51
  // Removing the ending slashes for each component but the last.
43
- component = component.replace(/[/]+$/, '');
52
+ component = component.replace(/[\/]+$/, '');
44
53
  }
45
54
  else {
46
55
  // For the last component we will combine multiple slashes to a single one.
47
- component = component.replace(/[/]+$/, '/');
56
+ component = component.replace(/[\/]+$/, '/');
48
57
  }
49
58
  resultArray.push(component);
50
59
  }
51
- var str = resultArray.join('/');
60
+ let str = resultArray.join('/');
52
61
  // Each input component is now separated by a single slash except the possible first plain protocol part.
53
62
  // remove trailing slash before parameters or hash
54
63
  str = str.replace(/\/(\?|&|#[^!])/g, '$1');
55
64
  // replace ? in parameters with &
56
- var parts = str.split('?');
65
+ const parts = str.split('?');
57
66
  str = parts.shift() + (parts.length > 0 ? '?' : '') + parts.join('&');
58
67
  return str;
59
68
  }
60
- exports.urljoin = urljoin;
61
69
  //# sourceMappingURL=urljoin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"urljoin.js","sourceRoot":"","sources":["../../../src/strings/urljoin.ts"],"names":[],"mappings":";;;AAAA,gDAAgD;AAChD,SAAgB,OAAO;IAAC,kBAAqB;SAArB,UAAqB,EAArB,qBAAqB,EAArB,IAAqB;QAArB,6BAAqB;;IAC3C,IAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,EAAE,CAAC;KACX;IAED,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QACnC,MAAM,IAAI,SAAS,CAAC,iCAAiC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;KACtE;IAED,2EAA2E;IAC3E,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5D,IAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC/B,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;KACnC;IAED,yFAAyF;IACzF,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;QACrC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;KAC9D;SAAM;QACL,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;KAC7D;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,IAAI,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,MAAM,IAAI,SAAS,CAAC,iCAAiC,GAAG,SAAS,CAAC,CAAC;SACpE;QAED,IAAI,SAAS,KAAK,EAAE,EAAE;YACpB,SAAS;SACV;QAED,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,kEAAkE;YAClE,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;SAC5C;QACD,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,+DAA+D;YAC/D,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;SAC5C;aAAM;YACL,2EAA2E;YAC3E,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;SAC7C;QAED,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC7B;IAED,IAAI,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,yGAAyG;IAEzG,kDAAkD;IAClD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAE3C,iCAAiC;IACjC,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEtE,OAAO,GAAG,CAAC;AACb,CAAC;AA5DD,0BA4DC"}
1
+ {"version":3,"file":"urljoin.js","sourceRoot":"","sources":["../../../src/strings/urljoin.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH,SAAgB,OAAO,CAAC,GAAG,IAAI;IAC7B,IAAI,KAAK,CAAC;IAEV,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QAC/B,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;SAAM;QACL,KAAK,GAAG,IAAI,CAAC;KACd;IAED,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAVD,0BAUC;AAED,SAAS,SAAS,CAAC,QAAkB;IACnC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,EAAE,CAAC;KACX;IAED,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QACnC,MAAM,IAAI,SAAS,CAAC,iCAAiC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;KACtE;IAED,2EAA2E;IAC3E,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC/B,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;KACnC;IAED,yFAAyF;IACzF,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;QACrC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;KAC9D;SAAM;QACL,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;KAC7D;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,IAAI,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,MAAM,IAAI,SAAS,CAAC,iCAAiC,GAAG,SAAS,CAAC,CAAC;SACpE;QAED,IAAI,SAAS,KAAK,EAAE,EAAE;YACpB,SAAS;SACV;QAED,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,kEAAkE;YAClE,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SAC7C;QACD,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,+DAA+D;YAC/D,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SAC7C;aAAM;YACL,2EAA2E;YAC3E,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;SAC9C;QAED,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC7B;IAED,IAAI,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,yGAAyG;IAEzG,kDAAkD;IAClD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAE3C,iCAAiC;IACjC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEtE,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var urljoin_1 = require("./urljoin");
4
- test('join ext', function () {
5
- expect(urljoin_1.urljoin('http://wener.me/sub/index.html', './hello.js')).toBe('http://wener.me/sub/hello.js');
3
+ const urljoin_1 = require("./urljoin");
4
+ test('join ext', () => {
5
+ expect((0, urljoin_1.urljoin)('http://wener.me/sub/', '/a/', '/hello.js')).toBe('http://wener.me/sub/a/hello.js');
6
6
  });
7
7
  //# sourceMappingURL=urljoin.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"urljoin.test.js","sourceRoot":"","sources":["../../../src/strings/urljoin.test.ts"],"names":[],"mappings":";;AAAA,qCAAoC;AAEpC,IAAI,CAAC,UAAU,EAAE;IACf,MAAM,CAAC,iBAAO,CAAC,gCAAgC,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;AACvG,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"urljoin.test.js","sourceRoot":"","sources":["../../../src/strings/urljoin.test.ts"],"names":[],"mappings":";;AAAA,uCAAoC;AAEpC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;IACpB,MAAM,CAAC,IAAA,iBAAO,EAAC,sBAAsB,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
3
+ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./asserts"), exports);
5
5
  tslib_1.__exportStar(require("./isDefined"), exports);
6
6
  tslib_1.__exportStar(require("./isEmptyObject"), exports);
@@ -1,33 +1,33 @@
1
- export function objectOfMaybeArray(o, keys, picker) {
2
- if (keys === void 0) { keys = null; }
3
- if (picker === void 0) { picker = firstOfMaybeArray; }
4
- if (keys === null) {
5
- return Object.fromEntries(Object.entries(o).map(function (_a) {
6
- var k = _a[0], v = _a[1];
7
- return [k, picker(v)];
8
- }));
9
- }
10
- return Object.fromEntries(keys.map(function (v) { return [v, picker(v)]; }));
1
+ function objectOfMaybeArray(o, keys = null, picker = firstOfMaybeArray) {
2
+ if (keys === null) {
3
+ return Object.fromEntries(Object.entries(o).map(([k, v]) => [k, picker(v)]));
4
+ }
5
+ return Object.fromEntries(keys.map((v) => [v, picker(v)]));
11
6
  }
12
- export function firstOfMaybeArray(v) {
13
- if (Array.isArray(v)) {
14
- return v[0];
15
- }
16
- return v;
7
+ function firstOfMaybeArray(v) {
8
+ if (Array.isArray(v)) {
9
+ return v[0];
10
+ }
11
+ return v;
17
12
  }
18
- export function lastOfMaybeArray(v) {
19
- if (Array.isArray(v)) {
20
- return v[v.length - 1];
21
- }
22
- return v;
13
+ function lastOfMaybeArray(v) {
14
+ if (Array.isArray(v)) {
15
+ return v[v.length - 1];
16
+ }
17
+ return v;
23
18
  }
24
- export function arrayOfMaybeArray(v) {
25
- if (Array.isArray(v)) {
26
- return v;
27
- }
28
- if (v === null || v === undefined) {
29
- return [];
30
- }
31
- return [v];
19
+ function arrayOfMaybeArray(v) {
20
+ if (Array.isArray(v)) {
21
+ return v;
22
+ }
23
+ if (v === null || v === void 0) {
24
+ return [];
25
+ }
26
+ return [v];
32
27
  }
33
- //# sourceMappingURL=MaybeArray.js.map
28
+ export {
29
+ arrayOfMaybeArray,
30
+ firstOfMaybeArray,
31
+ lastOfMaybeArray,
32
+ objectOfMaybeArray
33
+ };
@@ -1,2 +1 @@
1
- export * from './MaybeArray';
2
- //# sourceMappingURL=index.js.map
1
+ export * from "./MaybeArray";
@@ -1,23 +1,16 @@
1
- import { __awaiter, __generator } from "tslib";
2
- export function setAsyncInterval(cb, interval, initial) {
3
- var _this = this;
4
- if (initial === void 0) { initial = interval; }
5
- var id;
6
- var handler = function () { return __awaiter(_this, void 0, void 0, function () {
7
- return __generator(this, function (_a) {
8
- switch (_a.label) {
9
- case 0: return [4 /*yield*/, cb()];
10
- case 1:
11
- _a.sent();
12
- id = setTimeout(handler, interval);
13
- return [2 /*return*/];
14
- }
15
- });
16
- }); };
17
- id = setTimeout(handler, initial);
18
- return function () { return id; };
1
+ function setAsyncInterval(cb, interval, initial = interval) {
2
+ let id;
3
+ const handler = async () => {
4
+ await cb();
5
+ id = setTimeout(handler, interval);
6
+ };
7
+ id = setTimeout(handler, initial);
8
+ return () => id;
19
9
  }
20
- export function clearAsyncInterval(v) {
21
- clearTimeout(v === null || v === void 0 ? void 0 : v());
10
+ function clearAsyncInterval(v) {
11
+ clearTimeout(v == null ? void 0 : v());
22
12
  }
23
- //# sourceMappingURL=AsyncInterval.js.map
13
+ export {
14
+ clearAsyncInterval,
15
+ setAsyncInterval
16
+ };
@@ -1,22 +1,24 @@
1
- export function createLazyPromise() {
2
- var holder = {
3
- resolve: function (_) {
4
- throw new Error('pending resolve');
5
- },
6
- reject: function (_) {
7
- throw new Error('pending reject');
8
- },
9
- };
10
- return Object.assign(new Promise(function (resolve, reject) {
11
- holder.reject = reject;
12
- holder.resolve = resolve;
13
- }), {
14
- resolve: function (v) {
15
- holder.resolve(v);
16
- },
17
- reject: function (v) {
18
- holder.resolve(v);
19
- },
20
- });
1
+ function createLazyPromise() {
2
+ const holder = {
3
+ resolve(_) {
4
+ throw new Error("pending resolve");
5
+ },
6
+ reject(_) {
7
+ throw new Error("pending reject");
8
+ }
9
+ };
10
+ return Object.assign(new Promise((resolve, reject) => {
11
+ holder.reject = reject;
12
+ holder.resolve = resolve;
13
+ }), {
14
+ resolve(v) {
15
+ holder.resolve(v);
16
+ },
17
+ reject(v) {
18
+ holder.resolve(v);
19
+ }
20
+ });
21
21
  }
22
- //# sourceMappingURL=LazyPromise.js.map
22
+ export {
23
+ createLazyPromise
24
+ };
@@ -1 +0,0 @@
1
- //# sourceMappingURL=MaybePromise.js.map
@@ -1,26 +1,16 @@
1
- import { __generator } from "tslib";
2
- export function generatorOfStream(stream) {
3
- var done;
4
- return __generator(this, function (_a) {
5
- switch (_a.label) {
6
- case 0:
7
- done = false;
8
- stream.on('end', function () {
9
- done = true;
10
- });
11
- _a.label = 1;
12
- case 1:
13
- if (!!done) return [3 /*break*/, 3];
14
- return [4 /*yield*/, new Promise(function (resolve, reject) {
15
- stream.once('data', resolve);
16
- stream.once('end', resolve);
17
- stream.once('error', reject);
18
- })];
19
- case 2:
20
- _a.sent();
21
- return [3 /*break*/, 1];
22
- case 3: return [2 /*return*/];
23
- }
1
+ function* generatorOfStream(stream) {
2
+ let done = false;
3
+ stream.on("end", () => {
4
+ done = true;
5
+ });
6
+ while (!done) {
7
+ yield new Promise((resolve, reject) => {
8
+ stream.once("data", resolve);
9
+ stream.once("end", resolve);
10
+ stream.once("error", reject);
24
11
  });
12
+ }
25
13
  }
26
- //# sourceMappingURL=generatorOfStream.js.map
14
+ export {
15
+ generatorOfStream
16
+ };
@@ -1,8 +1,7 @@
1
- export * from './LazyPromise';
2
- export * from './AsyncInterval';
3
- export * from './MaybePromise';
4
- export * from './sleep';
5
- export * from './timeout';
6
- export * from './isPromise';
7
- export * from './promiseOfCallback';
8
- //# sourceMappingURL=index.js.map
1
+ export * from "./LazyPromise";
2
+ export * from "./AsyncInterval";
3
+ export * from "./MaybePromise";
4
+ export * from "./sleep";
5
+ export * from "./timeout";
6
+ export * from "./isPromise";
7
+ export * from "./promiseOfCallback";
@@ -1,4 +1,6 @@
1
- export function isPromise(v) {
2
- return v && (v instanceof Promise || (v.then && v.catch));
1
+ function isPromise(v) {
2
+ return v && (v instanceof Promise || v.then && v.catch);
3
3
  }
4
- //# sourceMappingURL=isPromise.js.map
4
+ export {
5
+ isPromise
6
+ };
@@ -1,18 +1,18 @@
1
- export function promiseOfCallback(fun) {
2
- return new Promise(function (resolve, reject) {
3
- try {
4
- fun(function (e, v) {
5
- if (e) {
6
- reject(e);
7
- }
8
- else {
9
- resolve(v);
10
- }
11
- });
1
+ function promiseOfCallback(fun) {
2
+ return new Promise((resolve, reject) => {
3
+ try {
4
+ fun((e, v) => {
5
+ if (e) {
6
+ reject(e);
7
+ } else {
8
+ resolve(v);
12
9
  }
13
- catch (e) {
14
- reject(e);
15
- }
16
- });
10
+ });
11
+ } catch (e) {
12
+ reject(e);
13
+ }
14
+ });
17
15
  }
18
- //# sourceMappingURL=promiseOfCallback.js.map
16
+ export {
17
+ promiseOfCallback
18
+ };
@@ -1,2 +1,4 @@
1
- export var sleep = function (ms) { return new Promise(function (resolve) { return setTimeout(resolve, ms); }); };
2
- //# sourceMappingURL=sleep.js.map
1
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
2
+ export {
3
+ sleep
4
+ };
@@ -1,26 +1,25 @@
1
- import { __extends } from "tslib";
2
- export function timeout(v, ms) {
3
- var error = new TimeoutError();
4
- var timeout;
5
- return Promise.race([
6
- v,
7
- new Promise(function (resolve, reject) {
8
- timeout = setTimeout(function () { return reject(error); }, ms);
9
- }),
10
- ]).then(function (v) {
11
- clearTimeout(timeout);
12
- return v;
13
- }, function (e) {
14
- clearTimeout(timeout);
15
- throw e;
16
- });
1
+ function timeout(v, ms) {
2
+ const error = new TimeoutError();
3
+ let timeout2;
4
+ return Promise.race([
5
+ v,
6
+ new Promise((_, reject) => {
7
+ timeout2 = setTimeout(() => reject(error), ms);
8
+ })
9
+ ]).then((v2) => {
10
+ clearTimeout(timeout2);
11
+ return v2;
12
+ }, (e) => {
13
+ clearTimeout(timeout2);
14
+ throw e;
15
+ });
17
16
  }
18
- var TimeoutError = /** @class */ (function (_super) {
19
- __extends(TimeoutError, _super);
20
- function TimeoutError() {
21
- return _super.call(this, 'TimeoutError') || this;
22
- }
23
- return TimeoutError;
24
- }(Error));
25
- export { TimeoutError };
26
- //# sourceMappingURL=timeout.js.map
17
+ class TimeoutError extends Error {
18
+ constructor() {
19
+ super("TimeoutError");
20
+ }
21
+ }
22
+ export {
23
+ TimeoutError,
24
+ timeout
25
+ };
File without changes
@@ -0,0 +1,52 @@
1
+ let _copy;
2
+ function initCopy() {
3
+ let textArea;
4
+ function isIOS() {
5
+ return navigator.userAgent.match(/ipad|iphone/i);
6
+ }
7
+ function createTextArea(text) {
8
+ textArea = document.createElement("textArea");
9
+ textArea.value = text;
10
+ document.body.appendChild(textArea);
11
+ }
12
+ function selectText() {
13
+ let range, selection;
14
+ if (isIOS()) {
15
+ range = document.createRange();
16
+ range.selectNodeContents(textArea);
17
+ selection = window.getSelection();
18
+ if (selection === null) {
19
+ console.error(`no selection`);
20
+ return;
21
+ }
22
+ selection.removeAllRanges();
23
+ selection.addRange(range);
24
+ textArea.setSelectionRange(0, 999999);
25
+ } else {
26
+ textArea.select();
27
+ }
28
+ }
29
+ function copyToClipboard() {
30
+ document.execCommand("copy");
31
+ document.body.removeChild(textArea);
32
+ }
33
+ _copy = (text) => {
34
+ createTextArea(text);
35
+ selectText();
36
+ copyToClipboard();
37
+ };
38
+ }
39
+ function copy(text) {
40
+ var _a, _b;
41
+ if ((_b = (_a = window.navigator) == null ? void 0 : _a.clipboard) == null ? void 0 : _b.writeText) {
42
+ window.navigator.clipboard.writeText(text);
43
+ return;
44
+ }
45
+ if (!_copy) {
46
+ initCopy();
47
+ }
48
+ _copy(text);
49
+ }
50
+ export {
51
+ copy
52
+ };