@wener/utils 1.1.17 → 1.1.19

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 (101) hide show
  1. package/dist/cjs/index.cjs +7 -7
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/server.cjs +1 -1
  4. package/dist/cjs/server.cjs.map +1 -1
  5. package/dist/esm/index.js +11 -11
  6. package/dist/esm/index.js.map +1 -1
  7. package/dist/esm/server.js +1 -1
  8. package/dist/esm/server.js.map +1 -1
  9. package/dist/system/index.js +5 -5
  10. package/dist/system/index.js.map +1 -1
  11. package/dist/system/server.js +1 -1
  12. package/dist/system/server.js.map +1 -1
  13. package/lib/asyncs/createAsyncIterator.js +39 -0
  14. package/lib/asyncs/createAsyncIterator.js.map +1 -0
  15. package/lib/asyncs/createLazyPromise.js.map +1 -1
  16. package/lib/browsers/download.js.map +1 -1
  17. package/lib/browsers/getFileFromDataTransfer.js.map +1 -1
  18. package/lib/browsers/loaders.js.map +1 -1
  19. package/lib/crypto/getNodeCrypto.js.map +1 -1
  20. package/lib/crypto/getRandomValues.js.map +1 -1
  21. package/lib/crypto/pem/pem.js.map +1 -1
  22. package/lib/crypto/ulid.js +4 -1
  23. package/lib/crypto/ulid.js.map +1 -1
  24. package/lib/fetch/dumpRequest.js.map +1 -1
  25. package/lib/fetch/dumpResponse.js.map +1 -1
  26. package/lib/i18n/createTranslate.js.map +1 -1
  27. package/lib/index.js +2 -0
  28. package/lib/index.js.map +1 -1
  29. package/lib/io/ArrayBuffers.js +142 -164
  30. package/lib/io/ArrayBuffers.js.map +1 -1
  31. package/lib/io/Buffer.js +5 -6
  32. package/lib/io/Buffer.js.map +1 -1
  33. package/lib/libs/ms.js.map +1 -1
  34. package/lib/modules/parseModuleId.js.map +1 -1
  35. package/lib/objects/merge/isMergeableObject.js +18 -0
  36. package/lib/objects/merge/isMergeableObject.js.map +1 -0
  37. package/lib/objects/merge/merge.js +90 -0
  38. package/lib/objects/merge/merge.js.map +1 -0
  39. package/lib/server.js +9 -7
  40. package/lib/server.js.map +1 -1
  41. package/lib/servers/crypto/md5.js.map +1 -0
  42. package/lib/servers/fetch/createFetchWithProxy.js.map +1 -0
  43. package/lib/servers/fetch/createFetchWithProxyByUndici.js.map +1 -0
  44. package/lib/servers/{createFetchWithRetry.js → fetch/createFetchWithRetry.js} +1 -1
  45. package/lib/servers/fetch/createFetchWithRetry.js.map +1 -0
  46. package/lib/servers/getPackageDir.js +18 -0
  47. package/lib/servers/getPackageDir.js.map +1 -0
  48. package/lib/servers/polyfill/polyfillBrowser.js.map +1 -0
  49. package/lib/servers/{polyfillCrypto.js → polyfill/polyfillCrypto.js} +1 -1
  50. package/lib/servers/polyfill/polyfillCrypto.js.map +1 -0
  51. package/lib/servers/polyfill/polyfillFetch.js.map +1 -0
  52. package/lib/servers/{polyfillJsDom.js → polyfill/polyfillJsDom.js} +1 -1
  53. package/lib/servers/polyfill/polyfillJsDom.js.map +1 -0
  54. package/lib/servers/polyfill/polyfillWebSocket.js +16 -0
  55. package/lib/servers/polyfill/polyfillWebSocket.js.map +1 -0
  56. package/lib/strings/formatBytes.js.map +1 -1
  57. package/lib/validations/isUUID.js +1 -1
  58. package/lib/validations/isUUID.js.map +1 -1
  59. package/lib/validations/parseTimestamp.js.map +1 -1
  60. package/package.json +6 -9
  61. package/src/asyncs/createAsyncIterator.ts +40 -0
  62. package/src/crypto/hashing.test.ts +4 -1
  63. package/src/crypto/ulid.test.ts +14 -1
  64. package/src/crypto/ulid.ts +5 -2
  65. package/src/index.ts +2 -0
  66. package/src/langs/hashCode.ts +37 -0
  67. package/src/logging/Logger.ts +6 -6
  68. package/src/logging/slog.test.ts +8 -0
  69. package/src/logging/slog.ts +100 -0
  70. package/src/objects/merge/index.ts +1 -0
  71. package/src/objects/merge/isMergeableObject.ts +23 -0
  72. package/src/objects/merge/merge.test.ts +912 -0
  73. package/src/objects/merge/merge.ts +140 -0
  74. package/src/server.ts +9 -7
  75. package/src/servers/{createFetchWithProxyByNodeFetch.ts → fetch/createFetchWithProxyByNodeFetch.ts} +2 -2
  76. package/src/servers/{createFetchWithProxyByUndici.ts → fetch/createFetchWithProxyByUndici.ts} +2 -2
  77. package/src/servers/{createFetchWithRetry.ts → fetch/createFetchWithRetry.ts} +2 -2
  78. package/src/servers/getPackageDir.ts +16 -0
  79. package/src/servers/{polyfillCrypto.ts → polyfill/polyfillCrypto.ts} +1 -1
  80. package/src/servers/{polyfillFetch.ts → polyfill/polyfillFetch.ts} +1 -1
  81. package/src/servers/{polyfillJsDom.ts → polyfill/polyfillJsDom.ts} +1 -1
  82. package/src/servers/{polyfillWebSocket.ts → polyfill/polyfillWebSocket.ts} +2 -2
  83. package/src/validations/isUUID.test.ts +14 -0
  84. package/src/validations/isUUID.ts +2 -2
  85. package/lib/servers/createFetchWithProxy.js.map +0 -1
  86. package/lib/servers/createFetchWithProxyByUndici.js.map +0 -1
  87. package/lib/servers/createFetchWithRetry.js.map +0 -1
  88. package/lib/servers/md5.js.map +0 -1
  89. package/lib/servers/polyfillBrowser.js.map +0 -1
  90. package/lib/servers/polyfillCrypto.js.map +0 -1
  91. package/lib/servers/polyfillFetch.js.map +0 -1
  92. package/lib/servers/polyfillJsDom.js.map +0 -1
  93. /package/lib/servers/{md5.js → crypto/md5.js} +0 -0
  94. /package/lib/servers/{createFetchWithProxy.js → fetch/createFetchWithProxy.js} +0 -0
  95. /package/lib/servers/{createFetchWithProxyByUndici.js → fetch/createFetchWithProxyByUndici.js} +0 -0
  96. /package/lib/servers/{polyfillBrowser.js → polyfill/polyfillBrowser.js} +0 -0
  97. /package/lib/servers/{polyfillFetch.js → polyfill/polyfillFetch.js} +0 -0
  98. /package/src/servers/{md5.ts → crypto/md5.ts} +0 -0
  99. /package/src/servers/{createFetchWithProxy.ts → fetch/createFetchWithProxy.ts} +0 -0
  100. /package/src/servers/{polyfillBrowser.test.ts → polyfill/polyfillBrowser.test.ts} +0 -0
  101. /package/src/servers/{polyfillBrowser.ts → polyfill/polyfillBrowser.ts} +0 -0
@@ -0,0 +1,23 @@
1
+ // https://github.com/TehShrike/is-mergeable-object/blob/master/index.js
2
+
3
+ export function isMergeableObject(value: any) {
4
+ return isNonNullObject(value) && !isSpecial(value);
5
+ }
6
+
7
+ function isNonNullObject(value: any) {
8
+ return !!value && typeof value === 'object';
9
+ }
10
+
11
+ function isSpecial(value: any) {
12
+ var stringValue = Object.prototype.toString.call(value);
13
+
14
+ return stringValue === '[object RegExp]' || stringValue === '[object Date]' || isReactElement(value);
15
+ }
16
+
17
+ // see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25
18
+ var canUseSymbol = typeof Symbol === 'function' && Symbol.for;
19
+ var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;
20
+
21
+ function isReactElement(value: any) {
22
+ return value.$$typeof === REACT_ELEMENT_TYPE;
23
+ }