@splendidlabz/utils 1.10.2 → 1.10.4

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 (209) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/dom/accessibility.cjs +0 -2
  3. package/dist/cjs/dom/actions/index.cjs +7 -391
  4. package/dist/cjs/dom/actions/masonry.cjs +6 -97
  5. package/dist/cjs/dom/actions/prefer-horizontal-scroll.cjs +14 -58
  6. package/dist/cjs/dom/actions/sticky.cjs +6 -126
  7. package/dist/cjs/dom/bounding-box.cjs +0 -2
  8. package/dist/cjs/dom/clipboard.cjs +0 -2
  9. package/dist/cjs/dom/cookie.cjs +1 -3
  10. package/dist/cjs/dom/css-vars.cjs +3 -13
  11. package/dist/cjs/dom/events.cjs +0 -2
  12. package/dist/cjs/dom/focusable.cjs +0 -2
  13. package/dist/cjs/dom/font-size.cjs +3 -15
  14. package/dist/cjs/dom/get-element.cjs +1 -3
  15. package/dist/cjs/dom/hash.cjs +0 -2
  16. package/dist/cjs/dom/index.cjs +47 -1248
  17. package/dist/cjs/dom/keyboard.cjs +0 -2
  18. package/dist/cjs/dom/local-store.cjs +1 -3
  19. package/dist/cjs/dom/media.cjs +0 -2
  20. package/dist/cjs/dom/observers/index.cjs +9 -235
  21. package/dist/cjs/dom/observers/intersection-observer.cjs +6 -38
  22. package/dist/cjs/dom/observers/mutation-observer.cjs +6 -38
  23. package/dist/cjs/dom/observers/observer.cjs +2 -12
  24. package/dist/cjs/dom/observers/resize-observer.cjs +6 -38
  25. package/dist/cjs/dom/observers/scroll-observer.cjs +3 -62
  26. package/dist/cjs/dom/pkce.cjs +3 -13
  27. package/dist/cjs/dom/query-params.cjs +1 -3
  28. package/dist/cjs/dom/random-string.cjs +0 -2
  29. package/dist/cjs/dom/sanitize.cjs +3 -27
  30. package/dist/cjs/dom/session-store.cjs +1 -3
  31. package/dist/cjs/dom/spam-prevention.cjs +0 -2
  32. package/dist/cjs/dom/trap-focus.cjs +9 -131
  33. package/dist/cjs/dom/ui/aria-current.cjs +0 -2
  34. package/dist/cjs/dom/ui/inconsistent-button-fix.cjs +0 -2
  35. package/dist/cjs/dom/ui/index.cjs +9 -87
  36. package/dist/cjs/dom/ui/scroll-container.cjs +0 -2
  37. package/dist/cjs/dom/ui/traverse-and-scramble.cjs +0 -2
  38. package/dist/cjs/lib/arrays/index.cjs +13 -121
  39. package/dist/cjs/lib/arrays/item-position.cjs +0 -2
  40. package/dist/cjs/lib/arrays/join.cjs +2 -10
  41. package/dist/cjs/lib/arrays/shuffle.cjs +0 -2
  42. package/dist/cjs/lib/arrays/sort.cjs +3 -11
  43. package/dist/cjs/lib/arrays/split-array.cjs +0 -2
  44. package/dist/cjs/lib/arrays/unique.cjs +0 -2
  45. package/dist/cjs/lib/auth/index.cjs +3 -35
  46. package/dist/cjs/lib/auth/route-manager.cjs +0 -2
  47. package/dist/cjs/lib/checks.cjs +0 -2
  48. package/dist/cjs/lib/date/days.cjs +1 -3
  49. package/dist/cjs/lib/date/index.cjs +7 -190
  50. package/dist/cjs/lib/date/months.cjs +1 -3
  51. package/dist/cjs/lib/date/time.cjs +2 -14
  52. package/dist/cjs/lib/form/form-data.cjs +0 -2
  53. package/dist/cjs/lib/form/index.cjs +5 -104
  54. package/dist/cjs/lib/form/sanitize.cjs +0 -2
  55. package/dist/cjs/lib/functions/callback.cjs +0 -2
  56. package/dist/cjs/lib/functions/debounce.cjs +0 -2
  57. package/dist/cjs/lib/functions/env.cjs +0 -2
  58. package/dist/cjs/lib/functions/functional.cjs +0 -2
  59. package/dist/cjs/lib/functions/index.cjs +11 -124
  60. package/dist/cjs/lib/functions/throttle.cjs +0 -2
  61. package/dist/cjs/lib/functions/timeout.cjs +0 -2
  62. package/dist/cjs/lib/hash.cjs +0 -2
  63. package/dist/cjs/lib/index.cjs +29 -1155
  64. package/dist/cjs/lib/numbers/index.cjs +4 -17
  65. package/dist/cjs/lib/numbers/math.cjs +0 -2
  66. package/dist/cjs/lib/objects/camelcase-keys.cjs +4 -45
  67. package/dist/cjs/lib/objects/empty.cjs +0 -2
  68. package/dist/cjs/lib/objects/equal.cjs +0 -2
  69. package/dist/cjs/lib/objects/extend.cjs +6 -117
  70. package/dist/cjs/lib/objects/flatten.cjs +3 -11
  71. package/dist/cjs/lib/objects/index.cjs +27 -360
  72. package/dist/cjs/lib/objects/json.cjs +0 -2
  73. package/dist/cjs/lib/objects/loop.cjs +0 -2
  74. package/dist/cjs/lib/objects/mix/mix.cjs +3 -5
  75. package/dist/cjs/lib/objects/nested-property.cjs +0 -2
  76. package/dist/cjs/lib/objects/normalize-object.cjs +4 -78
  77. package/dist/cjs/lib/objects/omit-empty.cjs +0 -2
  78. package/dist/cjs/lib/objects/size.cjs +0 -2
  79. package/dist/cjs/lib/objects/split.cjs +0 -2
  80. package/dist/cjs/lib/promises/index.cjs +3 -51
  81. package/dist/cjs/lib/promises/reject.cjs +2 -19
  82. package/dist/cjs/lib/sse.cjs +4 -29
  83. package/dist/cjs/lib/strings/convert-case/convert-case.cjs +0 -2
  84. package/dist/cjs/lib/strings/index.cjs +11 -179
  85. package/dist/cjs/lib/strings/markdown.cjs +1 -3
  86. package/dist/cjs/lib/strings/name.cjs +0 -2
  87. package/dist/cjs/lib/strings/pluralize.cjs +1 -3
  88. package/dist/cjs/lib/strings/query-string.cjs +0 -2
  89. package/dist/cjs/lib/style/index.cjs +2 -31
  90. package/dist/cjs/lib/symbols/index.cjs +3 -22
  91. package/dist/cjs/lib/symbols/symbols.cjs +0 -2
  92. package/dist/cjs/node/dirname.cjs +2 -4
  93. package/dist/cjs/node/env.cjs +30 -0
  94. package/dist/cjs/node/file-cache.cjs +3 -45
  95. package/dist/cjs/node/file.cjs +2 -4
  96. package/dist/cjs/node/hash.cjs +1 -3
  97. package/dist/cjs/node/index.cjs +17 -272
  98. package/dist/cjs/node/pkce.cjs +5 -15
  99. package/dist/cjs/node/random-string.cjs +1 -3
  100. package/dist/cjs/node/sanitize.cjs +3 -27
  101. package/dist/cjs/node/{common.cjs → uuid.cjs} +3 -5
  102. package/dist/esm/dom/accessibility.js +0 -1
  103. package/dist/esm/dom/actions/index.js +3 -381
  104. package/dist/esm/dom/actions/masonry.js +3 -91
  105. package/dist/esm/dom/actions/prefer-horizontal-scroll.js +4 -45
  106. package/dist/esm/dom/actions/sticky.js +3 -120
  107. package/dist/esm/dom/bounding-box.js +0 -1
  108. package/dist/esm/dom/clipboard.js +0 -1
  109. package/dist/esm/dom/cookie.js +1 -2
  110. package/dist/esm/dom/css-vars.js +1 -8
  111. package/dist/esm/dom/events.js +0 -1
  112. package/dist/esm/dom/focusable.js +0 -1
  113. package/dist/esm/dom/font-size.js +1 -10
  114. package/dist/esm/dom/get-element.js +1 -2
  115. package/dist/esm/dom/hash.js +0 -1
  116. package/dist/esm/dom/index.js +23 -1168
  117. package/dist/esm/dom/keyboard.js +0 -1
  118. package/dist/esm/dom/local-store.js +1 -2
  119. package/dist/esm/dom/media.js +0 -1
  120. package/dist/esm/dom/observers/index.js +4 -224
  121. package/dist/esm/dom/observers/intersection-observer.js +2 -31
  122. package/dist/esm/dom/observers/mutation-observer.js +3 -32
  123. package/dist/esm/dom/observers/observer.js +1 -8
  124. package/dist/esm/dom/observers/resize-observer.js +2 -31
  125. package/dist/esm/dom/observers/scroll-observer.js +2 -58
  126. package/dist/esm/dom/pkce.js +1 -8
  127. package/dist/esm/dom/query-params.js +1 -2
  128. package/dist/esm/dom/random-string.js +0 -1
  129. package/dist/esm/dom/sanitize.js +3 -26
  130. package/dist/esm/dom/session-store.js +1 -2
  131. package/dist/esm/dom/spam-prevention.js +0 -1
  132. package/dist/esm/dom/trap-focus.js +2 -121
  133. package/dist/esm/dom/ui/aria-current.js +0 -1
  134. package/dist/esm/dom/ui/inconsistent-button-fix.js +0 -1
  135. package/dist/esm/dom/ui/index.js +4 -75
  136. package/dist/esm/dom/ui/scroll-container.js +0 -1
  137. package/dist/esm/dom/ui/traverse-and-scramble.js +0 -1
  138. package/dist/esm/lib/arrays/index.js +6 -106
  139. package/dist/esm/lib/arrays/item-position.js +0 -1
  140. package/dist/esm/lib/arrays/join.js +1 -6
  141. package/dist/esm/lib/arrays/shuffle.js +0 -1
  142. package/dist/esm/lib/arrays/sort.js +1 -6
  143. package/dist/esm/lib/arrays/split-array.js +0 -1
  144. package/dist/esm/lib/arrays/unique.js +0 -1
  145. package/dist/esm/lib/auth/index.js +1 -26
  146. package/dist/esm/lib/auth/route-manager.js +0 -1
  147. package/dist/esm/lib/checks.js +0 -1
  148. package/dist/esm/lib/date/days.js +1 -2
  149. package/dist/esm/lib/date/index.js +3 -173
  150. package/dist/esm/lib/date/months.js +1 -2
  151. package/dist/esm/lib/date/time.js +1 -10
  152. package/dist/esm/lib/form/form-data.js +0 -1
  153. package/dist/esm/lib/form/index.js +2 -92
  154. package/dist/esm/lib/form/sanitize.js +0 -1
  155. package/dist/esm/lib/functions/callback.js +0 -1
  156. package/dist/esm/lib/functions/debounce.js +0 -1
  157. package/dist/esm/lib/functions/env.js +0 -1
  158. package/dist/esm/lib/functions/functional.js +0 -1
  159. package/dist/esm/lib/functions/index.js +5 -105
  160. package/dist/esm/lib/functions/throttle.js +0 -1
  161. package/dist/esm/lib/functions/timeout.js +0 -1
  162. package/dist/esm/lib/hash.js +0 -1
  163. package/dist/esm/lib/index.js +14 -1052
  164. package/dist/esm/lib/numbers/index.js +2 -12
  165. package/dist/esm/lib/numbers/math.js +0 -1
  166. package/dist/esm/lib/objects/camelcase-keys.js +2 -40
  167. package/dist/esm/lib/objects/empty.js +0 -1
  168. package/dist/esm/lib/objects/equal.js +0 -1
  169. package/dist/esm/lib/objects/extend.js +3 -111
  170. package/dist/esm/lib/objects/flatten.js +1 -6
  171. package/dist/esm/lib/objects/index.js +13 -323
  172. package/dist/esm/lib/objects/json.js +0 -1
  173. package/dist/esm/lib/objects/loop.js +0 -1
  174. package/dist/esm/lib/objects/mix/mix.js +3 -4
  175. package/dist/esm/lib/objects/nested-property.js +0 -1
  176. package/dist/esm/lib/objects/normalize-object.js +3 -74
  177. package/dist/esm/lib/objects/omit-empty.js +0 -1
  178. package/dist/esm/lib/objects/size.js +0 -1
  179. package/dist/esm/lib/objects/split.js +0 -1
  180. package/dist/esm/lib/promises/index.js +1 -33
  181. package/dist/esm/lib/promises/reject.js +1 -17
  182. package/dist/esm/lib/sse.js +2 -24
  183. package/dist/esm/lib/strings/convert-case/convert-case.js +0 -1
  184. package/dist/esm/lib/strings/index.js +5 -147
  185. package/dist/esm/lib/strings/markdown.js +1 -2
  186. package/dist/esm/lib/strings/name.js +0 -1
  187. package/dist/esm/lib/strings/pluralize.js +1 -2
  188. package/dist/esm/lib/strings/query-string.js +0 -1
  189. package/dist/esm/lib/style/index.js +1 -27
  190. package/dist/esm/lib/symbols/index.js +1 -13
  191. package/dist/esm/lib/symbols/symbols.js +0 -1
  192. package/dist/esm/node/dirname.js +2 -3
  193. package/dist/esm/node/env.js +6 -0
  194. package/dist/esm/node/file-cache.js +2 -43
  195. package/dist/esm/node/file.js +2 -3
  196. package/dist/esm/node/hash.js +1 -2
  197. package/dist/esm/node/index.js +8 -243
  198. package/dist/esm/node/pkce.js +3 -12
  199. package/dist/esm/node/random-string.js +1 -2
  200. package/dist/esm/node/sanitize.js +3 -26
  201. package/dist/esm/node/{common.js → uuid.js} +0 -1
  202. package/dist/types/node/env.d.cts +3 -0
  203. package/dist/types/node/index.d.cts +2 -1
  204. package/package.json +2 -1
  205. package/src/node/env.js +3 -0
  206. package/src/node/index.js +2 -1
  207. package/tsup.config.mjs +2 -0
  208. /package/dist/types/node/{common.d.cts → uuid.d.cts} +0 -0
  209. /package/src/node/{common.js → uuid.js} +0 -0
@@ -1,14 +1,5 @@
1
- // src/node/pkce.js
2
- import crypto2 from "crypto";
3
-
4
- // src/node/random-string.js
5
- import crypto from "crypto";
6
- function randomString(length = 32) {
7
- const bytesNeeded = Math.ceil(length * 3 / 4) + 3;
8
- return crypto.randomBytes(bytesNeeded).toString("base64").slice(0, length);
9
- }
10
-
11
- // src/node/pkce.js
1
+ import crypto from "node:crypto";
2
+ import { randomString } from "./random-string.js";
12
3
  async function PKCE() {
13
4
  const codeVerifier = await randomString();
14
5
  const codeChallenge = await getCodeChallenge(codeVerifier);
@@ -20,7 +11,7 @@ async function PKCE() {
20
11
  };
21
12
  }
22
13
  async function getCodeChallenge(verifier) {
23
- const hash = crypto2.createHash("sha256").update(verifier).digest();
14
+ const hash = crypto.createHash("sha256").update(verifier).digest();
24
15
  return hash.toString("base64").replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "");
25
16
  }
26
17
  export {
@@ -1,5 +1,4 @@
1
- // src/node/random-string.js
2
- import crypto from "crypto";
1
+ import crypto from "node:crypto";
3
2
  function randomString(length = 32) {
4
3
  const bytesNeeded = Math.ceil(length * 3 / 4) + 3;
5
4
  return crypto.randomBytes(bytesNeeded).toString("base64").slice(0, length);
@@ -1,31 +1,8 @@
1
- // src/node/sanitize.js
2
1
  import sanitizeHtml from "sanitize-html";
3
-
4
- // src/lib/form/sanitize.js
2
+ import { sanitize as sanitizeLib } from "../lib/form/sanitize.js";
5
3
  function sanitize(value, options = {}) {
6
- const { sanitizer, ...rest } = options;
7
- if (!sanitizer) throw new Error("sanitizer function is required");
8
- if (typeof value === "string") return sanitizer(value, rest);
9
- if (Array.isArray(value)) return sanitizeArray(value, { sanitizer, ...rest });
10
- if (value && typeof value === "object") {
11
- return Object.fromEntries(
12
- Object.entries(value).map(([key, val]) => [
13
- key,
14
- sanitize(val, { sanitizer, ...rest })
15
- ])
16
- );
17
- }
18
- return value;
19
- }
20
- function sanitizeArray(arr, { sanitizer, ...rest }) {
21
- if (!sanitizer) throw new Error("sanitizer function is required");
22
- return arr.map((item) => sanitize(item, { sanitizer, ...rest }));
23
- }
24
-
25
- // src/node/sanitize.js
26
- function sanitize2(value, options = {}) {
27
- return sanitize(value, { sanitizer: sanitizeHtml, ...options });
4
+ return sanitizeLib(value, { sanitizer: sanitizeHtml, ...options });
28
5
  }
29
6
  export {
30
- sanitize2 as sanitize
7
+ sanitize
31
8
  };
@@ -1,4 +1,3 @@
1
- // src/node/common.js
2
1
  import crypto from "crypto";
3
2
  function uuid() {
4
3
  return crypto.randomUUID();
@@ -0,0 +1,3 @@
1
+ declare function env(key: any): any;
2
+
3
+ export { env };
@@ -1,7 +1,8 @@
1
- export { uuid } from './common.cjs';
2
1
  export { __dirname, dirname } from './dirname.cjs';
2
+ export { env } from './env.cjs';
3
3
  export { createCache, fileCache, getLastModifiedTime, getLatestModifiedTime, removeFirstSlash } from './file-cache.cjs';
4
4
  export { sha256Hash } from './hash.cjs';
5
5
  export { PKCE } from './pkce.cjs';
6
6
  export { randomString } from './random-string.cjs';
7
7
  export { sanitize } from './sanitize.cjs';
8
+ export { uuid } from './uuid.cjs';
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@splendidlabz/utils",
3
- "version": "1.10.2",
3
+ "version": "1.10.4",
4
4
  "description": "",
5
5
  "type": "module",
6
+ "homepage": "https://splendidlabz.com/docs/utils",
6
7
  "sideEffects": false,
7
8
  "main": "./dist/cjs/lib/index.cjs",
8
9
  "module": "./dist/esm/lib/index.js",
@@ -0,0 +1,3 @@
1
+ export function env(key) {
2
+ return process.env[key] || import.meta.env[key]
3
+ }
package/src/node/index.js CHANGED
@@ -1,7 +1,8 @@
1
- export * from './common.js'
2
1
  export * from './dirname.js'
2
+ export * from './env.js'
3
3
  export * from './file-cache.js'
4
4
  export * from './hash.js'
5
5
  export * from './pkce.js'
6
6
  export * from './random-string.js'
7
7
  export * from './sanitize.js'
8
+ export * from './uuid.js'
package/tsup.config.mjs CHANGED
@@ -15,6 +15,7 @@ export default defineConfig([
15
15
  format: ['esm'],
16
16
  outDir: 'dist/esm',
17
17
  clean: true,
18
+ bundle: false,
18
19
  splitting: false,
19
20
  sourcemap: false,
20
21
  dts: false,
@@ -26,6 +27,7 @@ export default defineConfig([
26
27
  outDir: 'dist/cjs',
27
28
  outExtension: () => ({ js: '.cjs' }),
28
29
  clean: false,
30
+ bundle: false,
29
31
  splitting: false,
30
32
  sourcemap: false,
31
33
  dts: false,
File without changes
File without changes